Const n=20;
var a: Array [1..n] of integer;
i,j,m,d,dm: Integer;
begin
for i:=1 to n do
a[i]:=random(100);
writeln (a);
for i:=1 to n do
begin
d:=0;
for j:=1 to a[i] do
if a[i] mod j = 0 then d:=d+1;
if d>dm then
begin
dm:=d;
m:=i
end
end;
writeln (m)
end.
217 бит = 217/8 байт=27,125 байт = 27,125/1024 Кбайт ≈ 0.26 Кбайт
// PascalABC.NET 3.1, сборка 1174 от 22.02.2016
begin
var n:=ReadInteger('n=');
var a:=ArrRandomReal(n,1,50);
a.Println;
var m:=a.Min;
if m<>0 then
for var i:=0 to n-1 do a[i]/=m;
a.Println
end.
<u>Тестовые решения:</u>
n= 5
15.9562486982701 12.6295463515583 11.5262675264507 24.1544637978796 45.6158542677834
1.38433787534893 1.09571865502651 1 2.09560152429653 3.95755643907304
n= 10
14.0622929614327 16.5069398081428 13.2300360101415 45.449448110745 46.6062807271286 41.3808015088461 21.5502972461052 20.3082026570608 6.33108078377837 25.0892608808769
2.22115203417771 2.60728623941069 2.0896962875659 7.17878189569095 7.36150466545052 6.53613544386811 3.40388915922883 3.20769918290964 1 3.96287170196298
// PascalABC.NET 3.1, сборка 1174 от 22.02.2016
begin
var n:=ReadInteger('n=');
var a:=ArrRandom(n,1,50);
a.Println;
var m:=a.Max;
if m<>0 then
for var i:=0 to n-1 do a[i]+=m;
a.Println
end.
<u>Тестовые решения:</u>
n= 8
37 3 10 29 39 31 40 10
77 43 50 69 79 71 80 50
n= 10
9 47 40 19 20 37 21 39 26 31
56 94 87 66 67 84 68 86 73 78
var a:array [1..4,1..6] of integer;
i,j:integer;
begin
for i:=1 to 4 do
begin
for j:=1 to 6 do
begin
if j mod 2 <> 0 then a[i,j]:=1
else a[i,j]:=2;
write (a[i,j],' ')
end;
writeln
end
end.
AB(16) = 171(10)
25(8) = 21(10)
11000000(2) = 192(10)
11000011(2) = 195(10)
11011001(2) = 217(10)
11011111(2) = 223(10)
171+21=192
Отсюда следует, что в данном ряду чисел являющихся больше 192 - три: 11000011, 11011001, 11011111. Всё!