СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до 10.05.2025

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Структура программы и типы данных в Pascal

Категория: Информатика

Нажмите, чтобы узнать подробности

Язык программирования Pascal в своей первоначальной версии был разработан в 70-х годах 20 века Никлаусом Виртом. Язык назван в честь знаменитого французского ученого Блеза Паскаля (1623-1662), сконструировавшего в 1642 году первую в мире механическую счетную машину, которая умела складывать и вычитать.

Просмотр содержимого документа
«Структура программы и типы данных в Pascal»

Структура программы и типы данных в Pascal


ПОНЯТЬ


Язык программирования Pascal в своей первоначальной версии был разработан в 70-х годах 20 века Никлаусом Виртом. Язык назван в честь знаменитого французского ученого Блеза Паскаля (1623-1662), сконструировавшего в 1642 году первую в мире механическую счетную машину, которая умела складывать и вычитать. Первоначально ЯП Pascal был задуман как хорошо структурированный язык для обучения программированию, но очень быстро перерос в универсальный, очень мощный язык.

Каждый язык программирования имеет свои правила и особенности. Основными понятиями ЯП Pascal являются «переменная» и «процедура».

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

Процедура – это некоторое завершенное действие, имеющее в языке определенное обозначение. Обозначение процедуры вместе с параметрами, над которыми будут производиться действия, называется оператором языка. Из операторов и составляется программа.

Программа на ЯП Pascal состоит из трёх частей: заголовка, описательной части, исполнительной части.

Заголовок включает в себя ключевое слово Program, название программы и указание на используемые средства ввода/вывода. В современных версиях заголовок программы не является обязательным, то есть его можно не включать в программу.

Описательная часть предназначена для описания всех используемых в программе констант, переменных, меток, процедур, функций, указателей, типов и т.п.

Необходимость этой части вытекает из того, что целые числа, вещественные числа, символы текста, логические значения «истина» и «ложь» кодируются по-разному для хранения в памяти компьютера. Обрабатываются двоичные коды тоже по-разному, поскольку для данных разного типа определены различные допустимые операции. Например, нет смысла умножать или делить символы текста. Поэтому перед началом программы во многих ЯП надо в явном виде указать типы всех используемых в программе переменных. Это позволяет: с одной стороны, сообщить компьютеру, сколько ячеек памяти отвести под те или иные данные и закодировать их соответствующим образом, с другой стороны – автоматизировать проверку, соответствуют ли выполняемые над переменными операции указанному типу данных.

Пример

Пусть переменные a, b, c определены как переменные типа целые числа, переменные r, q – как символы, а w – как переменная логического типа. Тогда операции c:=a+b; и w:=rq; будут допустимы, а операции c:=a/b; w:=r+q; недопустимы в ЯП Pascal. И если такие операции встретятся в программе, то ещё до выполнения программы транслятор ЯП (транслятор проверяет правильность написания программы и переводит её в систему команд, понятную процессору) сообщит программисту, что в программе есть ошибки и их нужно устранить.


Типы данных в ЯП Pascal делятся на простые и составные. Среди простых типов данных особое значение имеют стандартные типы, которые являются базовыми для всех остальных.

Переменные стандартных типов данных – это переменные, которые могут принимать значения вещественных чисел, целых чисел, целых чисел без знака, символов, логических значений.

Тип real – вещественные числа. Значения этого типа занимают 4 или 8 байт (в разных версиях языка). В последнем случае они содержат 15-16 значащих цифр и по модулю не могут превосходить величины 1.7∙10308.

Константы и переменные типа real можно записывать как в форме с фиксированной точкой, так и в экспоненциальной форме

Пример

С фиксированной точкой: +1.7; -0.013; -1234,56.

В экспоненциальной форме: -2.5e+3 = -2500; 1.4e-1 = 0.14; 1.0е-6 = 0.000001.

Для переменных типа real допустимы арифметические операции и операции отношений: + (сложение), - (вычитание), * (умножение), / (деление), = (равно), (больше), = (не меньше), (не равно).

Дискретные (порядковые) типы:

Тип integer – целые числа. Значения этого типа занимают 2 или 4 байта и находятся в диапазоне либо [-32768; +32767], либо [-2147483648; +2147483647].

Тип byte – целое число без знака. Значения этого типа занимают 1 байт и находятся в диапазоне [0; 255].

Для целых чисел допустимы арифметические операции и операции отношений: + (сложение), - (вычитание), * (умножение), div (деление нацело), mod (остаток от деления), =, , =, .

Тип char - символьный. Значения этого типа занимают 1 байт и представляют собой символы в таблице кодировки.

Для символов допустимы операции отношений: =, , =, .

Тип boolean – логический. Переменные и константы логического типа занимают 1 байт и принимают одно из двух значений True (истина) и False (ложь).

