Цикл от начального баланса / Поиск сети / Всего - PullRequest
0 голосов
/ 07 мая 2018

Я пытаюсь создать код с базовым программированием на C, который будет производить работающую "сеть" из начального баланса. До сих пор я использовал цикл while, который запускает и считает циклы, но вычисляет их неправильно.

Стартовый баланс будет 1000,00, и он должен быть введен в эту информацию, которая производит чистую.

Так как же я зациклить, чтобы поддерживать промежуточный итог? Мне также нужно убедиться, что на выходе получаются положительные числа с плавающей запятой, указанные в разделе «Сумма».

1 Ответ

0 голосов
/ 07 мая 2018
  1. Вы рассчитываете EndBal в неправильном месте, переместите его ниже fscanf.
  2. EndBal всегда будет неверно рассчитываться, потому что вы обновляете его неправильно. используйте EndBal=balance перед входом в цикл и используйте EndBal += amount внутри.
  3. net делает то же самое, что и EndBal, выбирает один из них или добавляет net=EndBal перед печатью.
  4. в случае, если вы будете использовать окончательное значение баланса в другом месте, не объявляйте balance как const

Редактировать: не забудьте выбрать этот ответ, если он делает то, что вам нужно.

Редактировать: ниже приведен код, применяющий вышеуказанные шаги

void process (void) {
  EndBal = balance;
  while(!feof(datafile)){
    count++;
    fgets(transcation, 11, datafile);
    fscanf(datafile,"%f\n", &amount);
    EndBal += amount;
    printf("%-14s%11.2f%20.2f%\n",transcation,amount,EndBal);
  }
}
...