Я пишу программу, которая принимает текстовый файл с результатами рекламной кампании и должна найти средний рейтинг кампании для 4 разных демографических данных. Я думаю, что я все это понял, просто борясь с получением данных из файла и в переменные char и int. Должен ли я читать все это как строки, а затем преобразовывать или читать их в эти переменные?Нужна помощь в получении данных char и int из файла
#include <iostream>
#include <fstream>
#include <iomanip>
#include <string>
using namespace std;
int main(){
//declare vars
ifstream fileIn;
string path;
string name;
char yn;
int age;
double rating;
double rate1 = 0;
double rate1Count = 0;
double avg1 = 0;
double rate2 = 0;
double rate2Count = 0;
double avg2 = 0;
double rate3 = 0;
double rate3Count = 0;
double avg3 = 0;
double rate4 = 0;
double rate4Count = 0;
double avg4 = 0;
double totalAvg = 0;
cout << fixed << showpoint << setprecision(2);
// prompt user
cout << "Please enter a path to the text file with results: ";
// get path
cin >> path;
cout << endl;
// open a file for input
fileIn.open(path);
// error message for bad file
if (!fileIn.is_open()){
cout << "Unable to open file." << endl;
getchar();
getchar();
return 0;
}
// read and echo to screen
cout << ifstream(path);
// restore the file
fileIn.clear();
fileIn.seekg(0);
cout << endl << endl;
// get average for demos
while (!fileIn.eof){
fileIn >> name;
fileIn >> yn;
fileIn >> age;
fileIn >> rating;
if (yn != 121 && age < 18){
rate1 += rating;
rate1Count++;
}
if (yn == 121 && age < 18){
rate2 += rating;
rate2Count++;
}
if (yn != 121 && age >= 18){
rate3 += rating;
rate3Count++;
}
if (yn == 121 && age >= 18){
rate4 += rating;
rate4Count++;
}
}
avg1 = rate1/rate1Count;
avg2 = rate2/rate2Count;
avg3 = rate3/rate3Count;
avg4 = rate4/rate4Count;
cout << yn << age << rating;
// pause and exit
getchar();
getchar();
return 0;
}
Текстовый файл
Бейли Y 16 68
Харрисон N 17 71
Грант У 20 75
Петерсон N 21 69
Хсу Y 20 79
Боулз Y 15 75
Андерсон N 33 64
Нгуен N 16 68
Sharp N 14 75
Джонс У 29 75
McMillan N 19 8
Gabriel N 20 62
Когда вы задаете здесь вопрос, вы должны сказать, какую конкретную проблему вы заметили ... так как вы не сказали нам, какой аспект ввода вашего файла не работает, то есть какая у вас проблема наблюдаемые в данных, которые вам удалось прочитать, независимо от того, будут ли они навсегда или сбой и т. д. –