Задача 5 Урок 13.2
Primary tabs
В некоем виртуальном пространстве есть виртуальные, опять же, ASCII-счеты, с 7-ю спицами по 10 костяшек на каждой, в сброшенном состоянии (условный ноль) они выглядят так:
---++++++++++ ---++++++++++ ---++++++++++ ---++++++++++ ---++++++++++ ---++++++++++ ---++++++++++Задание: визуализируйте на счетах введенное пользователем число.
program u132z5;
var a,b,d,e,f,n,i: integer;
begin
writeln('Vvedite chislo');
readln(n);
while (n>0) do //переворачиваем число и записываем в "b"
begin
a:=n mod 10;
b:=b*10+a;
n:=n div 10;
f:=f+1; //"f" считаем кол-во чисел в числе
end;
while (f<7) do //заполняем пустые(всего 7)
begin
writeln('---++++++++++');
f:=f+1;
end;
repeat
d:=b mod 10; //"d" кол-во знаков в левой части
e:=10-d; //"e" кол-во знаков в правой части
for i:=1 to d do //заполняем левую часть
write('+');
write('---'); //заполняем пробел
for i:=1 to e do //заполняем правую часть
write('+');
b:=b div 10;
writeln();
until b=0;
readln();
end. - Log in to post comments
- 1257 reads
vedro-compota
Sat, 11/19/2022 - 17:36
Permalink
прокомментировать назначение
прокомментировать назначение переменных
_____________
матфак вгу и остальная классика =)
NikSo
Mon, 11/21/2022 - 09:35
Permalink
прокоментировал
program u132z5v2; var a: integer; //вспомогательная для переворачивания числа b: integer; //хранит число справа налево d: integer; //кол-во + в левой части e: integer; //кол-во + в правой части f: integer; //считает сколько нижних строк занимает число на счетах n: integer; //вспомогательная для переворачивания числа(остаток от деления) i: integer; //счетчик цикла begin writeln('Vvedite chislo'); readln(n); while (n>0) do //переворачиваем число и записываем в "b" begin a:=n mod 10; b:=b*10+a; n:=n div 10; f:=f+1; //"f" считаем кол-во чисел(символов) в числе end; while (f<7) do //заполняем пустые строки(всего 7) begin writeln('---++++++++++'); f:=f+1; end; repeat d:=b mod 10; e:=10-d; for i:=1 to d do //заполняем левую часть write('+'); write('---'); //заполняем "пробел" for i:=1 to e do //заполняем правую часть write('+'); b:=b div 10; writeln(); until b=0; readln(); end.vedro-compota
Sun, 11/27/2022 - 13:38
Permalink
засчитано
засчитано
_____________
матфак вгу и остальная классика =)