Найти позицию в алфавите двух английских букв и количество символов между ними.
Определить букву по ее позиции в алфавите.
Позиция буквы в алфавите определяется ее "смещением" относительно первой буквы алфавита. Если знать коды первой буквы и искомой, то разность их кодов покажет, на сколько позиций они отстоят друг от друга. В языке программирования Pascal код-номер буквы по таблице кодов символов ASCII определяется с помощью функции ord(), которой в качестве значения передается символ.
Для обратного действия - определения буквы по ее известной позиции в алфавите - надо к позиции буквы прибавить код первой буквы алфавита. После этого получить искомую букву по ее коду. Это делается с помощью функции chr(), которой передается число-код символа по таблице ASCII.
var a,b: char; an, bn, n: byte; begin write('Буква 1: '); readln(a); write('Буква 2: '); readln(b); an := ord(a); bn := ord(b); writeln('Позиция 1: ', an-ord('a')+1); writeln('Позиция 2: ', bn-ord('a')+1); n := abs(bn-an)-1; writeln('Количество букв между ними: ', n); writeln; write('Позиция буквы в алфвите: '); readln(n); n := n+ord('a')-1; writeln('Это буква - ', chr(n)); end.
Пример выполнения программы:
Буква 1: w Буква 2: z Позиция 1: 23 Позиция 2: 26 Количество букв между ними: 2 Позиция буквы в алфвите: 10 Это буква - j
Комментарии
Найти позицию букв в алфавите и букву по ее номеру
Я считаю код программы не верный. Не учтены все условия. Например: ord('a'); - выдаст не 1 а 97, а: ord('A') = 65.
Я считаю код программы не верный.
это же аский-код ,если не ошибаюсь то там не первый стоит