Другие языки программирования и технологии
Сортировка массива (Паскаль) помогите пожалуйста
{Дан массив А(10). Найти максимальный элемент массива, упорядочить элементы, следующие за ним по убыванию.} Максимальный я нашел только вот отсортировать не могу помогите const N=10; VAR A:ARRAY[1..N] OF INTEGER; imax, temp,i,j,k,MAX:INTEGER; BEGIN randomize; FOR I:=1 TO N DO begin A:=RANDOM(20); WRITE(A:5); end; MAX:=A[1]; Imax := 1; FOR I:=2 TO N DO begin IF A>MAX THEN begin MAX:=A; Imax := i; end; end; WriteLn; WriteLn('Max = ', max, ' Imax = ', Imax); end.
{Дан массив А (10). Найти максимальный элемент массива,
упорядочить элементы, следующие за ним по убыванию. }
const N=10;
VAR A:ARRAY[1..N ] OF INTEGER;
imax,MAX,i,j, temp:INTEGER;
BEGIN
RANDOMIZE;
FOR I:=1 TO N DO begin
A [ I ] :=RANDOM(150)-50;
WRITE(A [ I ] :5);
end;
MAX:=A [ 1 ] ;
Imax := 1;
FOR I:=2 TO N DO begin
IF A [ I ] >MAX THEN begin
MAX:=A [ I ] ;
Imax := i;
end;
end;
WriteLn;
WriteLn('Max = ', max, ' Imax = ', Imax);
for i:= Imax to N-1 do begin
for j := i+1 to N do begin
if A [ i ] < A [ j ] then begin
temp := a [ i ] ;
a [ i ] := a [ j ] ;
a [ j ] := temp;
end;
end;
end;
for i := 1 to N do begin
write(A [ i ] :4);
end;
end.
упорядочить элементы, следующие за ним по убыванию. }
const N=10;
VAR A:ARRAY[1..N ] OF INTEGER;
imax,MAX,i,j, temp:INTEGER;
BEGIN
RANDOMIZE;
FOR I:=1 TO N DO begin
A [ I ] :=RANDOM(150)-50;
WRITE(A [ I ] :5);
end;
MAX:=A [ 1 ] ;
Imax := 1;
FOR I:=2 TO N DO begin
IF A [ I ] >MAX THEN begin
MAX:=A [ I ] ;
Imax := i;
end;
end;
WriteLn;
WriteLn('Max = ', max, ' Imax = ', Imax);
for i:= Imax to N-1 do begin
for j := i+1 to N do begin
if A [ i ] < A [ j ] then begin
temp := a [ i ] ;
a [ i ] := a [ j ] ;
a [ j ] := temp;
end;
end;
end;
for i := 1 to N do begin
write(A [ i ] :4);
end;
end.
Упорядочены будут все элементы после последнего встреченного максимума. Ошибки в Вашей программке исправдены:
const N=10;
VAR A:ARRAY[1..N] OF INTEGER;
imax, temp,i,j,k,MAX:INTEGER;
BEGIN
randomize;
writeln;
FOR I:=1 TO N DO
begin
A:=RANDOM(10);
WRITE(A:5);
end;
MAX:=A[1];
Imax := 1;
FOR I:=2 TO N DO
begin
IF A>MAX THEN
begin
MAX:=A;
Imax := i;
end;
end;
WriteLn;
WriteLn('Max = ', max, ' Imax = ', Imax);
for i:=imax+1 to N-1 do
for j:=i+1 to N do
if a<a[j]>;
a:=a[j];
a[j]:=max;
end;
Writeln;
For i:=1 to N do
write(a:5);
end.
const N=10;
VAR A:ARRAY[1..N] OF INTEGER;
imax, temp,i,j,k,MAX:INTEGER;
BEGIN
randomize;
writeln;
FOR I:=1 TO N DO
begin
A:=RANDOM(10);
WRITE(A:5);
end;
MAX:=A[1];
Imax := 1;
FOR I:=2 TO N DO
begin
IF A>MAX THEN
begin
MAX:=A;
Imax := i;
end;
end;
WriteLn;
WriteLn('Max = ', max, ' Imax = ', Imax);
for i:=imax+1 to N-1 do
for j:=i+1 to N do
if a<a[j]>;
a:=a[j];
a[j]:=max;
end;
Writeln;
For i:=1 to N do
write(a:5);
end.
for i:=1 to 9 do
begin
if a>a[i+1];
temp := a;
a := a[i+1];
a[i+1] := temp;
end;
сортировка массива методом пузырька. Максимальным будет последнее значение массива, а именно a[10].
begin
if a>a[i+1];
temp := a;
a := a[i+1];
a[i+1] := temp;
end;
сортировка массива методом пузырька. Максимальным будет последнее значение массива, а именно a[10].
Похожие вопросы
- Задачи на массив паскаль, помогите пожалуйста
- Паскаль! Помогите пожалуйста разобраться в задачке.
- Программирование на Паскале Помогите, пожалуйста , написать программу на паскале
- Люди, кто шарит в паскале, помогите, пожалуйста.
- Как найти сумму цифр пятизначного числа в турбо паскаль? Помогите, пожалуйста!!!
- паскаль ( помогите пожалуйста
- Те, кто разбирается в программе Паскаль, помогите пожалуйста!
- Задача в паскале. помогите пожалуйста... очень срочно нужно!
- Нужно написать программы в Паскале! Массивы! Срочно! Помогите!
- Delphi - Сортировка массива и вывод его в стринг грид