Условие задачи : Написать программу выводящую на экран «электронные часы», которые работают в течение нескольких минут или пока не нажата любая кнопка пользователя.
Сложность : легкая .
Как мы будем решать эту задачу ?
Сразу стоит сказать что нам понадобиться два цикла for , один для минут один для секунд.
Для начала мы просто сделаем цикл для секунд т.е. от 0 до 60. Но просто секунды нам не нужны.
Поэтому мы сразу делаем еще один цикл для минут, от 0 до числа которое введет пользователь -1 .
Почему -1? Если вы оставите то число которое ввел пользователь, то у вас цикл будет работать на минуту больше.
Давайте перейдем к каркасу программы :
uses crt ; var i, min, sec : integer; begin write('Введите количество минут : '); readln(min); {пользователь вводит кол-во минут} end.
Итого три переменные. Давайте создадим цикл для секунд :
for sec := 0 to 60 do begin writeln(минуты,' : ',sec); Delay(1000); clrscr; {каждую секунду мы будем очищать экран} end;
Теперь добавляем наш второй цикл :
for i:=0 to min-1 do for sec := 0 to 60 do begin writeln(i,' : ',sec); Delay(1000); clrscr; {каждую секунду мы будем очищать экран} end;
Осталось сделать так чтобы по нажатию на любую клавишу программы прекращала работу.
if KeyPresses then Halt;
Весь код программы :
uses crt ; var i , sec , min : integer; begin write('Введите количество минут : '); readln(min); for i:=0 to min-1 do begin for sec := 0 to 60 do begin writeln(i,' : ',sec); Delay(1000); clrscr; if KeyPressed then Halt ; end; end; end.