Совсем недавно мы прошли тип данных Char, теперь я предлагаю разобрать простейшую программу с использованием символьного типа данных. Итак, задача этой программы - выводить английский алфавит. Решение этой задачи на Паскаль довольно просто, как и вставлять деревянные окна.
В основе этой программы лежит цикл WHILE. Переменной i присваиваем первую букву латинского алфавита, затем входим в цикл и выполняем действия, находящиеся внутри данного цикла, до тех пор, пока не будет выполнено условие. Условий может быть несколько. Латинский алфавит оканчивается буквой z, а так как в цикле while нужно указывать ложное условие, то нужно сделать значением ложного условия символ, идущий после z в таблице ASCII. Это удобно сделать с помощью функции succ, которая возвращает значение следующей буквы.
var i:char; //Описание переменной
Begin //Начало программы
i:='a';//Перва буква алфавита
while i<>succ('z') do begin //Пока i не равно след. после z, то выполнять
write (i,' '); //Вывод буквы и пробела
i:=succ (i); //Счётчику присваиваем след. букву
end; //Конец цикла
end. //Конец программы
Внутри цикла выводим буку-счётчик и пробел, чтобы конечный результат был наглядней, а также увеличиваем значение счётчика, то есть присваиваем его значению следующей буквы. Вместо функции succ можно указывать числовое значение символа, идущего после z. Числовое значение указывается через специальный символ - решётку.
var i:char; //Описание переменной
Begin //Начало программы
i:='a';//Перва буква алфавита
while i<>#123 do begin //Пока i не равно след. после z, то выполнять
write (i,' '); //Вывод буквы и пробела
i:=succ (i); //Счётчику присваиваем след. букву
end; //Конец цикла
end. //Конец программы
Скачать исходник: alphabet.pas
Разобранный выше пример программы на паскаль, которая выводит английский алфавит, можно осуществить и через цикл FOR. Так как мы знаем начальное и конечное значение переменной (символ 'a' и символ 'z'), то очень легко вывести латинский алфавит через цикл с параметром - FOR. Значение счётчика будет от буквы a до буквы z.
var i:char; //Описание переменной
Begin //Начало программы
for i:= 'a' to 'z' do
write (i,' '); //Вывод буквы и пробела
end. //Конец программы
Скачать исходник: alphabet.pas
При использовании цикла FOR программа становится намного короче, поэтому использовать цикл с параметров в данной программе рациональнее. Вместо самих символов при указании значения параметра можно использовать номера данных символов в таблице ASCII (#97 - a и #122-z). Так как цикл Repeat Until похож на цикл While, мы его не рассматриваем.