首页 > 解决方案 > 如何在for循环C ++的进一步迭代中使用for循环的结果

问题描述

#include "pch.h"
#include <iostream>
#include <math.h>

int main()
{
    int n;
    float I_0 = log(11 / 10);
    float I_n;
        for (n=1; n <= 20; n++) { 
            I_n = (1.0 / n) - 10.0 * I_0;
            std::cout << "the value of I_" << n << " is " << I_n << 
std::endl;
            I_0 = I_n;
        return I_0;

    }       
}

我想做的是使用for循环生成的值I_n,然后在下一次迭代中再次使用它作为I_0——每次迭代都会通知下一次。但是我写的这段代码不起作用——这只是返回 I_1=1,这在值方面肯定是错误的——而且,其他 19 次迭代在哪里?

所以我的问题是:我的初始值为 I_0=ln(11/10)。这会通知 I_1 的值,然后我使用 I_1 来查找 I_2 的值等......我的程序适合这个吗?或者我应该尝试什么?我尝试将不断变化的 I_0 编写为指针函数,这是一个 if-else 循环,沿着

if(n=1){
I_n_1=I_0
}
else
{
I_n_1=I_n}

其中 I_n_1 是 I_n 之前的术语,但它不包含在我当前的代码中,因为它不起作用,因为 oyu 不能像 else 循环一样具有功能。我还考虑了这似乎是递归的事实,到目前为止,如何用 c++ 编写它超出了我的范围,因此任何帮助将不胜感激!

标签: c++for-looprecursioniteration

解决方案


推荐阅读