Задача 23 Урок 15
Primary tabs
На картинке выше фото часов, которые показывают время следующим образом:
в верхнем ряду отображают текущий час 4мя лампочками (битами) если лампа горит,
складываем ее значение в основное т.е. 2 + 1 = 3 часа (в 12ти часовом формате)
В нижней линии 6 лампочек (бит) и они кодируют 16 + 8 + 1 = 25 минут.
Задача:
Напишите программу, которая принимает у пользователя два целых числа
(часы и минуты) и выводит в консоль полученное время в формате бинарных
ASCII-часов 0-11 ч. и 0-59 мин.
Также отметим, что:
12 часов "не выводится" а соответствует пустым значениям/нулям (- - - -)
аналогично в минутах "не выводится" 60 минут (- - - - - -)
Для случая с фотографии выше (время 3:25) ASCII-вариант будет выглядеть как:
- - + +
- + + - - +
А, если бы время было 10:40, то :
+ - + -
+ - + - - -
type arr1 = array [1..4] of integer; arr2 = array [1..6] of integer; var i, j, m, h : integer; a : Arr1; b : arr2; begin a[1] := 8; a[2] := 4; a[3] := 2; a[4] := 1; b[1] := 32; b[2] := 16; b[3] := 8; b[4] := 4; b[5] := 2; b[6] := 1; i := 1; j := 1; writeln('Сколько время?'); read(h, m); while i <= high(a) do begin if h = 12 then write('- ') else if h >= a[i] then begin write('+ '); h := h - a[i]; end else write('- '); i += 1; end; writeln(); while j <= high(b) do begin if m = 60 then write('- ') else if m >= b[j] then begin write('+ '); m := m - b[j]; end else write('- '); j += 1; end; writeln(); write('Мавр сделал своё дело, мавр может уходить'); readln();readln();
- Log in to post comments
- 444 reads