Даны два числа в десятичной системе счисления: х и у. Перевести числа в заданные системы счисления, выполнить арифметические действия в заданной системе счисления. Перевести результаты арифметических операций в десятичную систему счисления, проверить правильность выполнения арифметических операций.
Исходный массив: -3 -4 -1 -8 6 Max1 = A[5] = 6 Max2 = A[3] = -1 Max3 = A[1] = -3 Новый массив: 1 -4 3 -8 5Const N = 5; Var A:array[1..N] of integer; i,Max1,Max2,Max3:integer; Begin Randomize; Write('Исходный массив:'); For i:= 1 to N do Begin A[i]:=random(21)-10; Write(' ',A[i]); End;
Max1:=1; For i:= 2 to N do if A[i]>A[Max1] then Max1:=i;
if Max1<>1 then Max2:=1 else Max2:=2; For i:= 1 to N do if (A[i]>A[Max2])and(A[i]<=A[Max1])and(i<>Max1) then Max2:=i;
Max3:=1; if (Max2=Max3)or(Max1=Max3) then Max3:=Max3+1; if (Max2=Max3)or(Max1=Max3) then Max3:=Max3+1; For i:= 1 to N do if (A[i]>A[Max3])and(A[i]<=A[Max2])and(i<>Max2) then Max3:=i;
Var min,max,i,s,n:integer; begin randomize; write('Введите диапазон: '); readln(min,max); if(min>max) then begin max:=max+min; min:=max-min; max:=max-min; end; write('Введите количество чисел: '); readln(n); for i:=1 to n do begin n:= min + random(max-min); write(i,'-е число: ', n); if((n>6) and (not odd(n))) then begin s:=s+n; writeln(' (Четное и >6, сумма равна: ', s,')') end else begin write(' (Не четное'); if(n>6) then writeln(', но >6)') else writeln(' и <6)'); end; end; write('Сумма четных чисел >6 равна: ',s); end.
Max1 = A[5] = 6
Max2 = A[3] = -1
Max3 = A[1] = -3
Новый массив: 1 -4 3 -8 5Const
N = 5;
Var
A:array[1..N] of integer;
i,Max1,Max2,Max3:integer;
Begin
Randomize;
Write('Исходный массив:');
For i:= 1 to N do
Begin
A[i]:=random(21)-10;
Write(' ',A[i]);
End;
Max1:=1;
For i:= 2 to N do
if A[i]>A[Max1] then Max1:=i;
if Max1<>1 then Max2:=1
else Max2:=2;
For i:= 1 to N do
if (A[i]>A[Max2])and(A[i]<=A[Max1])and(i<>Max1) then Max2:=i;
Max3:=1;
if (Max2=Max3)or(Max1=Max3) then Max3:=Max3+1;
if (Max2=Max3)or(Max1=Max3) then Max3:=Max3+1;
For i:= 1 to N do
if (A[i]>A[Max3])and(A[i]<=A[Max2])and(i<>Max2) then Max3:=i;
WriteLn;
WriteLn('Max1 = A[',Max1,'] = ',A[Max1]);
WriteLn('Max2 = A[',Max2,'] = ',A[Max2]);
WriteLn('Max3 = A[',Max3,'] = ',A[Max3]);
A[Max1]:=Max1;
A[Max2]:=Max2;
A[Max3]:=Max3;
Write('Новый массив:');
For i:= 1 to N do
Write(' ',A[i])
End.
Пример работы программы:
Исходный массив: -3 -4 -1 -8 6
Max1 = A[5] = 6
Max2 = A[3] = -1
Max3 = A[1] = -3
Новый массив: 1 -4 3 -8 5