Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Мет_пом_РГР_2_БМТ.doc
Скачиваний:
4
Добавлен:
20.08.2019
Размер:
350.21 Кб
Скачать

3.5 Упорядочение массива

Текст программы:

Program RGR_2_4;

{РГР №2, вариант №555, гр.БМТ1-11-08, Иванов И.И.}

Type vector=array[1..100] of integer;

var Vr, n, i, a, b: integer;

R: vector;

Procedure Part_1(Vr,n,a,b:integer; var R:vector);

var i:integer;

Begin

If Vr<>1 then randomize;

for i:=1 to n do r[i]:=a+Round((b-a)*Random(100)/100);

end;

Procedure Part_4(n:integer; var R:vector);

var i,j,k,buf:integer;

Begin

For i:=n div 2 + 1 to 3*n div 4 - 1 do

If r[i]>=0 then

begin

k:=i;

For j:=i+1 to 3*n div 4 do

If r[j]>=0 then

If 1/(r[j]+0.1e-30) > 1/(r[k]+0.1e-30) then k:=j;

buf:=r[i];

r[i]:=r[k];

r[k]:=buf;

end;

end;

Begin

write('введите вариант расчета Vr => ');

readln(Vr);

if Vr=0 then

begin

n:=17; a:=-3; b:=4;

r[1] := 1; r[2] := 0; r[3] :=-3; r[4] := 2; r[5] := 0;

r[6] :=-3; r[7] := 4; r[8] := 3; r[9] := 2; r[10]:= 0;

r[11]:= 0; r[12]:= 4; r[13]:= 0; r[14]:=-2; r[15]:=-1;

r[16]:=-1; r[17]:= 1;

end

else

begin

Write('Введите n,a,b => '); readln(n,a,b);

Part_1(Vr,n,a,b,r);

end;

writeln('+++++++++++++++++++++++++++++++++++++++++++++++++++++++++');

writeln('Исходный массив:');

For i:=1 to n do

begin

write(r[i]:3);

if i = n div 2 then writeln;

end;

writeln;

writeln('++++++++++++++++++++++++++++++++++++++++++++++++++++++++');

part_4(n,R);

writeln('Упорядоченный массив:');

for i:=1 to n do

begin

write(r[i]:3);

if i = n div 2 then writeln;

end;

writeln;

writeln('+++++++++++++++++++++++++++++++++++++++++++++++++++++++++');

end.

введите вариант расчета Vr => 0

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Исходный массив:

1 0 -3 2 0 -3 4 3

2 0 0 4 0 -2 -1 -1 1

++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Упорядоченный массив:

1 0 -3 2 0 -3 4 3

0 0 2 4 0 -2 -1 -1 1

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++

введите вариант расчета Vr => 1

Введите n,a,b => 33 -7 6

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Исходный массив:

1 -5 2 -4 0 5 5 -2 -6 -5 -6 -7 -4 -6 2 -2

2 -6 -1 1 -5 -2 -1 -7 -2 1 0 -4 6 -1 6 0 1

++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Упорядоченный массив:

1 -5 2 -4 0 5 5 -2 -6 -5 -6 -7 -4 -6 2 -2

1 -6 -1 2 -5 -2 -1 -7 -2 1 0 -4 6 -1 6 0 1

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++

введите вариант расчета Vr => 2

Введите n,a,b => 33 -7 6

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Исходный массив:

5 -2 -2 -1 -7 2 -2 -6 -3 0 1 2 6 -5 3 -3

1 0 4 -1 1 3 1 6 -6 5 -5 0 -2 -6 -2 -6 -5

++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Упорядоченный массив:

5 -2 -2 -1 -7 2 -2 -6 -3 0 1 2 6 -5 3 -3

0 1 1 -1 1 3 4 6 -6 5 -5 0 -2 -6 -2 -6 -5

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]