Написать программу на школьном алгоротмическом языке для задачи "заварить чай" Алг (имя алгоритма) Дано/(условия применимости алгоритма) Надо/(цель выполнение алгоритма |Нач |тело алгоритма последовательност команд |Кон
Попробуем сделать сортировку букв латинского алфавита.
const n = 20; var a: array[1..n] of char; i, j: integer; t: char;
begin Randomize; Writeln('Исходный массив'); for i := 1 to n do begin a[i] := Chr(random(26)+Ord('A')); Write(a[i],' ') end; Writeln; for i := 1 to n-1 do for j := 1 to n-i do if a[j] > a[j+1] then begin t := a[j]; a[j] := a[j+1]; a[j+1] := t end; Writeln('Отсортированный по возрастанию массив'); for i := 1 to n do Write(a[i],' '); Writeln end.
Тестовое решение: Исходный массив G Z L H X A R E C F G X O T C L N U D L Отсортированный по возрастанию массив A C C D E F G G H L L L N O R T U X X Z
program p1;
uses Crt;
var
i, n, m, min: integer;
begin
ClrScr;
Write('Длина последовательности: ');
Readln(n);
Read(min);
for i := 2 to n do
begin
Read(m);
if m < min then
min := m;
end;
Writeln(min);
ReadKey;
end.
program p2;
uses Crt;
var
i, n, m, max, k: integer;
begin
ClrScr;
Write('Длина последовательности: ');
Readln(n);
Read(max);
k := 1;
for i := 2 to n do
begin
Read(m);
if m > max then
begin
max := m;
k := 1;
end
else if m = max then
k := k + 1;
end;
Writeln(k);
ReadKey;
end.
const
n = 20;
var
a: array[1..n] of char;
i, j: integer;
t: char;
begin
Randomize;
Writeln('Исходный массив');
for i := 1 to n do
begin
a[i] := Chr(random(26)+Ord('A'));
Write(a[i],' ')
end;
Writeln;
for i := 1 to n-1 do
for j := 1 to n-i do
if a[j] > a[j+1] then
begin t := a[j]; a[j] := a[j+1]; a[j+1] := t end;
Writeln('Отсортированный по возрастанию массив');
for i := 1 to n do Write(a[i],' ');
Writeln
end.
Тестовое решение:
Исходный массив
G Z L H X A R E C F G X O T C L N U D L
Отсортированный по возрастанию массив
A C C D E F G G H L L L N O R T U X X Z