Я пытаюсь проанализировать файл, прочитав в файле в массивы и суммируйте массивы после нанесения определенных ключевых слов в файле. Это то, что я уже написал, но у меня есть три вопроса, касающиеся письменного кода ниже:
1) Теперь я могу суммировать только по каждой строке после строки «15». Как я могу включить также строку «16» в соответствии с каждой строкой, чтобы
2) раздать сумму двух строк «15» и «16» в качестве общего значения
3), потому что прямо сейчас кодовые петли только по каждой строке без получения строки «16»: < /p>
Это входные данные: < /p> < /p>
. 15 0.476 0.000 0.000 0.000 0.000 0.000 0.001
16 0.476 0.000 0.000 0.000 0.000 0.000 0.001
15 0.000 -0.000 -0.000 0.000 -0.000 0.000 0.000
16 -0.000 -0.000 0.000 0.000 0.000 -0.000 -0.000
15 0.000 0.000 -0.000 -0.000 0.000 0.000 -0.000
16 0.000 -0.000 0.000 -0.000 0.000 -0.000 0.000
15 0.476 -0.000 0.000 -0.000 -0.000 -0.000 0.001
16 0.476 -0.000 -0.000 0.000 0.000 -0.000 0.001
< /code>
Это выход после запуска кода: < /strong> < /p>
number of rows --> 4
number of cols --> 9
15.000 0.476 0.000 0.000 0.000 0.000 0.000 0.001
15.000 0.000 -0.000 -0.000 0.000 -0.000 0.000 0.000
15.000 0.000 0.000 -0.000 -0.000 0.000 0.000 -0.000
15.000 0.476 -0.000 0.000 -0.000 -0.000 -0.000 0.001
sum of each row: 0.477
sum of each row: 0.000
sum of each row: 0.000
sum of each row: 0.477
< /code>
Это код: < /p>
#include
#include
#include
#include
using namespace std;
bool found(const string& line);
int main()
{
int row = 0;
int col = 0;
string line;
double x;
double array[100][100], rowtotal[100] = {0}, columntotal[100]={0};
ofstream File;
ifstream in("data.txt");
File.open("extracted_data.txt",ios::app);
File.setf(ios::fixed);
File.setf(ios::showpoint);
File.precision(3);
if(in.fail())
{
cerr
Подробнее здесь: https://stackoverflow.com/questions/403 ... ys-using-c