1) Выводит 2 2) var N: longint; digit, maxdigit: integer;
begin readln(N); maxdigit := 10; // нужно присваивать 0 while N > 10 do // нужно написать N > 0 begin digit := N mod 10; if digit > maxdigit then maxdigit := digit; N := N div 10; end; writeln(digit); // нужно вывести maxdigit end.
Верный код
var N: longint; digit, maxdigit: integer;
begin readln(N); maxdigit := 0; while N > 0 do begin digit := N mod 10; if digit > maxdigit then maxdigit := digit; N := N div 10; end; writeln(maxdigit); end.
1) При вводе числа 256 программа выведет 3, т.к. ввели n=256 n>0 ? - да, значит дальше идёт блок из цикла, и будет он повторятся до тех пор пока n будет >0. d:=256 mod 10 d:=6, т.к. mod берёт остаток от деления. n:=256 div 10 n:=25, т.к. div делит нацело и остаток не берёт. sum:=sum+1; sum:=1;
цикл первый раз закончился и опять проверяется условие n>0, если да, то опять запускает цикл. n:=25>0 d:=25 mod 10 d:=5 n:=25 div 10 n:=2 sum:=1+1 sum:=2;
опять закончился цикл и проверяется условие n>0, n:=2>0 d:=2 mod 10; d:=2; n:=2 div 10 n:=0 sum:=2+1; sum:=3;
заканчивается цикл и проверяется условие n>0? n:=0 >0 - нет. цикл заканчивается и выводится значение sum. ответ: 3. 2) 120, 210, 111 и т.д.
import tkinter
master = tkinter.Tk()
canvas = tkinter.Canvas(master, bg='white', height=600, width=600)
a = 75
for i in range(1, 9):
for o in range(1, 5):
if i % 2 == 0:
canvas.create_rectangle((a - 75, i * 75 - 75), (a, i * 75), fill='black')
else:
canvas.create_rectangle((a, i * 75 - 75), (a + 75, i * 75), fill='black')
a += 150
a = 75
canvas.pack()
master.mainloop()
В результате этой программы появится шахматное поле, если хочешь сделать что-то в роде орнамента - пользуйся, как шаблоном.