Я хочу рассчитать общее и среднее количество данных из текстового файла с помощью C++.
Вот мой код и текстовый файл. Этот код не показывает ничего на бегуЯ хочу рассчитать общее и среднее количество данных из текстового файла с помощью C++
#include <iostream>
#include <fstream>
#include <sstream>
#include <iomanip>
using namespace std;
string double2string(double);
double string2double(string);
int main(int argc, char* argv[]){
fstream dfile;
string s1;
string amount;
double damount;
double sum = 0;
dfile.open(argv[1]);
dfile >> amount;
damount = string2double(amount);
while(damount){
sum = sum + damount;
}
string total = double2string(sum);
dfile.clear();
dfile.close();
cout << total;
return 0;
}
функции для преобразования строки в двойных и двойной строки
string double2string(double d){
ostringstream outstr;
outstr << setprecision(2) << fixed << setw(10) << d;
return outstr.str();
};
double string2double(string s1){
istringstream instr(s1);
double n;
instr >> n;
return n;
}
Вот мой текстовый файл «data.txt»
234
456
789
Добро пожаловать в StackOverflow. Вы пытались запустить свой код? Он возвращает какие-либо ошибки? – mjuarez
'while (damount) {sum = sum + damount; } '- бесконечный цикл. –
Было бы проще просто прочитать числа как числа, а не строки, которые преобразуются в числа. –