
Срочно!!! Составить программу, которая сортирует четыре числа по порядку возрастания и убыванию.
Несколько вариантов, пожалуйста. Через if... Then 

Ответы на вопрос

Ответ:
вот программа сортирующая n чисел
uses crt;
const nmax=100;
var a:array[1..nmax] of real;
n,i,j:integer;
x:real;
begin
clrscr;
randomize;
repeat
write('n=');
readln(n);
until n in [1..nmax];
writeln('Исходный массив: ');
for i:=1 to n do
begin
a:=10*random;
write(a:5:2);
end;
writeln;
for i:=1 to n-1 do
for j:=i+1 to n do
if a<a[j]>;
a:=a[j];
a[j]:=x;
end;
writeln('Сортировка: ');
for i:=1 to n do
write(a:5:2);
readln
end.
Объяснение:



Добро пожаловать! Ниже приведены несколько вариантов программ на языке программирования, используя конструкцию "if...then" для сортировки четырех чисел по возрастанию и убыванию:
Вариант 1: Используя вложенные условия (if...then...else):
pascalprogram SortNumbers; var a, b, c, d: Integer; begin WriteLn('Введите четыре числа:'); ReadLn(a, b, c, d); WriteLn('По возрастанию:'); if a <= b then begin if a <= c then begin if a <= d then Write(a, ' '); if c <= d then Write(c, ' '); Write(d, ' '); end else begin if c <= d then Write(c, ' '); Write(d, ' '); Write(a, ' '); end; Write(b, ' '); end else begin if b <= c then begin if b <= d then Write(b, ' '); if c <= d then Write(c, ' '); Write(d, ' '); end else begin if c <= d then Write(c, ' '); Write(d, ' '); Write(b, ' '); end; Write(a, ' '); end; WriteLn; WriteLn('По убыванию:'); if a >= b then begin if a >= c then begin if a >= d then Write(a, ' '); if c >= d then Write(c, ' '); Write(d, ' '); end else begin if c >= d then Write(c, ' '); Write(d, ' '); Write(a, ' '); end; Write(b, ' '); end else begin if b >= c then begin if b >= d then Write(b, ' '); if c >= d then Write(c, ' '); Write(d, ' '); end else begin if c >= d then Write(c, ' '); Write(d, ' '); Write(b, ' '); end; Write(a, ' '); end; ReadLn; end.
Вариант 2: Используя процедуры:
pascalprogram SortNumbers; var a, b, c, d: Integer; procedure SortAscending(var x, y: Integer); var temp: Integer; begin if x > y then begin temp := x; x := y; y := temp; end; end; procedure SortDescending(var x, y: Integer); var temp: Integer; begin if x < y then begin temp := x; x := y; y := temp; end; end; begin WriteLn('Введите четыре числа:'); ReadLn(a, b, c, d); WriteLn('По возрастанию:'); SortAscending(a, b); SortAscending(a, c); SortAscending(a, d); SortAscending(b, c); SortAscending(b, d); SortAscending(c, d); WriteLn(a, ' ', b, ' ', c, ' ', d); WriteLn('По убыванию:'); SortDescending(a, b); SortDescending(a, c); SortDescending(a, d); SortDescending(b, c); SortDescending(b, d); SortDescending(c, d); WriteLn(a, ' ', b, ' ', c, ' ', d); ReadLn; end.
Обратите внимание, что это примеры на языке программирования Pascal. Вы можете использовать подобный подход и в других языках программирования, просто заменив синтаксис Pascal на соответствующий синтаксис выбранного вами языка.


Похожие вопросы







Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili