- •2.1. Первое знакомство с языком Паскаль
- •Упражнения
- •2.2. Некоторые сведения о системе ТурбоПаскаль (тп)
- •2.3. Элементы языка ТурбоПаскаль
- •2.4. Концепция типов данных
- •Типы данных ТурбоПаскаля
- •Зарезервированные константы Турбо Паскаля
- •2.5. Арифметические операции, функции, выражения. Оператор присваивания
- •Бинарные операции Паскаля
- •Стандартные математические функции ТурбоПаскаля
- •Упражнения
- •2.6. Ввод данных с клавиатуры и вывод на экран
- •Форматы процедуры Write
- •2.7. Управление символьным выводом на экран (модуль crt)
- •Упражнения
- •2.8. Логические величины, операции, выражения
- •Результаты выполнения логических операций
- •2.9. Функции, связывающие различные типы данных
- •Стандартные функции, связывающие различные типы данных
- •Упражнения
Министерство образования и науки Российской Федерации Калмыцкий филиал ФГБОУИ ВО «Московский государственный гуманитарно-экономический университет» |
Сборник лекций |
по дисциплине Основы программирования» для специальности 09.02.03 «Программирование в компьютерных системах базовой подготовки
Содержание
ГЛАВА 2 ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ ПАСКАЛЬ
Часть 1. Основные команды и операторы Паскаль 2.1. Первое знакомство с языком Паскаль 2.2. Некоторые сведения о системе ТурбоПаскаль 2.3. Элементы языка ТурбоПаскаль 2.4. Концепция типов данных 2.5. Арифметические операции, функции, выражения. Оператор присваивания 2.6. Ввод данных с клавиатуры и вывод на экран 2.7. Управление символьным выводом на экран 2.8. Логические величины, операции, выражения 2.9. Функции, связывающие различные типы данных
|
|
|
|
2015г
|
2.1. Первое знакомство с языком Паскаль
План:
Структура программы на языке Паскаль.
Синтаксис программы
Общий обзор операторов: ввод, вывод, оператор присваивания, условие, цикл.
Знаки отношений: больше, меньше, равно и тд.
Упражнения
Структура программы на языке Паскаль. По определению стандартного языка Паскаль программа состоит из заголовка и тела (блока), в конце которого следует точка — признак конца программы. В свою очередь, блок содержит разделы описаний и раздел операторов:
Program <имя программы>;
Label <раздел меток>;
Const <раздел констант>;
Type <раздел типов>;
Var <раздел переменных>;
Procedure (Function) <раздел подпрограмм>;
Begin
<раздел операторов>;
End.
Раздел операторов имеется в любой программе и является основным. Разделы описаний могут не все содержаться в каждой программе.
В ТурбоПаскале, в отличие от стандартного языка, возможно:
• отсутствие заголовка программы;
• следование разделов Const, Type, Var, Label друг за другом в любом порядке в разделе описаний и сколько угодно раз.
Примеры программ. Как уже говорилось, язык Паскаль разрабатывался Н.Виртом как учебный язык. Основной принцип, заложенный в нем,— это поддержка структурной методики программирования. На этом же принципе основывается псевдокод, который здесь будем называть Алгоритмическим языком (АЯ). По сути расхождение между АЯ и языком Паскаль заключается в следующем: АЯ — русскоязычный, Паскаль— англоязычный; синтаксис языка Паскаль определен строго и однозначно, а синтаксис АЯ - сравнительно свободно.
Запись программы на языке Паскаль похожа на английский перевод алгоритма, записанного на алгоритмическом языке. Сравните алгоритм деления простых дробей, записанный на АЯ, с соответствующей программой на Паскале.
Здесь
учтено следующее математическое
равенство:
Заголовок программы начинается со слова Program (программа), за которым следует произвольное имя, придуманное программистом (Division — деление). Раздел описания переменных начинается со слова Var (variables — переменные), за которым следует список переменных. Тип указывается после двоеточия словом Integer (целый). Начало и конец раздела операторов программы отмечаются словами Begin (начало) и End (конец). В конце программы обязательно ставится точка.
Ввод исходных данных с клавиатуры производится с помощью процедуры ReadLn (read line — считывать строку). На клавиатуре набирают четыре числа, отделяемые друг от друга пробелами, которые отражаются строкой на экране дисплея, и нажимают клавишу ввода.
Операторы присваивания в Паскале записываются так же, как в АЯ. Знак умножения обозначается звездочкой (*).
Вывод результатов на экран дисплея производится с помощью процедуры WriteLn (write line — писать в строку), которая выводит в строку два целых числа тип. После этого курсор на экране переходит в начало следующей свободной строки, и работа программы завершается.
Необходимо строго соблюдать правила правописания — синтаксис программы. В частности, в Паскале однозначно определено назначение знаков пунктуации:
точка с запятой (;) ставится в конце заголовка программы, в конце раздела описания переменных, после каждого оператора. Перед словом End точку с запятой можно не ставить;
запятая (,) является разделителем элементов во всевозможных списках (списке переменных в разделе описания, списке вводимых и выводимых величин).
Строгий синтаксис в языке программирования необходим, прежде всего, для транслятора. Транслятор — это программа, которая исполняется формально. Если, допустим, разделителем в списке переменных должна быть запятая, то любой другой знак в ней будет восприниматься как ошибка. Если точка с запятой является разделителем операторов, то транслятор в качестве оператора воспринимает всю часть текста программы от одной точки с запятой до другой. Следовательно, если не поставить точку с запятой между какими-то двумя операторами, транслятор будет принимать их за один, т.е. неизбежна ошибка.
Основное назначение синтаксических правил — это придание однозначного смысла языковым конструкциям. Если какая-то конструкция может трактоваться двусмысленно, значит, в ней есть ошибка. Поэтому лучше не полагаться на интуицию, а выучить правила языка.
Далее будет дано строгое описание синтаксических правил Паскаля, а пока для получения первоначального представления о языке обратимся еще к нескольким примерам программирования несложных алгоритмов.
«Оттранслируем» алгоритм вычисления факториала (N!) на языке Паскаль:
Из этого примера, во-первых, видно, как записывается на Паскале оператор цикла с предусловием (цикл «Пока»):
While <условие выполнения> Do <тело цикла>
While — пока, Do — делать. Если тело цикла содержит последовательность операторов, то говорят, что оно образует составной оператор, в начале и конце которого надо писать Begin и End. Служебные слова Begin и End часто называют операторными скобками, объединяющими несколько операторов в один составной. Если же тело цикла — один оператор (не составной), то операторных скобок не требуется. Тогда транслятор считает, что тело цикла заканчивается на ближайшем знаке «;».
Во-вторых, из примера видно, что в Паскале нет специальных слов для обозначения начала цикла (нц) и конца цикла (кц). На все случаи есть служебные слова Begin и End.
Рассмотрим еще один пример программы решения квадратного уравнения:
В этой программе по сравнению с приведенными ранее, появилось много новых элементов. Имя вещественного типа данных в Паскале — Real.
Цикл с постусловием (цикл «До») программируется оператором
Repeat <тело цикла> Until <условие окончания>
Repeat — повторять, Until — до. Тело цикла может представлять собой как одиночный, так и составной оператор, однако употребления слов Begin и End не требуется, поскольку слова Repeat и Until сами выполняют роль операторных скобок.
Знак ≠ (не равно) в Паскале имеет обозначение < >, а знак ≥ (больше или равно) обозначается >=.
Правила записи арифметических выражений будут подробно рассмотрены немного позже. Используемая в формулах вычисления корней стандартная функция квадратного корня, в Паскале записывается в виде sqrt (x). Порядок выполнения операций в выражении определяется скобками и старшинством операций. Старшинство операций определяется так же, как в алгебре. Операции одинаковые по старшинству выполняются в порядке их записи (слева направо).
Ветление в Паскале программируется с помощью условного оператора, имеющего следующую форму:
if <условие> Then <oператор 1> Else <оператор 2>
If если, Then — то, Else — иначе. Операторы 1 и 2 могут быть как одиночными, так и составными. Составной оператор следует заключать в операторные скобки Begin и End.
Так же, как и в алгоритмическом языке, возможно использование неполной формы условного оператора:
if <условие> Then <оператор>
Характерной чертой данной прораммы является использование в тексте комментариев. Комментарий — это любая последованость символов, заключенных в фигурные скобки {...}. Можно также использовать в качестве ограничителей комментариев круглые скобки со звездочками (*...*). Комментарий не определяет никакиx действий программы, а является лишь пояснительным текстом. Он может даваться в любом месте программы, где можно поставить пробел. Программист пишет комментарии не для компьютера, а для себя, придавая тексту программы большую ясность.
Хорошо откомментированные программы называют самодокументированными. В некоторых программах объем комментариев превышает объем вычислительных операторов. Удачное использование комментариев— признак хорошего стиля программирования.
Для выполнения программы на ЭВМ ее следует ввести в память, оттранслировать и исполнить. Для этого на компьютере должны иметься специальные средства программного обеспечения, которые на ПК составляют систему ТурбоПаскаль.
