С++: Записать первые n членов геометрической прогрессии в файл

Задача:

Написать программу, которая принимает параметры, задающие геометрическую последовательность, а так же число n — количество элементов последовательности. Записать результат работы программы в файл.

Очень простой код:

[cpp]

int _tmain(int argc, _TCHAR* argv[])
{
int N, b0, q;
printf(«Enter N, b0, q:»);
scanf(«%d %d %d»,&N, &b0, &q);
FILE * file;
file = fopen(«output.txt», «w»);
for (int i = 0; i<N; i++)
{
fprintf(file, «%d «,b0);
b0 *= q;
}
fclose(file);
return 0;
}

[/cpp]

Сначала стандартно с консоли читаются данные в переменные. Далее создается указатель на файловую переменную. Файл output.txt открывается на запись и далее в него в цикле ведется вычисление следующего элемента последовательности и запись его в файл.

b0 *= q, это тоже самое, что и b0 = b0*q;

2 Responses

  1. expert 21.02.2012 / 16:22

    Изменять переменную b0, являющуюся по сути входным параметром, не совсем корректно. Это примерно то же самое, что изменять формальный аргумент функции. Лучше создать для вычислений новую переменную, а переменные N, q и bo воспринимать как read-only.

    • Pyatnitsev 21.02.2012 / 16:27

      Это сделано специально.
      Такое действие в данном случае позволяет сократить расход памяти — пусть на 4 байта но сократить.

Добавить комментарий