C++ 需要更新for循环中的值

C++ 需要更新for循环中的值,c++,C++,我正在尝试使用for循环创建一个表,该循环输出年份、出生、死亡和新人口。我正试图找出如何获得它,以便新的人口值被存储到下一年并正确累积。现在它只是重复所有年份的初始值。只是想找一些提示来指引我正确的方向。谢谢 void tabOut(int& numYears, unsigned int& P, double& B, double& D) { int year; unsigned int N = (P + B * P - D * P); cout <<

我正在尝试使用for循环创建一个表,该循环输出年份、出生、死亡和新人口。我正试图找出如何获得它,以便新的人口值被存储到下一年并正确累积。现在它只是重复所有年份的初始值。只是想找一些提示来指引我正确的方向。谢谢

void tabOut(int& numYears, unsigned int& P, double& B, double& D)
{
int year;
unsigned int N = (P + B * P - D * P);
cout << "Year\tNumber of births\tNumber of deaths\tNew population\n";
cout << "-------------------------------------------------------\n";

for (int year = 0; year <= numYears; ++year)
{
        cout << year << "\t" << (P * B) << "\t" << setw(8) << (P * D) <<     "\t" << setw(8) << (N) << endl;

    cout << "-------------------------------------------------\n";
}
}
这有用吗

#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;

void tabOut(int numYears, unsigned int P, double B, double D)
{
    int year;

    cout << "Year\tNumber of births\tNumber of deaths\tNew population\n";
    cout << "-------------------------------------------------------\n";

    for (int year = 0; year < numYears; ++year)
    {
        unsigned int N = (P + (B * P) - (D * P));
        cout << (year + 1) << "\t" << ceil(P * B) << "\t" << setw(8) << ceil(P * D) <<     "\t" << setw(8) << (N) << endl;
        P = N;

        cout << "-------------------------------------------------\n";
    }
}

int main(int, char**)
{
    int years = 10;
    unsigned int population = 100;
    double births = 0.35;
    double deaths = 0.25;

    tabOut(years, population, births, deaths);
}

您没有在循环的后续迭代中执行计算,因此结果总是相同的。

只是想了解一些提示,为我指明正确的方向。我甚至不知道你到底想去哪个方向?P,B,D!!您的变量名称根本不可理解。所以你不可能想到你想用它们做什么,这就是我所需要的。谢谢你也谢谢你让我超过1公里!!