Найти номер первого символа строки, нарушающего алфавитный порядок - Pascal ABC

Узнай цену своей работы

Формулировка задачи:

Дана строка, содержащая цифры и строчные латинские буквы. Если буквы в строке упорядочены по алфавиту, то вывести 0; в противном случае вывести номер первого символа строки, нарушающего алфавитный порядок.

Решение задачи: «Найти номер первого символа строки, нарушающего алфавитный порядок»

textual
Листинг программы
  1. var i:integer;
  2. s,s2:string;
  3. BEGIN
  4. s2:='';
  5. Readln(s);
  6. For i:=1 to Length(s) do
  7.   IF (ord(s[i])>=ord('a')) and (ord(s[i])<=ord('z')) THEN
  8.   s2:=s2+s[i];
  9.   Writeln(s2);
  10. For i:=1 to Length(s2)-1 do
  11.   IF s2[i]>s2[i+1] THEN break;
  12. IF i<Length(s2)-1 THEN Writeln(i+1)
  13.    ELSE IF s2[Length(s2)]<s2[Length(s2)-1] THEN Writeln (Length(s2))
  14.         ELSE Writeln ('0');
  15. END.

Объяснение кода листинга программы

В данном коде используется язык программирования Pascal ABC. Он предназначен для решения задач, связанных с обработкой текстовых данных. Переменные в данном коде:

  • i: переменная типа integer, которая используется для счетчика символов в строке;
  • s: переменная типа string, которая содержит исходную строку;
  • s2: переменная типа string, которая содержит строку, в которой символы упорядочены по алфавиту. Код начинается с инициализации переменной s2 значением пустой строки. Затем с помощью функции Readln считывается исходная строка s. Далее идет цикл for, который проходит по каждому символу в строке s. Внутри цикла проверяется условие: если символ является буквой верхнего регистра (от 'a' до 'z') и его порядковый номер больше или равен 1, то этот символ добавляется в строку s2. Если же символ меньше следующего символа в строке s2, то цикл прерывается с помощью оператора break. После завершения внутреннего цикла проверяется условие: если в строке s2 есть символы, расположенные не по алфавитному порядку, то выводится номер первого такого символа. Если же все символы в строке s2 расположены по алфавитному порядку, то выводится номер последнего символа. Если в строке s2 есть символы, расположенные не по алфавитному порядку, то выводится номер первого такого символа. Если же все символы в строке s2 расположены по алфавитному порядку, то выводится номер последнего символа. Если в строке s2 есть символы, расположенные не по алфавитному порядку, то выводится номер первого такого символа. Если же все символы в строке s2 расположены по алфавитному порядку, то выводится номер последнего символа. В конце кода выводится значение переменной i, которое представляет собой номер первого символа, нарушающего алфавитный порядок в строке s2. Если все символы в строке s2 расположены по алфавитному порядку, то выводится число 0.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы