Дана программа: Program E2_1;
Var a: Array [1..8] Of Integer;
M, k: Integer;
Begin
For k := 1 To 8 Do Readln (a[k]);
M := a[1];
For k := 2 To 8 Do
If M < a[k] Then M := a[k];
Write (M)
End.
Сколько раз будет выполнен оператор M := a[k] при заданном массиве (3, 8, 7, 9, 4, 10, 2,
12)? Поясните свой ответ
function IsNice(n:longint):boolean;
// Отвечает на вопрос, является ли число красивым
var
d,nd,sd:byte;
begin
sd:=0; nd:=0;
repeat
d:=n mod 10;
sd:=sd+d; Inc(nd);
n:=n div 10
until n=0;
IsNice:=(sd mod nd = 0)
end;
var
i,n,k:longint;
begin
Write('Порядковый номер "красивого" числа: '); Read(n);
i:=1; k:=0;
repeat
if IsNice(i) then Inc(k);
if k<>n then Inc(i)
until k=n;
Writeln('Красивое число равно ',i)
end.
Тестовое решение:
Порядковый номер "красивого" числа: 15
Красивое число равно 20