Найти номер первого символа строки, нарушающего алфавитный порядок - Pascal ABC
Формулировка задачи:
Дана строка, содержащая цифры и строчные латинские буквы. Если буквы в строке упорядочены по алфавиту, то вывести 0; в противном случае вывести номер первого символа строки, нарушающего алфавитный порядок.
Решение задачи: «Найти номер первого символа строки, нарушающего алфавитный порядок»
textual
Листинг программы
var i:integer; s,s2:string; BEGIN s2:=''; Readln(s); For i:=1 to Length(s) do IF (ord(s[i])>=ord('a')) and (ord(s[i])<=ord('z')) THEN s2:=s2+s[i]; Writeln(s2); For i:=1 to Length(s2)-1 do IF s2[i]>s2[i+1] THEN break; IF i<Length(s2)-1 THEN Writeln(i+1) ELSE IF s2[Length(s2)]<s2[Length(s2)-1] THEN Writeln (Length(s2)) ELSE Writeln ('0'); 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.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д