Гирлянда: определить, когда лампочки вспыхнут одновременно в следующий раз - Free Pascal

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

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

Есть n лампочек, для каждой задан период времени, через который лампочка вспыхивает, в секундах. В начальный момент времени все лампочки вспыхнули. Определите, когда они вспыхнут одновременно в следующий раз. Входные данные В первой строке задано количество лампочек n (2 ≤ n ≤ 10). Во второй строке находится n натуральных чисел – периоды вспыхивания лампочек, каждое из которых не превышает 100. Выходные данные Вывести время в секундах, через которое все лампочки вспыхнут одновременн

Решение задачи: «Гирлянда: определить, когда лампочки вспыхнут одновременно в следующий раз»

textual
Листинг программы
function NOD(x,y:longint):longint;
Begin
If x<>0 then NOD:=NOD(y mod x,x) else NOD:=y;
End;
function NOK(x,y:longint):longint;
Begin
NOK:=(x div NOD (x,y))*y;
end;
 
var
  N, i, ResultTime : integer;
  LampTime : array[1..10] of integer;
begin
 ReadLn(N);
 for i:=1 to N do
    Read( LampTime[i] ); 
 
 ResultTime := NOK( LampTime[1], LampTime[2]);
 for i:=3 to N do
   ResultTime := NOK( ResultTime, LampTime[i] );
 WriteLn(ResultTime)
end.

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

  1. Гирлянда состоит из 10 лампочек, которые загораются поочередно с определенной задержкой.
  2. Пользователь вводит количество лампочек, которые он хочет включить (N).
  3. Затем пользователь вводит время задержки в миллисекундах для каждой лампочки (LampTime[i]).
  4. Функция NOK(x,y) используется для расчета времени, через которое все лампочки будут гореть одновременно.
  5. Результат выводится на экран.

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


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

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

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