Урок 13.2 Задача 5
Primary tabs
В некоем виртуальном пространстве есть виртуальные, опять же, ASCII-счеты, с 7-ю спицами по 10 костяшек на каждой
Задание: визуализируйте на счетах введенное пользователем число.
var a, b, j, i: integer; // а - введенное число, b - количество костей на спице, j - уменьшатель зарзрядов, i - счетчик цикла спицы
begin // счеты заполняем сверху вниз
j:= 1000000; // 7 спиц (разрядов), поэтому 7-значный "уменьшатель разрядов"
write ('Введите число: ');
readln(a);
while (j>=1)do // цикл действует, пока уменьшатель разрядов не спустится до разряда единиц
begin
b:= a div j; {получаем крайнее левое число, пишем его в b
начинает работать, когда j спустится до а (сравняется по разрядам)
когда j еще не спустился до а, получаем 0}
a:= a mod j; {отсекаем крайнее левое число
тоже начинает работать, когда j спустится до а (сравняется по разрядам)
когда j еще не спустился до а, а не меняется}
for i:=1 to 13 do // цикл спицы, счетчик до 13: 10 костей и 3 пустых места
begin
if (i <= b){- это само число} or (i > b+3){- это оставшиеся кости в конце спицы} then
write('+ ') // прописываем кости
else // условие не сработало, значит это одно из 3 пустых мест
write('- '); // заполняем пустые места
end; // конец цикла спицы
j:= j div 10; // спускаемся на спицу (разряд) ниже
writeln (); // новая строка
end;
readln();
end. Вывод в консоли:
Введите число: 7352
- - - + + + + + + + + + +
- - - + + + + + + + + + +
- - - + + + + + + + + + +
+ + + + + + + - - - + + +
+ + + - - - + + + + + + +
+ + + + + - - - + + + + +
+ + - - - + + + + + + + +
- Log in to post comments
- 648 reads
vedro-compota
Wed, 11/09/2022 - 18:48
Permalink
засчитано
засчитано
_____________
матфак вгу и остальная классика =)