Язык программирования паскаль, созданный Н. Виртом на рубеже 60-70-х годов, получил в настоящее время широкое распространение во всем мире. Трансляторы с паскаля имеются на отечественных ЭВМ многих типов, в том числе на БЭСМ-6 [8] и ЕС ЭВМ [13].
Важной особенностью паскаля, отличающей его от языков программирования, созданных ранее (фортрана, алгола и др.), является последовательное проведение в жизнь идей структурного программирования [12]. Другой существенной особенностью паскаля является концепция структуры данных как одного из фундаментальных понятий, лежащих, наряду с понятием алгоритма, в основе программирования [2].
К настоящему времени на русском языке издано немало книг по паскалю, в основном переводных [2, 3, 4, 5, 8, 10, И]. Среди многочисленных книг, изданных на английском языке, отметим [14], отличающуюся полнотой и точностью изложения материала.
Эти книги ориентированы в основном на достаточно опытного читателя. В них рассматриваются, как правило, вопросы, не связанные с реализацией языка паскаль на ЭВМ конкретных типов. Между тем из опыта известно, что каждая конкретная реализация языка программирования содержит массу особенностей, представляющих трудности в первую очередь для начинающих пользователей ЭВМ.
При написании данной книги мы ставили себе задачу помочь пользователям машин типа БЭСМ-6 и ЕС ЭВМ, начинающим освоение языка паскаль. С этой целью материал книги разбит на дне главы. Первая глава содержит наиболее простые и часто используемые конструкции языка паскаль, доступные пониманию начинающего читателя. Вторая глава содержит более сложный материал, адресованный достаточно опытному читателю.
Мы стремились к тому, чтобы читатель как можно раньше начал самостоятельно составлять программы. Поэтому во многих случаях материал излагается сначала на элементарном уровне (и не в полном объеме). И лишь после того, как читатель "встанет на ноги" и приобретет начальный опыт, ему сообщаются более полные сведения по тому или иному вопросу.
Такая методика изложения материала, а также разбиение книги на две главы ("элементарную" и более сложную) уже применялись нами ранее [9]. Наш опыт преподавания основ программирования в школах Дубны и в Дубненском филиале НИИЯФ МГУ убедил нас в правильности такого способа изложения материала.
В процессе работы над книгой нам пришлось экспериментально проверять- "восприятие" трансляторами на БЭСМ-6 и ЕС ЭВМ тех или иных конструкций языка паскаль. Иногда обнаруживались расхождения между описаниями в [8] и [13] и фактическим положением вещей.
Считаем необходимым обратить внимание читателей на следующее обстоятельство.
Обычно в книгах тексты программ на паскале набираются строчными буквами с выделением ключевых слов полужирным шрифтом [1]. Однако пользователи ЭВМ получают с машины тексты, отпечатанные прописными буквами. Только прописными буквами выдаются тексты программ и на экраны большинства дисплеев. Поэтому в книге все тексты на языке паскаль набраны прописными буквами, более привычными для пользователей ЭВМ. Отметим, что такой способ набора принят и в [10].
Мы понимаем, что для достаточно полного и точного описания особенностей реализации языка паскаль на ЭВМ конкретного типа требуется несколько лет предварительной работы с соответствующим транслятором.
Данную книгу можно рассматривать как один из первых опытов описания языка паскаль для машин типа БЭСМ-6 и ЕС ЭВМ.
Появлению этой книги во многом способствовала Екатерина Ивановна Стечкина, которая много лет возглавляла редакцию, выпускавшую книги по информатике и вычислительной математике.
Выражаем искреннюю благодарность О. В. Благонравовой, Г. А. Косянину и Ю. К. Крюкову за помощь в подготовке примеров и задач, А. А. Корнейчуку и А. В. Гусеву за ценные советы и рекомендации, А. Н. Графовой за помощь в подготовке рукописи к изданию.
Мы будем признательны читателям, которые пришлют свои замечания и предложения.