Пусть дан файл целых чисел. Определите, образуют ли числа арифметическую прогрессию - Pascal
Формулировка задачи:
Пусть дан файл целых чисел. Определите, образуют ли числа арифметическую прогрессию.
Решение задачи: «Пусть дан файл целых чисел. Определите, образуют ли числа арифметическую прогрессию»
textual
Листинг программы
var d, p, q: Integer;
begin
Assign(input,'input.txt'); Reset(input);
Read(p,q); d:=q-p;
while not SeekEoF and (q-p=d) do begin
p:=q; Read(q);
end;
if q-p<>d then Write('не ');
WriteLn('является арифметической прогрессией');
Close(input);
end.
Объяснение кода листинга программы
- Объявление переменных:
d,pиqтипа Integer. - Открытие файла
input.txtдля чтения:Assign(input,'input.txt'); Reset(input); - Чтение значений переменных
pиqиз файла. - Вычисление разности между
qиpи сохранение в переменнуюd:d:=q-p; - Начало цикла
whileпроверяющего, не достигнут ли конец файла и равны ли последовательные числа разностиd:while not SeekEoF and (q-p=d) do begin - Внутри цикла обновление значения переменной
pи чтение следующего значенияq. - Проверка условия, что разность между
qиpбольшеdи вывод сообщения, если условие не выполняется:if q-p<>d then Write('не ') - Вывод сообщения о том, что последованность
является арифметической прогрессией:WriteLn('является арифметической прогрессией') - Закрытие файла
input.txt:Close(input);