Гирлянда: определить, когда лампочки вспыхнут одновременно в следующий раз - 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.
Объяснение кода листинга программы
- Гирлянда состоит из 10 лампочек, которые загораются поочередно с определенной задержкой.
- Пользователь вводит количество лампочек, которые он хочет включить (N).
- Затем пользователь вводит время задержки в миллисекундах для каждой лампочки (LampTime[i]).
- Функция NOK(x,y) используется для расчета времени, через которое все лампочки будут гореть одновременно.
- Результат выводится на экран.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д