Блок – схема алгоритма программы
Начало
Введите
размерность массива
I:=1
to n do
Заполняем
массив
Вывод
массива
Текст программы
program sortirovka;
uses crt;
var a:array[1..100] of integer;
i,n,j,x:integer;
begin
randomize;
writeln('Введите размер массива n ');
readln(n);
writeln('Начальный массив: ');
for i:=1 to n do
begin
a[i]:=random(100);
write(a[i],' ' );
end;
for i:=1 to n do
for j:=i+1 to n do
if a[j]<a[i] then
begin
x:=a[i];
a[i]:=a[j];
a[j]:=x;
end;
writeln;
writeln('Отсортированный массив: ');
for i:=1 to n do
write(a[i],' ' );
readln;
end.
Тестирование
Вводится размерность массива(n), путем рандома задается сам массив(а),после чего программа сортирует элементы массива в порядке возрастания.
1:
Введите размер массива n=4
Начальный массив:
45 6 34 70
Отсортированный массив
6 34 45 70
Задача 6
Дан целочисленный массив А длиной n, в котором значениями заполнены только первые m элементов (m<n). Дан также целочисленный массив В длиной r. Требуется вместо каждого равного 0 элемента в А среди m первых элементов вставить всю последовательность В. Нельзя использовать дополнительный массив.
Работа программы
Вводится первый массив(a[i]) из 10 элементов, вводится 2 массив(b[i]) из 5 элементов,если в массиве(a[i]) есть хотя бы 1 ноль то перед ним вставляется вся последовательность массива(b[i]).
Назначение переменных
Назначение переменных, используемых в задаче, приведено в таблице 1
Таблица 1 – Назначение переменных
Переменная |
Тип |
Назначение переменной |
A,B |
Array of Integer |
Исходные массивы , которые задаются с клавиатуры. |
I,J,X |
Integer |
Различные целочисленные константы используемые в теле программы. |
Блок – схема алгоритма программы
Введите
a[i]
Заполните
2
массив из 5
элементов
Введите
b[i]
Текст программы
uses crt;
var
a : array [1..100] of integer;
b : array [1..5] of integer;
i, j, x : integer;
begin
clrscr;
writeln('Zapolnite pervii massiv iz 10 elementov');
for i:=1 to 10 do
read(a[i]);
writeln('Zapolnite vtoroi massiv iz 5 elementov');
for i:=1 to 5 do
read(b[i]);
i:=1; x:=10;
while i<=x do
if a[i] <> 0 then inc(i)
else begin
for j:=x downto i+1 do
a[j+4]:=a[j];
x:=x+4;
a[i+0]:=b[1];
a[i+1]:=b[2];
a[i+2]:=b[3];
a[i+3]:=b[4];
a[i+4]:=b[5];
i:=i+5;
end;
writeln;
for i:=1 to x do
write(a[i],' ');
end.