Язык программирования высокого уровня Pascal ABC

Автор работы: Пользователь скрыл имя, 03 Марта 2015 в 12:13, курсовая работа

Описание работы

Объектом исследования данной курсовой работы является язык программирования высокого уровня Pascal ABC. Язык программирования Паскаль (Pascal) является одним из первых языков, который отличался строгой типизацией и наличием средств структурного (процедурного) программирования. Этот язык представляет собой процедурный язык, включает в себя множество структур и конструкций наподобие if, then, while, еlsе и так далее.

Файлы: 1 файл

Курсовая.docx

— 4.29 Мб (Скачать файл)

СОДЕРЖАНИЕ

 

 

ВВЕДЕНИЕ

Объектом исследования данной курсовой работы является язык программирования высокого уровня Pascal ABC. Язык программирования Паскаль (Pascal) является одним из первых языков, который отличался строгой типизацией и наличием средств структурного (процедурного) программирования. Этот язык представляет собой процедурный язык, включает в себя множество структур и конструкций наподобие if, then, while, еlsе и так далее. Но также Паскаль содержит достаточно большое количество возможностей для структурирования абстракций и информации (записи, указатели, множества, определение типов и перечисления).

Мне предстоит рассмотреть алгоритмы решения задач по таким темам как:

  • программирования с использованием встроенных функций ввода/вывода.
  • программирование линейных и разветвляющихся вычислительных процессов
  • программирование разветвляющихся вычислительных процессов с использованием операторов if-else и оператора выбора case
  • программирование циклических вычислительных  процессов
  • программирование циклических вычислительных процессов с использованием массивов и матриц
  • данные строкового типа
  • записи
  • процедуры
  • файлы.

Освоить навыки создания блок-схем и программных кодов. Справится со всеми сложностями в написание программ и их отладке.

 

 

1 РЕФЕРАТ “СТРУКТУРА ПРОГРАММЫ НА ПАСКАЛЕ”

Паскаль, как язык программирования высокого уровня, имеет определенную структуру программы. При написании программы в среде используется строго определённые правила составления структуры. В Паскале описывается каждый раздел структуры программы следующим образом: раздел описания, раздел выполнения и конец. Каждый раздел, который может присутствовать в программе, является обязательным и несёт свою смысловую нагрузку.,.

Программа на языке Паскаль состоит из следующих частей:

Заголовок

     Подключение модулей 

     Раздел описаний

Begin

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

End.

Заголовок – необязателен. Начинается с ключевого слова program.

Program <имя>;

Подключение модулей – ключевое слово uses.

Uses <имя1>, <имя2>, …, <имя n>;

Раздел описаний – состоит из нескольких подразделов.

Подраздел Label – описание меток.

Label <имя>, <число>;

Const – описание констант.

Type – описание типов.

Var – описание переменных.

Function – описание функций.

Procedure – описание процедур.

Раздел операторов – содержит действия, предписанные алгоритмом.

Раздел описаний совместно с разделом операторов называется блоком.

Program My_First_program;

Var n1, n2: integer;

       x: real;

Begin

Write(‘n1=’); readln(n1);

Write(‘n2=’); readln(n2);

x := n1 / n2;

Writeln(‘n1/n2= ‘, x);

End.

Системы типов языка. Стандартные типы. В языке Паскаль любая константа, переменная, значение выражения характеризуется своим типом. Тип данных определяет множество значений, которые может принимать переменная, а также множество операций, допустимых над данной переменной. Кроме того, тип данных определяет внутреннее представление переменной. Все типы языка Паскаль можно разделить на две категории: стандартные и определяемые программистом.

Системы типов языка Паскаль.

Логический (булевский) тип.

Boolean – идентификатор логического типа. Может принимать два значения: False (0) или True (1). Занимает 1 байт.

ByteBool – 1 байт.

WordBool – 2 байта.

LongBool – 4 байта.

Операции отношения: >, <, >=, <=, =, <>. Результаты этих операций имеют логический тип.

В Паскале существуют четыре логические операции: and (логическое И), or (логическое ИЛИ), xor (исключающее ИЛИ, сложение по модулю 2, отрицание равнозначностей), not (отрицание).

(x > 1) and (x < 2) – пример логических операций.

Целые типы.

Эта группа типов обозначает множество целых чисел в различных диапазонах.

Integer – длина 2 байта. От -32768 до 32767.

Byte – длина 1 байт. От 0 до 255.

Word – длина 2 байта. От 0 до 65535.

Shortint – длина 1 байт. От -128 до 127.

Longint – длина 4 байта. От -2^31 до 2^31-1.

Операции: +, -, *, /, div, mod.

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

Стандартные процедуры и функции, применимые к данным целого типа.

Odd(x):

boolean – функция возвращает True, если число нечётное, и False – в противном случае.

Порядковыми называются типы, значения которых можно перечислить по порядку. Boolean тоже относится к порядковому типу.

Pred(x) – предыдущее значение. Тип результата – целый.

Succ(x) – следующее значение. Тип результата – целый.

Inc(x) – функция увеличения на единицу.

Inc(x, n) – процедура увеличивает значение первого параметра на n.

Dec(x) – функция уменьшения на единицу.

Dec(x, n) – процедура уменьшает первый параметр на n.

Вещественный тип.

Эта группа типов обозначает множество вещественных значений в различных диапазонах.

