gpt4 book ai didi

C++ 本福德定律程序。

转载 作者:行者123 更新时间:2023-11-28 07:23:01 25 4
gpt4 key购买 nike

所以我必须写一个程序来=> 分析三个不同的数据文件,并尝试验证本福德定律。您将创建一个控制台应用程序来打开每个文件,计算以“1”、“2”、“3”等开头的值的数量,然后输出每个数字的百分比。

我想我已经搞定了,但我在 Dev C++ 中一直遇到错误。

int analyzeData(string fname) {
ifstream infile(string fname);
int tmp,count = 0;
float percents[9];
int nums[9] = { 0 };
if(!infile.good())
return 1;
while(!infile.eof())
{
infile >> tmp;
tmp = first(tmp);
if(tmp > 0)
{
nums[tmp - 1] ++;
count++;
}
}

是说'good'、'eof'、'infile'是非类类型?我不知道那是什么意思!帮助将不胜感激!谢谢!

最佳答案

首先

ifstream infile(string fname);

应该是

ifstream infile(fname);

您的版本是函数原型(prototype)而不是变量声明。

其次,这是错误的循环到文件末尾的方法

while (!infile.eof())
{
infile >> tmp;
...
}

这是正确的做法

while (infile >> tmp)
{
...
}

这一定是我们在这里看到的最常见的错误。 eof 并不像您认为的那样,任何告诉您编写 while (!infile.eof()) 的人都是错误的。

最后,first(tmp) 不是从整数中获取第一个数字的正确方法。你必须比这更努力地工作。

关于C++ 本福德定律程序。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19164501/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com