Запишем вычисление суммы "в столбик", помня, что вычисления проводятся в системе счисления по некоторому основанию n>7. Почему именно n>7? Потому, что если бы основание системы было равно или меньше семи, в записи числа цифра семь не могла бы существовать. 12 + 17
31 В младшем разряде 2+7=1, чего быть не может, следовательно, 2+7=11 и единица пошла в старший разряд. Подтверждение этому мы видим при сложении в старшем разряде: 1+1+1=3 (учтена единица от переноса). Мы знаем, что 2+7=9 в десятичной системе счисления, а у нас получилось 11. Находим разницу: 11-9=2. Именно на столько основание системы счисления меньше десяти. 10-2=8. Следовательно, система счисления восьмеричная. ответ: в восьмеричной системе счисления.
Const n=13; var a:array[1..n] of integer; i,s1,s2,p,k,e:integer; m:real; begin Randomize; Write('Исходный массив: '); s1:=0; k:=0; p:=0; s2:=0; for i:=1 to n do begin a[i]:=Random(21)-10; Write(a[i],' '); if a[i] mod 2 <>0 then begin if a[i]<0 then begin s1:=s1+a[i]; k:=k+1 end else begin p:=p+1; if p=2 then e:=a[i] end end; if p>=2 then s2:=s2+a[i] end; Writeln; if k>0 then m:=s1/k else m:=0; if s2<>e then s2:=s2-e; Writeln(m,' ',s2) end.
12
+ 17
31
В младшем разряде 2+7=1, чего быть не может, следовательно, 2+7=11 и единица пошла в старший разряд. Подтверждение этому мы видим при сложении в старшем разряде: 1+1+1=3 (учтена единица от переноса).
Мы знаем, что 2+7=9 в десятичной системе счисления, а у нас получилось 11. Находим разницу: 11-9=2. Именно на столько основание системы счисления меньше десяти. 10-2=8. Следовательно, система счисления восьмеричная.
ответ: в восьмеричной системе счисления.
n=13;
var
a:array[1..n] of integer;
i,s1,s2,p,k,e:integer;
m:real;
begin
Randomize;
Write('Исходный массив: ');
s1:=0; k:=0; p:=0; s2:=0;
for i:=1 to n do
begin
a[i]:=Random(21)-10;
Write(a[i],' ');
if a[i] mod 2 <>0 then
begin
if a[i]<0 then
begin s1:=s1+a[i]; k:=k+1 end
else
begin
p:=p+1;
if p=2 then e:=a[i]
end
end;
if p>=2 then s2:=s2+a[i]
end;
Writeln;
if k>0 then m:=s1/k else m:=0;
if s2<>e then s2:=s2-e;
Writeln(m,' ',s2)
end.
Контрольное решение
Исходный массив: 7 3 10 3 3 0 1 -2 9 -2 5 -5 1
-5 23