Real – идентификатор вещественного типа. Длина памяти – 6 байт. Диапазон: от 2,9*10^-39 до 1,7*10^38. В памяти машины величины типа Real представляются так: знак порядка, порядок, мантисса.

Single – длина 4 байта. От 1,1*10^-45 до 3,4*10^38. Представляется так: знак порядка, мантисса, порядок.

Double – длина 8 байт. От 5,0*10^-324 до 1,7*10^308.

Extended – длина 10 байт. От 3,4*10^-4932 до 1,1*10^4932.

Comp – длина 8 байт. От -2^63 до 2^63-1.

Операции: Арифметические: +, -, *, /. Результат – вещественного типа.

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

Раздел определения констант.

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

Все константы делятся на литеральные и именованные.

Литеральные константы – это все числа, символы и строки символов в тексте программы.

Именованные константы – фиксированное значение, которому даётся имя.

Сonst – идентификатор раздела констант.

const <имя> = <значение>;

ип константы определяется её изображением (способом её записи). Константы бывают целые, вещественные, символьные и строковые.

Целые константы – задаются десятеричным или шестнадцатеричным числом (шестнадцатеричные – со знаком $ в начале).

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

Символьные константы – одиночный символ с апострофами или строка с апострофами.

Базовые типы: все целые типы и тип Char.

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

Пример: Color = (Red, Yellow, Green);

За каждым именем из этого списка закреплено определённое значение. Самим задать значение этих констант в Паскале нельзя.

var z: letters;

      index: interval;

      my_letter:‘a’..’z’;

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

Константа может иметь только предопределенный (стандартный) тип данных. Тип присваивается константе по внешнему виду значения и в соответствии с этим типом отводится память для хранения значения константы.

В качестве расширения стандартного Паскаля разрешено использовать выражения, составленные из ранее определенных констант и некоторых стандартных функций (Abs, Chr, Hi, Length, Lo, Odd, Ord, Pred, Prt, Round, SizeOf, Succ, Swap, Trunc). Примеры использования константных выражений:

CONST

Min = 0;

Max = 250;

Centr = (Max-Min) div 2;

Beta = Chr(225);

NumChars = Ord('2') - Ord('A')+l;

Message = 'не хватает памяти';

ErrStr = 'Ошибка:' + Message + '.';

Ln10 - 2.302585092994045884;

Ln10R = 1/Ln10;

Константные выражения вычисляются компилятором без выполнения программы на этапе ее создания.

Стандартные типы данных (REAL, INTEGER, BOOLEAN, CHAR) не требуют описаний в этом разделе. Описания требуют только типы, образованные пользователем.

Концепция типов — одно из основных понятий в языке. С каждым данным связывается один и только один определенный тип.

Тип — это множество значений + множество операций, которые можно выполнять над этими значениями, то есть правила манипулирования данными. Использование типов позволяет выявлять многочисленные ошибки, связанные с некорректным использованием значений или операций еще на этапе трансляции без выполнения программ.

О Паскале говорят, что он строго типизирован, то есть программист должен описать все объекты, указывая их типы, и использовать в соответствии с объявленными типами. Программы становятся более надежными и качественными. При компиляции информация используется для уточнения вида операции. Так знаком + для данных типа REAL и INTEGER обозначается операция сложения, а для множеств (тип SET) — объединение. Структура раздела описания типов имеет вид:

TYPE

<имя 1=""> = <значение 1="">;

<имя 2=""> = <значение 2="">;

<имя l=""> = <значение l="">;

Имя типа представляет собой идентификатор, который может употребляться в других типах, описанных вслед за данным типом. Раздел TYPE не является обязательным, так как тип можно описать и в разделе переменных VAR. Примеры описания пользовательских типов:

TYPE

DAY = 1..31; Year = 1900.. 2000; {Интервальный тип}

LatBukv = ('А', 'С, 'D', 'G, 'Н'); {Перечисляемый тип}

Matr = array[-1..12, 'А'.. 'F'] of real; {Регулярный тип}

Это обязательный раздел. Любая встречающаяся в программе переменная должна быть описана. В языке нет переменных, объявляемых по умолчанию. Основная цель этого раздела определить количество переменных в программе, какие у них имена (идентификаторы) и данные каких типов хранятся в этих переменных. Таким образом, переменная это черный ящик, а тип показывает, что мы в него можем положить.

Структура раздела имеет вид:

VAR

<список 1="">:<тип 1="">;

<список 2="">:<тип 2="">;

<список n="">:<тип n="">;

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

TYPE

DAY= 1..31; Matr = ARRAY[1..5,1..8] OF INTEGER;

VAR

A, B: DAY; X, Y: Matr; {явное описание типов }

YEAR: 1900.. 2000; LES: (LPT, PRN); {неявное описание типов }

А, В, CD, FER51: REAL; {описание переменных стан-}

EQUAL: BOOLEAN; SH: CHAR; {дартных типов производится }

I, J, К: INTEGER; {только в разделе VAR}

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

PROCEDURE <имя> (<параметры>); {заголовок процедуры}

<разделы> {тело процедуры }

BEGIN

<раздел>

END;

FUNCTION <имя>(<параметры>): <тип>; { заголовок }

<разделы> {тело функции}

BEGIN

<раздел>

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

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

Информация о работе Язык программирования высокого уровня Pascal ABC