Файл: Информатика Щапов Щапова.pdf

Добавлен: 19.10.2018

Просмотров: 12741

Скачиваний: 132

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

66 

Структура программы на языке Pascal 
Программа на языке Pascal состоит из заголовка программы 

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

Структура программы 

Пример 

Заголовок программы 

program Z1; 

Оператор uses 

uses GraphABC; 

Тело

 про

грамм

ы

 (

блок

Описание

 данных

 

1. Раздел описания меток 
(label) 

label 10, 20; 

2. Раздел описания констант 
(const) 

const n=10; 

3. Раздел описания типов 
(type) 

type vector=array[1..n] 
of real; 

4. Раздел описания переменных 
(var) 

var  x, y: real; 

     i, j: integer; 
     a, b: vector; 

5. Раздел описания процедур  
и функций (procedure, 
function) 

procedure Tab; 
......... 

Описание

  

действий

  6. Раздел операторов 

begin 
       оператор 1; 

       оператор 2; 
       ......... 
       оператор N; 
end. 

 

Раздел операторов является основным и присутствует в лю-

бой программе. Раздел uses и разделы описаний (все или часть) 
могут  отсутствовать.  Разделы  const,  type,  var  могут  следо-
вать друг за другом в любом порядке. 

В { } или (* *) записываются комментарии к программе. 

Комментарий не определяет никаких действий программы и яв-
ляется лишь пояснительным текстом. Комментарием также счи-
тается  любая  последовательность  символов  после  символов  // 
и до конца строки. 

 
Операторы ввода/вывода 
Ввод  данных – это  передача  информации  от  внешних  уст-

ройств в оперативную память. Вводятся, как правило, исходные 


background image

67 

данные решаемой задачи. Вывод – обратный процесс, когда дан-
ные  (результаты  решения  задачи)  передаются  из  оперативной 
памяти на внешние устройства. 

 

Оператор ввода имеет следующий формат: 

read(список ввода); 

Список  ввода – это  последовательность  имен  переменных, 

разделенных запятыми. При выполнении этого оператора проис-
ходит  остановка  работы  компьютера,  пользователь  должен  вве-
сти с клавиатуры необходимые значения переменных в том по-
рядке, в каком они записаны в списке ввода, разделяя их пробе-
лами.  При  этом  вводимые  значения  отображаются  на  экране. 
Заканчивается ввод нажатием клавиши ENTER. 

Например, 

read(a,b,c); 

Другой вариант оператора ввода имеет вид 

readln(список ввода); 

Этот  оператор  отличается  тем,  что  после  считывания  по-

следнего значения в списке ввода для одного оператора readln 
данные  для  следующего  оператора  ввода  будут  считываться 
с начала новой строки. 

Оператор вывода имеет следующий формат: 

write(список вывода); 

Список  вывода  представляет  собой  выражения  различных 

типов, разделенные запятыми. 

Например, 

write(25); 

выводится целая константа 

write('Результаты'); 

выводится строковая константа 

write(2*a+1); 

выводится значение выражения 

write('сумма=', s); 

выводится список, состоящий из стро-
ковой  константы  и  значения  перемен-
ной s 

write(a1, '  ',a2, '  ',a3); выводятся значения переменных 


background image

68 

Другая форма оператора вывода 

writeln(список вывода); 

В этом случае после вывода всех значений из списка выво-

да происходит переход на новую строку. Оператор writeln без 
параметров означает переход на новую строку. 

Рекомендуется  ввод  данных  оформлять,  например,  сле-

дующим образом:  

write('введите 

коэффициенты 

квадратного 

уравнения'); 

readln(a,b,c); 
Оператор присваивания имеет следующий вид: 

переменная:=выражение; 

Оператор  присваивания  заменяет  текущее  значение  пере-

менной значением выражения.  

Переменная  и  выражение  должны  быть  одного  типа.  Ис-

ключение составляет случай, когда выражение имеет целый тип, 
а переменная – вещественный. 

Пример. Поменять местами значения переменных a и b (при 

этом используется дополнительная переменная p). 

p:=a;    a:=b;   b:=p; 

Программирование алгоритмов разветвляющейся  

и циклической структуры 

Условный оператор 
В языке Pascal управляющая структура языка, проверяющая 

выполнение  некоторого  условия  и  позволяющая  в  случае  вы-
полнения  или  невыполнения  этого  условия  произвести  ветвле-
ние  алгоритма,  реализуется  с  помощью  условного  оператора, 
полная форма которого следующая: 

if условие then оператор1 else оператор2

Здесь if – если; then – то; else – иначе. Операторы 1 и 2 могут 
быть  как  простыми,  так  и  составными,  представляющими  собой 


background image

69 

определенную  последовательность  операторов.  Составной  опера-
тор следует заключать в операторные скобки из слов begin и end. 

В  качестве  условия  указывается  некоторое  логическое  вы-

ражение.  Если  условие  оказывается  истинным,  то  выполняется 
оператор1, в противном случае выполняется оператор 2. 

Пример вычисления наибольшего (t1) и наименьшего (t2) 

значения из двух чисел a и b: 

if a>b then 
begin 
    t1:=a; t2:=b 
end 
else 
begin 
    t1:=b; t2:=a 
end; 
Краткая форма условного оператора 

if условие then оператор

В этом случае, если условие истинно, выполняется опе-

ратор, в противном случае происходит переход к следующему 
оператору программы. 

 
Операторы цикла 
В языке Pascal циклические алгоритмы могут быть записа-

ны с помощью следующих операторов. 

Цикл с параметром (с шагом +1) 

 

for  параметр:=начальное  значение to конеч-

ное значение do оператор

 

Здесь  for,  to,  do – служебные  слова.  В  начале  выполнения 
цикла  параметру присваивается начальное значение. За-
тем  значение  параметра  цикла  сравнивается  с  конечным 
значением.  Если  параметр  цикла  меньше  или  равен  этому 
значению, то выполняется тело цикла (после чего значение па-


background image

70 

раметра  увеличивается  на  единицу),  в  противном  случае  вы-
полнение цикла заканчивается. 

Если тело цикла – составной оператор, т.е. содержит более 

одного оператора, то оно оформляется с использованием опера-
торных скобок begin...end. 

Цикл с параметром (с шагом –1) 

 

for параметр:=начальное значение downto ко-

нечное значение do оператор

 

В  этом  случае  параметр  цикла  изменяется  по  убыванию, 

т.е.  при  каждом  повторении  цикла  параметр  уменьшает  свое 
значение на единицу. 

 
Цикл с предусловием (цикл-ПОКА)
 

 

while условие do оператор; 

 

Здесь  while  (пока);  do  (делать) – служебные  слова.  Условие 
представляет собой выражение логического типа, а оператор по-
сле do является телом цикла. Если условие истинно, то выпол-
няется  тело  цикла,  в  противном  случае  происходит  выход 
из цикла. 

Для того чтобы цикл не стал бесконечным (не зациклился), 

необходимо наличие в теле цикла оператора, влияющего на зна-
чение логического выражения. 

Если тело цикла – составной оператор, т.е. содержит более 

одного оператора, то оно оформляется с использованием опера-
торных скобок begin...end. 

 
Цикл с постусловием (цикл-ДО) 

 

repeat оператор until условие; 

 

Здесь  repeat  (повторять);  until  (до) – служебные  слова.  Если 
условие  истинно,  то  происходит  выход  из  цикла,  т.е.  оператор 
(тело цикла) выполняется до тех пор, пока условие ложно.