从矢量C中的元素减去值

我有两个带有值的向量
2.123,2.111,9.222
1.22,4.33,2.113

我想要相互减去每个Vector的第一个元素,每个Vector的第二个元素,第三个元素.所以

abs(2.123-1.22)
abs(2.111-4.33)
abs(9.222-2.113)

我确定你必须创建一个for循环,但我不知道如何解决这个问题,因为我是C的新手.感谢大家的帮助.

以下代码是我所拥有的一般概念

std::vector<double> data1,vector<double> data2,vector<double> result;
std::cout << "Enter in data#1 ";
std::cin >> data1;

std::cout << "Enter in data#2 ";
std::cin >> data2;

for (int i=0;i<data1.size();i++){
    //start subtracting the values from each other and have them stored in another Vector

解决方法

如果您不知道这里所提出的标准算法,那么算法std :: transform可以使用普通的for语句编写一个等效的代码.例如
std::vector<double> a { 2.123,9.222 };
std::vector<double> b { 1.22,2.133 }; 
std::vector<double> c( a.size(),0.0 );


for ( std::vector<double>::size_type i = 0; i < a.size(); i++ )
{
   c[i] = std::abs( a[i] - b[i] );
}

相关文章

本程序的编译和运行环境如下(如果有运行方面的问题欢迎在评...
水了一学期的院选修,万万没想到期末考试还有比较硬核的编程...
补充一下,先前文章末尾给出的下载链接的完整代码含有部分C&...
思路如标题所说采用模N取余法,难点是这个除法过程如何实现。...
本篇博客有更新!!!更新后效果图如下: 文章末尾的完整代码...
刚开始学习模块化程序设计时,估计大家都被形参和实参搞迷糊...