Предмет: Информатика,
автор: zlomi
Массивы алгоритм вставки и удаление из массива.Задача
Помогите добрые люди!
В произвольном массиве A,состоящем из целых чисел,принадлежащих промежутку [-50;50].утроить элементы,стоящие на четырех местах.Вывести на экран исходный и полученный массивы.Вычислить сумму элементов исходного массива.
Дан вещественный массив A(N).Отсортировать его таким образом,чтобы все положительные числа находились в начале,а отрицательные в конце массива и был сохранен порядок следования элементов в обеих группах.Дан целочисленный массив X(20),элементами которого являются случайны числа из диапазона [-10.10].Вставить число 50 после каждого нулевого элемента.
С помощью алгоритма элементов вставки и удаление элемента с массива.
Большое спасибо.
Ответы
Автор ответа:
0
На второе задание:
program sortArray;
var
arrayA:array[1..50] of real;
bufR:real;
n,ci,cIi,stOt,most:byte;
begin
readln(n); for ci:=1 to n do readln(arrayA[ci]);
for ci:=1 to n-1 do
begin
most:=0;
for cIi:=ci to n do
if (arrayA[cIi]>=0) and ((arrayA[cIi]<arrayA[most]) or (most=0)) then most:=cIi; if most<>0 then
begin
bufR:=arrayA[ci]; arrayA[ci]:=arrayA[most]; arrayA[most]:=bufR;
end
else
begin
stOt:=ci; break;
end;
end;
for ci:=1 to n-stOt do
begin
most:=stOt+ci-1;
for cIi:=stOt+ci to n do
if arrayA[cIi]>arrayA[most] then most:=cIi;
bufR:=arrayA[stOt+ci-1]; arrayA[stOt+ci-1]:=arrayA[most]; arrayA[most]:=bufR; end;
writeln; for ci:=1 to n do writeln(arrayA[ci]:0:3); readln;
end.
program sortArray;
var
arrayA:array[1..50] of real;
bufR:real;
n,ci,cIi,stOt,most:byte;
begin
readln(n); for ci:=1 to n do readln(arrayA[ci]);
for ci:=1 to n-1 do
begin
most:=0;
for cIi:=ci to n do
if (arrayA[cIi]>=0) and ((arrayA[cIi]<arrayA[most]) or (most=0)) then most:=cIi; if most<>0 then
begin
bufR:=arrayA[ci]; arrayA[ci]:=arrayA[most]; arrayA[most]:=bufR;
end
else
begin
stOt:=ci; break;
end;
end;
for ci:=1 to n-stOt do
begin
most:=stOt+ci-1;
for cIi:=stOt+ci to n do
if arrayA[cIi]>arrayA[most] then most:=cIi;
bufR:=arrayA[stOt+ci-1]; arrayA[stOt+ci-1]:=arrayA[most]; arrayA[most]:=bufR; end;
writeln; for ci:=1 to n do writeln(arrayA[ci]:0:3); readln;
end.
Похожие вопросы
Предмет: Қазақ тiлi,
автор: flowSo
Предмет: Русский язык,
автор: Аноним
Предмет: Биология,
автор: madinakadyr280409
Предмет: Физика,
автор: dzami1629
Предмет: Информатика,
автор: kiri4enko019