首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >嵌套C++循环

嵌套C++循环
EN

Stack Overflow用户
提问于 2014-09-23 01:14:34
回答 1查看 210关注 0票数 0

我正在编写一个程序来修改csv文件中的数据。在csv文件中,按以下方式组织。

X坐标,Y坐标,Z坐标,info,X,Y,Z,info,X,Y,Z信息.

第一个X坐标从第4列开始,下一个X坐标是后面的4列,在8中。对于Y,它是第5列和第9列,依此类推。由于我将数据保存到deque上,第一个数据对应于x的datarow#,y将是datarow#。

代码语言:javascript
复制
for(int k=0; k<618; k++) { //all rows  618
    for(int l=3; l<96; l=l+4) { //x columns
        for(int m=4; m<97; m=m+4) { //y columns
            data[k][l] = (data[k][l] )*(data[k][2]) + (data[k][m])*(data[k][1]);

在循环中的计算中,我希望它将列(k)中的所有x值(l)替换为从这个方程中得到的值(正如我为循环创建的那样)。

代码语言:javascript
复制
x' = x* cos(theta) + y* sin(theta)

cos(theta)和sin(theta)的值在列2和3中为所有行(因此是datak和datak )找到。

不幸的是,在用几个cout语句测试这一点时,我注意到它没有按照需要做。

想要的循环行为:

  • 第一次循环:计算行1,x=列4内的值,y=值以col.5表示
  • *循环迭代结束,重新启动,k,l和m被更新为2,9,10。
  • 对这些新值执行循环中的计算,依此类推。

的主要问题是k,l,m,不是所有的三个都是按照要求在数据线之后更新的,这会导致什么呢?谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-09-23 01:32:40

您不了解嵌套循环。

你的意图是这样的:

代码语言:javascript
复制
for(int k=0; k<618; k++) { //all rows  618
  for(int n=0; n<24; ++n) { //groups
    l = 4*n + 3;
    m = 4*n + 4
    data[k][l] = (data[k][l] )*(data[k][2]) + (data[k][m])*(data[k][1]);
  }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25985385

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档