Примеры задач

Одномерные массивы


Пусть дан текст, за которым следует точка. Определить, упорядочены ли буквы по алфавиту.

Методика решения

Используемые переменные:
а – массив;
i – номер элемента массива;
s – символ;
flag – логическая переменная.

Для начала считываем с экрана текст посимвольно, пока считанный символ не равен «.», и заносим символы текста в массив.
Затем, по условию задачи, необходимо проверить, упорядочены ли буквы в массиве по алфавиту. Для этого понадобится логическая переменная flag . Изначально её значение равно false . Мы перебираем с помощью цикла все буквы, находящиеся в массиве, до предпоследней и сравниваем каждый элемент со следующим за ним элементом. Если элемент оказался больше следующего, то буквы следуют не по алфавиту. В этом случае переменной flag присваиваем значение true .
После выполнения цикла выводим на экран результат. Если логическая переменная имеет значение true , то буквы не упорядочены по алфавиту, в противном случае – упорядочены.

Листинг программы

Program ex2_4;
Uses crt;
const n=20;
Type t=Array[1..n] Of Char;
Var s:char;a:t;i:Integer;Flag:Boolean;
Begin clrscr;
Writeln('Введите текст до точки ');
i:=1;
repeat
Read(s);
a[i]:=s;
inc(i);
until s='.';
i:=0;
While a[i+2]<>'.' Do
Begin
Inc(i);
If a[i]>=a[i+1] Then Flag:=True;
end;
{Если истено то текст неупорядоченный}
If Flag=True Then Writeln('Текст введен не в алфавитном порядке') Else
Writeln('Текст введен в алфавитном порядке');
Readkey;
End.

Запустить программу






Назад