Определить, образует ли последовательность, составленная из дат, арифметическую или геометрическую прогрессию - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Несколько школьников выстроились в шеренгу. Для каждого школьника известен день его рождения Определить, образует ли последовательность, составленная из этих чисел, арифмети¬ческую или геометрическую прогрессию

Решение задачи: «Определить, образует ли последовательность, составленная из дат, арифметическую или геометрическую прогрессию»

textual
Листинг программы
var
  n, i, next, cur, prev: integer;
  arith, geom: boolean;
begin
  write('Введите кол-во школьников: ');
  read(n);
  write('Введите дни рождения школьников: ');
  arith := true;
  geom := true;
  for i := 1 to n do
  begin
    read(next);
    if i > 2 then
    begin
      if next - cur <> cur - prev then arith := false;
      if next / cur <> cur / prev then geom := false;
    end;
    prev := cur;
    cur := next;
  end;
  if arith then writeln('Последовательность образует арифметическую прогрессию');
  if geom then writeln('Последовательность образует геометрическую прогрессию');
  if not(arith or geom) then writeln('Последовательность не образует прогрессий');
end.

Объяснение кода листинга программы

  1. Ввод количества школьников и их дат рождения.
  2. Установка флагов arith и geom в истинное значение.
  3. Цикл по количеству школьников.
  4. В каждой итерации чтение следующей даты рождения.
  5. Проверка, является ли последовательность дат арифметической прогрессией.
  6. Проверка, является ли последовательность дат геометрической прогрессией.
  7. Если последовательность не является ни арифметической, ни геометрической прогрессией, то выводится сообщение об этом.
  8. Вывод сообщения о том, какая прогрессия была найдена.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.333 из 5
Похожие ответы