Procedure Dec2Oct(n:longint); { Перевод натурального десятичного n в восьмеричную систему счисления и вывод результата } const alpha = '01234567'; var s: string; i:integer; begin s := ''; while n > 0 do begin s := alpha[(n mod 8) + 1] + s; n := n div 8 end; for i:=Length(s) to 9 do s:='0'+s; Write(s) end;
{ Использование } var x:longint; begin Write('Введите десятичное число: '); Read(x); Write('В восьмеричной системе счисления: '); Dec2Oct(x); Writeln end.
Тестовое решение: Введите десятичное число: 1234567 В восьмеричной системе счисления: 0004553207
var a: array[1..n] of real; i, imax, imin: integer; r, rmax, rmin:real;
begin Randomize; Writeln('Элементы массива'); rmax:=-1; { заведомо меньше меньшего } rmin:=100; { заведомо больше большего } for i := 1 to n do begin r:=Random(10); a[i]:=r; Write(r,' '); if rmax<r then begin rmax:=r; imax:=i end; if rmin>=r then begin rmin:=r; imin:=i end end; Writeln; { меняем местами и выводим результат } a[imax]:=rmin; a[imin]:=rmax; Writeln('Конечное состояние массива'); for i := 1 to n do Write(a[i],' '); Writeln end.
{ Перевод натурального десятичного n в восьмеричную систему счисления
и вывод результата }
const
alpha = '01234567';
var
s: string;
i:integer;
begin
s := '';
while n > 0 do begin
s := alpha[(n mod 8) + 1] + s;
n := n div 8
end;
for i:=Length(s) to 9 do s:='0'+s;
Write(s)
end;
{ Использование }
var
x:longint;
begin
Write('Введите десятичное число: '); Read(x);
Write('В восьмеричной системе счисления: ');
Dec2Oct(x);
Writeln
end.
Тестовое решение:
Введите десятичное число: 1234567
В восьмеричной системе счисления: 0004553207
n = 20;
var
a: array[1..n] of real;
i, imax, imin: integer;
r, rmax, rmin:real;
begin
Randomize;
Writeln('Элементы массива');
rmax:=-1; { заведомо меньше меньшего }
rmin:=100; { заведомо больше большего }
for i := 1 to n do
begin
r:=Random(10);
a[i]:=r;
Write(r,' ');
if rmax<r then begin rmax:=r; imax:=i end;
if rmin>=r then begin rmin:=r; imin:=i end
end;
Writeln;
{ меняем местами и выводим результат }
a[imax]:=rmin; a[imin]:=rmax;
Writeln('Конечное состояние массива');
for i := 1 to n do Write(a[i],' ');
Writeln
end.
Тестовое решение:
Элементы массива
4 1 2 8 6 3 7 5 5 1 4 4 3 3 6 8 5 4 7 6
Конечное состояние массива
4 1 2 1 6 3 7 5 5 8 4 4 3 3 6 8 5 4 7 6
Видно, что первая восьмерка поменялась местами с последней единицей.