a1
program a1;
uses graphABC;
var i:integer;
begin
SetWindowSize(400,400);
for i:=0 to 7 do
begin
line(0,50*i,50*i,0);
line(400,50*i,50*i,400)
end
end.
b1
program b1;
uses graphABC;
var i:integer;
begin
SetWindowSize(400,400);
for i:=0 to 7 do
begin
line(50*i,0,400,400-50*i);
if i <> 0 then line(0,50*i,400-50*i,400)
end
end.
a2
program a2;
uses graphABC;
var i:integer;
begin
SetWindowSize(400,400);
for i:=0 to 7 do
begin
line(0,50*i,50*i,0);
line(400,50*i,50*i,400);
line(50*i,0,400,400-50*i);
if i <> 0 then line(0,50*i,400-50*i,400)
end
end.
b2
program b2;
uses graphABC;
var i:integer;
begin
SetWindowSize(400,400);
for i:=1 to 7 do line(50*i,0,50*i,400);
for i:=1 to 7 do line(0,50*i,400,50*i)
end.
Объяснение:
используем циклы с параметром
Через if скучно решать конечно, но пусть тоже полежит такой вариант.
Первый )
n=int(input('Введите натуральное число: '))
enddigit = n % 10 *(n//10 % 10 != 1)
end = 'ek'
if enddigit == 1:
end = 'ka'
elif enddigit in range(2,5):
end ='ki'
print(f'{n} boch{end}')
Второй ) (решение через 1 конструкцию if, else)
n=int(input('Введите натуральное число: '))
a = n % 10 *(n//10 % 10 != 1 and n % 10 < 5)
end = 'ka'*(a==1) + 'ki'*(a!=1) if a else 'ek'
print(f'{n} boch{end}')
Третий ) (вариация второго без условий!)
n=int(input('Введите натуральное число: '))
a = n % 10 *(n//10 % 10 != 1)*(n % 10 < 5)
print(n, 'boch' + ('ka'*(a==1) + 'ki'*(a!=1))*(a!=0) + 'ek'*(a == 0))
Поделитесь своими знаниями, ответьте на вопрос:
4) отдельное действие алгоритма - 3 буквы
Шаг алгоритма - это каждое отдельное действие алгоритма!