В первом задании не хватает одной строчки a:=a div 10; в цикле repeat, иначе программа просто зациклится в PascalABCNET, или вылетит по переполнению в обычном Pascal. С учетом изменений в первом задании реализуется алгоритм перестановки цифр - ответ В)
Во втором задании: i = 3 , p=2 i = 6, p=4 i=9, p=8 ответ В) 8
В третьем задании: - это второе задание, записанное наоборот i=3, p=2 i=6, p=4 i=9, p=8 ответ D) 8
В четвертом задании: y=5, x=2 y=7, x=4 y=11, x=6 - выход из цикла ответ B) 11
задание 5 АА+В=ВСС A,B,C - десятичные цифры от 0 до 9 т.к. при сложении идет перенос в два младших разряда СС, то А=9, В =1, соответственно, С =0 99+1=100
// PascalABC.NET 3.2, сборка 1381 от 04.02.2017 // Внимание! Если программа не работает, обновите версию!
begin var s:set of integer:=[]; for var i:=1 to 254 do begin var flag:=True; var j:=2; var r:=round(sqrt(i)); while flag and (j<=r) do if i mod j = 0 then flag:=false else j+=1; if flag then if i mod 4=3 then s+=[i] end; foreach var x in s do Print(x); end.
С учетом изменений в первом задании реализуется алгоритм перестановки цифр - ответ В)
Во втором задании: i = 3 , p=2
i = 6, p=4
i=9, p=8
ответ В) 8
В третьем задании: - это второе задание, записанное наоборот
i=3, p=2
i=6, p=4
i=9, p=8
ответ D) 8
В четвертом задании:
y=5, x=2
y=7, x=4
y=11, x=6 - выход из цикла
ответ B) 11
задание 5
АА+В=ВСС
A,B,C - десятичные цифры от 0 до 9
т.к. при сложении идет перенос в два младших разряда СС, то А=9, В =1,
соответственно, С =0
99+1=100
// Внимание! Если программа не работает, обновите версию!
begin
var s:set of integer:=[];
for var i:=1 to 254 do begin
var flag:=True;
var j:=2;
var r:=round(sqrt(i));
while flag and (j<=r) do
if i mod j = 0 then flag:=false
else j+=1;
if flag then
if i mod 4=3 then s+=[i]
end;
foreach var x in s do Print(x);
end.
Результат
83 79 167 163 251 71 67 151 239 59 139 227 47 223 43 131 127 211 31 23 199 19 107 103 191 11 7 3 179