Поделитесь своими знаниями, ответьте на вопрос:
Написать два варианта программы с использованием процедуры и функции Даны действительные числа а1, ..., аN, b1, ..., bm. В последовательности а1, ..., аN в последовательности b1, ..., bm все члены, следующие за членом с наибольшим значением (за первым по порядку, если их несколько), заменить на 0.5.
Программа:
Pascal:
№1)
var arr: array[1..10] of integer;
begin
for var i := 1 to 10 do arr[i] := random(100);
writeln(arr);
end.
№2)
const N = 15;
var arr: array[1..N] of integer;
i, tmp: integer;
begin
for i := 1 to 15 do arr[i] := random(100);
writeln(arr);
for i:=1 to n div 2 do begin
tmp := arr[i];
arr[i] := arr[N - i + 1];
arr[N - i + 1]:= tmp;
end;
writeln(arr);
end.
№3)
const N = 20;
var
arr: array[1..N] of integer;
i, tmp, j: integer;
begin
for i := 1 to N do readln(arr[i]);
writeln(arr);
for i := 1 to N - 1 do
for j := 1 to N - i do
if (arr[j] > arr[j+1]) then begin
tmp := arr[j];
arr[j] := arr[j+1];
arr[j+1] := tmp;
end;
writeln(arr);
end.