Как мы добавляем несколько записей вместе из txt-файла в C++
Поэтому, прежде чем я начну, я скажу, что это часть моей домашней работы. Я должен попросить пользователя ввести информацию, которая будет вставлена в текстовый файл, в котором она будет представлена обратно пользователю. Проблема, с которой я сталкиваюсь, заключается в том, что один из переменных выходов должен быть дополнением самого себя.
Например, предположим, что проблема заключается в создании небольшого счета управления капиталом.
Нам нужно вставить сумму денег, которую мы имели до покупки, после покупки и всего, а также другие формы информации. Я опубликую фрагмент, который я придумал до сих пор.
Я ввел код. Мой вопрос заключается в следующем: как я могу заставить его добавить второй столбец (стоимость) из каждого ввода, который мы ему даем? Его не зацикливание прямо сейчас, но в идеале я хочу, чтобы каждый раз, когда я вставляю стоимость, в конце концов он добавит все
COSTиз всех
accountCostвставленный.
Любая помощь приветствуется, даже если вы просто дадите мне ссылку в другом месте,она будет оценена.
ПС. Мой профессор хочет использовать CSTRINGS не c++ строки, следовательно, почему я использую тип char aStringVar[размер] = ""; типичный СТД::строка aStringVar[размер] = "";
Что я уже пробовал:
#include <iostream> #include <fstream> #include <cstdlib> const int SIZE = 256; int main(void){ ifstream readFile; ofstream writeFile; char accountName[SIZE] = ""; char cost[SIZE] = ""; char Total[SIZE] = ""; char Tax[SIZE] = ""; int accountCost = 0; int accountTotal = 0; int accountTax = 0; /* user inputs all the information into the variables with cout and cin functions. Not inserting it since its pretty basic and I don't want to spend all my lunch break (work) writing this part of the code. */ //This part will simply save the input into the text file according to the format I specified. EX: Jimmy,120,450,2 writeFile.open("bank.txt", ios::app | ios::ate); writeFile << accountName << "," << Cost << "," << Total << "," << Tax << "\n"; writeFile.close(); //Here we will output readFile.open("bank.txt"); readFile.getline(accountName, SIZE, ','); readFile.getline(Cost, SIZE, ','); readFile.getline(Total, SIZE, ','); readFile.getline(Tax, SIZE); //didn't use delimeter since its the last one. accountCost = atoi(Cost); accountTotal = atoi(Total); accountTax = atoi(Tax); cout << "Account Cost: " << accountCost << endl; cout << "Account Total: " << accountTotal << endl; cout << "Account Tax: " << accountTax << endl; }
Richard MacCutchan
Вы не производили никаких вычислений по значениям, введенным пользователем. Вам нужно вернуться к карандашу и бумаге и записать логические шаги задачи. Например, то, что идет первым (создание заголовков файлов базовых структур и т. д.), Далее вам, скорее всего, понадобится цикл, который выполняет ряд шагов (чтение записей учетной записи, вычисление новых итогов, запись обновленной информации). Наконец, вам нужно закрыть все файлы и привести в порядок любой вывод отчета и т. д.