Var a,max,sum:integer; arr:array [0..2015] of integer; begin randomize; max:=-500; sum:=0; for a:=0 to 2015 do begin arr[a]:=random(1001)-500; if max<arr[a] then max:=arr[a]; end; write('максимальный элемент массива ==> ',max); writeln();
if max mod 2 = 1 then begin for a:=0 to 2015 do begin if arr[a] mod 2 =1 then sum:=sum+arr[a]; end; writeln('сумма чисел одинаковой чётности числу ',max,' = ',sum); end;
sum:=0; if max mod 2 = 0 then begin for a:=0 to 2015 do begin if arr[a] mod 2 =0 then sum:=sum+arr[a]; end; writeln('сумма чисел одинаковой чётности числу ',max,' = ',sum); end;
Предполагаю 55555 - 29 - Ы мой вариант - немного не логичный с некоторой стороны, но попытаюсь объяснить почему 29: -- О - 16 - 10000 в двоичной системе, если посмотреть, то именно 5 цифр получается, что возможно нам и подходит. Д - 5 - 101 возможно, это потому что две 55, и добавляем единицу в конце Т - 20 - 10100 тут образуются все 5 цифр, и как перед этим (Д - 5), получаем 101 Ч - 26 - 11010 тут просто добавляется 1 в перед и далее 55555, так как с 5555 получили просто впереди 1, то скорее всего, и тут добавляется 1, и получаем число 11101 = 29
arr:array [0..2015] of integer;
begin
randomize;
max:=-500;
sum:=0;
for a:=0 to 2015 do begin
arr[a]:=random(1001)-500;
if max<arr[a] then max:=arr[a];
end;
write('максимальный элемент массива ==> ',max);
writeln();
if max mod 2 = 1 then begin
for a:=0 to 2015 do begin
if arr[a] mod 2 =1 then sum:=sum+arr[a];
end;
writeln('сумма чисел одинаковой чётности числу ',max,' = ',sum);
end;
sum:=0;
if max mod 2 = 0 then begin
for a:=0 to 2015 do begin
if arr[a] mod 2 =0 then sum:=sum+arr[a];
end;
writeln('сумма чисел одинаковой чётности числу ',max,' = ',sum);
end;
end.
мой вариант - немного не логичный с некоторой стороны, но попытаюсь объяснить почему 29:
--
О - 16 - 10000 в двоичной системе, если посмотреть, то именно 5 цифр получается, что возможно нам и подходит.
Д - 5 - 101 возможно, это потому что две 55, и добавляем единицу в конце
Т - 20 - 10100 тут образуются все 5 цифр, и как перед этим (Д - 5), получаем 101
Ч - 26 - 11010 тут просто добавляется 1 в перед
и далее 55555, так как с 5555 получили просто впереди 1, то скорее всего, и тут добавляется 1, и получаем число 11101 = 29