Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка_Паскаль_заочное1.doc
Скачиваний:
13
Добавлен:
01.05.2025
Размер:
285.7 Кб
Скачать

Лабораторная работа №1 программирование алгоритмов линейной структуры.

Цель работы: Изучение структуры исполняемого файла, типов данных, операций и функций ввода-вывода языка программирования Pascal.

Основные теоретические сведения.

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

  • строился на небольшом количестве базовых понятий;

  • имел бы простой синтаксис;

  • допускал бы перевод программы в машинный код простым компилятором (компилятор - это программа, которая проверяет текст исходной программы на наличие синтаксических ошибок и генерирует машинный код);

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

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

Алфавит языка Pascal составляют:

1. Заглавные и строчные буквы латинского алфавита: A-Z, a-z.

2. Арабские цифры: 0, 1, ..., 9

3. Знаки операций: + - * / (арифметические)

<>, <=, >=, =, >, < (сравнение)

:= (присваивания)

4. Ограничители: ' , . : ; ( ) { } [ ]

Из символов языка создаются более сложные конструкции: идентификаторы, операторы, выражения, ...

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

Переменная - это поименованная ячейка памяти компьютера.

В качестве имени переменной можно использовать последовательность букв латинского алфавита, цифр и знака подчеркивания, причем первым символом должна быть буква. Желательно, чтобы имя переменной было логически связано с ее назначением. Например: Summa Rezultat X_1 A_33

В результате операции присваивания переменная получает значение:(А:=6;В:=1;). Выражение с операцией :=, в конце которого стоит символ ; называется оператором присваивания.

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

Выражение состоит из знаков операций и операндов (например, s/r). Если между операндами стоит хотя бы одна из операций < > <= >= = <>, то такие выражения называются отношениями: x1<x2-5; rez<>0.

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

(b1+b2+b3)/100

sun*0.75

Кроме стандартных арифметических операций (+ - / *) в языке Pascal доступны следующие операции над целыми числами:

div - вычисляет целое частное от деления

mod - вычисляет остаток от деления.

Например, 22 div 5=4, 22 mod 5=2.

Значение арифметического выражения может быть присвоено переменной с помощью операции присваивания:

A:=b*8.34/5;

x1:=(sqrt(x)-sin(x+1))/2;

Логические выражения представляют собой два или более отношения, связанные между собой логическими операциями (and, or, not).

(a+2*b<=5) and (a/b>b/a);

В арифметических и логических выражениях операции выполняются по приоритетам:

1. Выражения в скобках;

2. Логическое отрицание not;

3. Логическая операция and;

4. Логическая операция or;

5. Операции умножения и деления;

6. Операции сложения и вычитания;

7. Операции отношения.

Например, условие существования треугольника со сторонами A, B, C можно записать в виде логического выражения:

(A+B>C) and (A+C>B) and (B+C>A)

Часто при вычислении значений арифметических выражений приходится использовать математические (тригонометрические) функции (cos, sin, ln, ...) или выполнять специальные математические операции (извлекать корень  , выделять целую часть числа, округлять, и т.д.). Для выполнения всех этих действий в языке Pascal существуют стандартные функции (см. таблицу 1).

Таблица 1. Основные математические функции.

Обозначение функции

Описание функции

abs(x)

модуль аргумента х

arctan(x)

арктангенс аргумента х

cos(x)

косинус аргумента х

exp(x)

возведение числа е=2,71 в степень х

ln(x)

вычисление натурального логарифма (x>0)

log(x)

вычисление десятичного логарифма

round(x)

округление значения х до целого

sin(x)

синус аргумента х

sqr(x)

возведение в квадрат аргумента х

sqrt(x)

извлечение квадратного корня из х (x>=0)

trunc(x)

выделение целой части аргумента х

Random(n)

Генерирует случайное число из диапазона от 0 до n-1

Для возведения числа X в степень n рекомендуется пользоваться преобразованием вида:

Xn = e n ln X exp(n*ln(X))

Любые данные в программе (константы или переменные) характеризуются своими типами.

К простым типам данных относятся:

  1. целочисленный (byte) диапазона от 0 до 255

  2. целочисленный (integer) диапазона от -32767 до +32768

  3. вещественный (real): примеры: 2.5 -59.987 88.0 0.01 1.8Е-9

  4. символьный (char): '1' 'R' '&' 'k'

  5. логический (boolean): имеет только 2 значения true и false;

Типы всех переменных (входных, выходных, промежуточных), используемых в программе, необходимо описывать в начале текста программы в разделе var следующим образом:

список переменных: тип ;

Например: var a1, ket, pr: integer;

sum: real;

l, n: char;

Программы, написанные на языке Pascal, строятся в соответствии с определенными правилами. Любую программу можно условно разделить на 2 части:

1. раздел объявлений и соглашений (декларационная часть);

2. раздел основного блока.

В первой части программы объявляются метки (label 78, met;), константы (const year=1995;), переменные (var f, g: integer; kol: real;)

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

LABEL ...... ;

CONST ...... ;

VAR ......... ;

BEGIN ....................

....................

END.

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

{ ввод исходных данных } или (* вычисление суммы *)

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

Начальные значения переменным можно задать с помощью оператора присваивания (А:=5.76 ; Tet:=7; Mer:='%'). Но значительно удобнее вводить исходные данные в диалоговом режиме в процессе выполнения программы. Для этого необходимо вызвать процедуру ввода данных с клавиатуры read (readln) следующим образом:

read (имя1, имя2, ...) ;

readln (имя1, имя2, ...) ;

где имя1, имя2, ... - имена вводимых переменных.

В операторе readln окончание ln (line - линия) означает, что после завершения ввода значений переменных курсор должен переместиться к началу следующей строки на экране монитора.

read (M, G, k); readln(n, m);

Если в списке вводимых переменных несколько, то они вводятся с клавиатуры либо через пробел, либо после каждого введенного значения нажимается Enter.

Вызов процедуры ввода данных может осуществляться без параметров, при этом оператор read; (readln;) будет ожидать нажатия любой клавиши на клавиатуре.

Для вывода на экран монитора сообщений и значений переменных служит процедура write (writeln), вызвать которую можно следующим образом: