Помогите! for i := 0 to 99 do num[i+1]:=i+1; k:=0; i:=1; while k<7 do begin if...

0 голосов
42 просмотров

Помогите!
for i := 0 to 99 do num[i+1]:=i+1;
k:=0;
i:=1;
while k<7 do begin<br> if easy(num[i]) = true
then k:=k+1;
i:=i+2
end;
write(num[i-2]);
В программе использованы две целочисленные переменные i и k, целочисленный массив num из ста элементов, с индексами от 1 до 100. Также определена функция easy() логического типа данных, которая возвращает истинное значение в случае, если переданный в неё целочисленный аргумент является простым числом, и ложное значение - в противном случае. Какое число будет выведено в результате выполнения этой программы?


Информатика (91 баллов) | 42 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Если дальше завершить программу, то получим это:
program HelloWorld;
    function ez(a: longint): boolean;        var c: integer;        begin            ez := a >= 2;            for c := 2 to trunc(sqrt(a)) do if a mod c = 0 then ez := false        end;        var i, k: integer;        num: array [1 .. 100] of integer;
begin    for i := 0 to 99 do num[i+1] := i + 1;        k := 0;    i := 1;        while k < 7 do begin        if ez(num[i]) = true            then k := k + 1;        i := i + 2;    end;        write(num[i-2]);    end.
Ответ 19

(155 баллов)