Как ч понял сортировка по неубыванию это сортировка по возрастанию. То есть легкие элементы всплывают наверх, а тяжелые перемещаются вниз:
//Pascal const m = 1000 var arr: array[1..m] of integer; n,i, j, k: integer; begin readln(n); write ('Исходный массив: '); for i := 1 to n do begin readln(arr[i]); end; //сортировка методом пузырька for i := 1 to n-1 do for j := 1 to n-i do if arr[j] > arr[j+1] then begin k := arr[j]; arr[j] := arr[j+1]; arr[j+1] := k end;
write ('Отсортированный массив: '); for i := 1 to n do write (arr[i]:4); end.
Алгоритм сортировки на классическом языке программирования С
# define SWAP(A,B) {A=A^B;B=A^B;A=A^B;} void bubblesort(int A[], int n) { int i, j; for(i = n-1 ; i > 0 ; i--) { for(j = 0 ; j < i ; j++) { if( A[j] > A[j+1] ) SWAP(A[j],A[j+1]); } } }
1. var x,y:integer; begin write('x = '); readln(x); if x>0 then y:=1 else if x=0 then y:=0 else y:=-1; writeln('y = ',y); end.
Пример: x = -5 y = -1
2. var a,b,c,x1,x2,d:real; begin writeln('Введите a, b, c:'); readln(a,b,c); d:=b*b-4*a*c; if d>0 then begin x1:=(-b+sqrt(d))/(2*a); x2:=(-b-sqrt(d))/(2*a); writeln('x1 = ',x1,' x2 = ',x2); end else if d=0 then begin x1:=-b/(2*a); writeln('x = ',x1); end else writeln('Корней нет'); end.
Пример: Введите a, b, c: 2 5 -3 x1 = 0.5 x2 = -3
3. var a,b,c:real; begin writeln('Введите a, b, c:'); readln(a,b,c); if (a<=b)and(b<=c) then begin b:=a; c:=a; end else begin a:=-a; b:=-b; c:=-c; end; writeln('a = ',a,' b = ',b,' c = ',c); end.
Пример 1: Введите a, b, c: 2 5 9 a = 2 b = 2 c = 2
Пример 2: Введите a, b, c: 2 9 5 a = -2 b = -9 c = -5
//Pascal
const m = 1000
var
arr: array[1..m] of integer;
n,i, j, k: integer;
begin
readln(n);
write ('Исходный массив: ');
for i := 1 to n do begin
readln(arr[i]);
end;
//сортировка методом пузырька
for i := 1 to n-1 do
for j := 1 to n-i do
if arr[j] > arr[j+1] then begin
k := arr[j];
arr[j] := arr[j+1];
arr[j+1] := k
end;
write ('Отсортированный массив: ');
for i := 1 to n do
write (arr[i]:4);
end.
Алгоритм сортировки на классическом языке программирования С
# define SWAP(A,B) {A=A^B;B=A^B;A=A^B;}
void bubblesort(int A[], int n)
{
int i, j;
for(i = n-1 ; i > 0 ; i--)
{ for(j = 0 ; j < i ; j++)
{
if( A[j] > A[j+1] ) SWAP(A[j],A[j+1]);
}
}
}
var x,y:integer;
begin
write('x = ');
readln(x);
if x>0
then y:=1
else if x=0 then y:=0 else y:=-1;
writeln('y = ',y);
end.
Пример:
x = -5
y = -1
2.
var a,b,c,x1,x2,d:real;
begin
writeln('Введите a, b, c:');
readln(a,b,c);
d:=b*b-4*a*c;
if d>0
then begin
x1:=(-b+sqrt(d))/(2*a);
x2:=(-b-sqrt(d))/(2*a);
writeln('x1 = ',x1,' x2 = ',x2);
end
else if d=0 then begin
x1:=-b/(2*a);
writeln('x = ',x1);
end
else writeln('Корней нет');
end.
Пример:
Введите a, b, c:
2 5 -3
x1 = 0.5 x2 = -3
3.
var a,b,c:real;
begin
writeln('Введите a, b, c:');
readln(a,b,c);
if (a<=b)and(b<=c)
then begin
b:=a; c:=a;
end
else begin
a:=-a; b:=-b; c:=-c;
end;
writeln('a = ',a,' b = ',b,' c = ',c);
end.
Пример 1:
Введите a, b, c:
2 5 9
a = 2 b = 2 c = 2
Пример 2:
Введите a, b, c:
2 9 5
a = -2 b = -9 c = -5