Для переменных и выражений логического типа допустимы логические операции: not (отрицание), and (и – конъюнкция), or (или – дизъюнкция), xor (исключающее или - строгая дизъюнкция).

Кроме стандартных типов данных можно использовать перечислимый и интервальный типы.

Перечислимый тип определяется явным перечислением упорядоченного набора значений:

Пример

type Season = (Winter,Spring,Summer,Autumn);

DayOfWeek = (Mon,Tue,Wed,Thi,Thr,Sat,Sun);

Интервальный тип представляет собой подмножество значений целого, символьного или перечислимого типа и описывается в виде a..b, где a - нижняя, b - верхняя граница интервального типа.

Пример

var a: 1..10;
  c: 'a'..'z';
  d: Mon..Thr; 

Составные типы данных, как видно из названия, составляются из простых.

Тип array – массив. Массив представляет собой набор элементов одного типа, каждый из которых имеет свой номер, называемый индексом. Индексов может быть несколько, тогда массив называется многомерным.

Описание массива задаётся следующим образом:

array [тип индекса1, ..., тип индексаN] of базовый тип

Чаще всего тип индекса представляет собой интервальный тип в виде a..b, где a и b - константные выражения целого, символьного или перечислимого типа.

Пример

var a1,a2: array [1..10] of integer;
  b: array ['a'..'z'] of string;
  c: array [2000..2006, 1..12] of real;

Базовый тип может быть любым.

Тип string – строковый тип. Строки в Pascal – это последовательность не более чем из 255 символов. При описании var S: string; под переменную S отводится 256 байт, при этом в нулевом байте хранится длина строки. По сути строка – это массив символов.

Тип record - запись. Запись представляет собой набор элементов разных типов, каждый из которых имеет свое имя и называется полем записи. Описание записи задаётся следующим образом:

record список полей1: тип1; ... список полейN: типN; end:

Пример

Var Date : record
    Day: 1..31;
    Month: (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec);
    Year: Integer;
  end;

Кроме того, есть типы set – множество, file – файл, object –объект и другие.


Для описания переменных в описательной части программы в ЯП Pascal используется служебное слово var (от англ. variable – переменная), после которого указываются имена переменных и через двоеточие тип данных.

Пример

var a, b, c : integer; {переменные целого типа}

x, y, z : real; {переменные вещественного типа}

r, q : char; {переменные символьного типа }

w : boolean; {переменные логического типа }

Для определения констант в описательной части программы используется служебное слово const, после которого указываются имена констант и их значения, которые не могут быть изменены в процессе выполнения программы.

Пример

const G=9,8; N=100; R=’Информатика’;

Существуют специальные служебные слова для описания функций (function), процедур (procedure), типов (type), меток (label). По мере необходимости Вы познакомитесь с ними.

Исполнительная часть программы – это и есть реализация алгоритма средствами языка программирования.

Начинается она со служебного слова begin и заканчивается end. .

Все операторы отделяются друг от друга точкой с запятой «;».

Служебные слова begin и end; используются также и как операторные скобки в тех случаях, когда по правилам языка может стоять только один оператор, а нужно выполнить несколько действий. Несколько операторов, заключенных в операторные скобки считаются одним составным оператором.

То есть end с точкой – это признак конца программы, end с точкой с запятой – признак конца составного оператора.

Пояснительные комментарии к программе можно разместить в любом месте программы, заключив их в фигурные скобки: {комментарий}, или в круглые скобки со звёздочкой: (*комментарий*).


Иногда при решении задачи нужно использовать какую-либо стандартную подпрограмму. Для подключения конкретной библиотеки стандартных подпрограмм перед программой нужно указать служебное слово uses и далее имя библиотеки.

Пример

Uses CRT; позволяет использовать такие подпрограммы, как очистка рабочего окна, использование датчика случайных чисел, размещение информации в окне результатов. управление шрифтом при выводе результатов и другое.

Uses Graph; позволяет подключить библиотеку подпрограмм работы с графикой.



ЗНАТЬ


Pascal относится к процедурным языкам программирования.

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

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

Структура программы на языке Pascal:

заголовок (не обязательно): Program имя программы (параметры);

подключение библиотек: Uses имя библиотеки;

описательная часть: Const имя = значение; {определение констант}

Var имя : тип; {описание переменных}

исполнительная часть: begin {начало}

оператор1;

операторN;

end.

Размещение строк программы на листе может быть произвольным. Обычно не различаются прописные и строчные буквы в обозначении операторов и именах переменных и констант.




УМЕТЬ


Дан фрагмент программы. По формальным признакам определите, какие правила синтаксиса нарушены.



Определите, какие из операций недопустимы для переменных указанных типов.




Скачать

Рекомендуем курсы ПК и ППК для учителей

Вебинар для учителей

Свидетельство об участии БЕСПЛАТНО!

Закрыть через 5 секунд
Комплекты для работы учителя