Найти позицию букв в алфавите и букву по ее номеру | Язык Паскаль

Найти позицию букв в алфавите и букву по ее номеру

Первая часть.
Вводятся две строчные (малые) английские буквы. Определить номера этих букв в алфавите, а также количество символов между ними.

Вторая часть.
Определить букву по ее позиции (номеру) в алфавите. Номер вводится с клавиатуры.

Пример выполнения программы

Первая буква: b
Вторая буква: f
Позиция первой буквы: 2
Позиция второй буквы: 6
Количество букв между ними: 3

Позиция буквы в алфавите: 26
Это буква - z

Исходный код программы на языке Паскаль

var
    a, b: char;
    an, bn, n: byte;

begin
    write('Первая буква: '); 
    readln(a);
    write('Вторая буква: '); 
    readln(b);

    an := ord(a);
    bn := ord(b);

    writeln('Позиция первой буквы: ', an - ord('a') + 1);
    writeln('Позиция второй буквы: ', bn - ord('a') + 1);

    n := abs(bn - an) - 1;
    writeln('Количество букв между ними: ', n);

    writeln;

    write('Позиция буквы в алфавите: '); 
    readln(n);

    n := n + ord('a') - 1;
    writeln('Это буква - ', chr(n));
end.

Позиция буквы в алфавите (номер буквы в алфавите) определяется ее "смещением" относительно первой буквы алфавита. Если знать коды первой буквы алфавита (символа 'a') и заданной, то разность их кодов покажет, на сколько позиций они отстоят друг от друга.

В языке программирования Pascal код буквы по таблице кодов символов ASCII определяется с помощью функции ord(), которой в качестве значения передается символ.

Для обратного действия, то есть определения буквы, стоящей в определенном месте алфавита, надо к позиции буквы прибавить код первой буквы алфавита. После этого получить искомую букву по ее коду. Это делается с помощью функции chr(), которой передается число-код символа по таблице ASCII.