注册 登录
编程论坛 C++教室

新手关于inner_product的问题。。。

叶纤 发布于 2019-12-25 14:38, 1547 次点击
//为了好看我先写出n  12345689,n可以打出结果来,可是我想让n和f inner_product然后把结果放进b里,但是不可以,是不是我写的计算机看不懂?
#include<iostream>
#include<vector>
#include<algorithm>
#include<numeric>

using namespace std;

int main()
{   vector <int> v= {7,5,9,8};


    v.push_back(4);//末尾插入4vctor
    v.push_back(6);//6
//algorithm顺序排序
    v[0]=3;//第一个变成3
    auto it = v.begin();
    it=v.insert(it,1);
    v.insert(it,2);//v.insert(it,2,2);插2个2
    sort(v.begin(),v.end());//排正序
    for(int n:v) {
//cout << n<< endl;
        vector<int> f= {10000000,1000000,100000,10000,1000,100,10,1};
        unsigned long b= inner_product(n.begin(),n.end(),f.begin(),0);
        cout << b << endl;//numeric
    }
}
2 回复
#2
rjsp2019-12-25 15:54
不相干的代码太多了,
你是想让 { 1, 2, 3, 4, 5, 6, 8, 9 } 与 { 10000000,1000000,100000,10000,1000,100,10,1} 作内积吗?

程序代码:
#include <iostream>
#include <algorithm>
#include <numeric>
#include <vector>
using namespace std;

int main( void )
{
    vector<int> v = { 1, 2, 3, 4, 5, 6, 8, 9 };
    vector<int> f = { 10000000,1000000,100000,10000,1000,100,10,1};

    cout << inner_product(v.begin(),v.end(),f.begin(),0) << endl;
}

#3
叶纤2019-12-25 16:54
谢谢大大,最近在摸索头文件,所以有点杂,提点的很有用
#include<iostream>
#include<vector>
#include<algorithm>
#include<numeric>
using namespace std;
int main()
{   vector <int> v= {7,5,9,8};
    vector<int> f= {10000000,1000000,100000,10000,1000,100,10,1};

    v.push_back(4);//末尾插入4vctor
    v.push_back(6);//6
//algorithm顺序排序
    v[0]=3;//第一个变成3
    auto it = v.begin();
    it=v.insert(it,1);
    v.insert(it,2);//v.insert(it,2,2);插2个2
    sort(v.begin(),v.end());//排正序

    for(int i=0; i<v.size(); ++i)
    {;}
    int b =inner_product(v.begin(),v.end(),f.begin(),0);
cout <<  b<< endl;
}
1