Основы программирования на языке Pascal (Теоретическая часть)
Содержание:
Введение
Язык Pascal - это один из самых распространённых языков программирования микрокомпьютеров. Благодаря своей популярности язык стал стандартом языка программирования 8- и 16-разрядных микрокомпьютеров.
К важнейшим достоинствам языка Pascal относятся небольшой размер компилятора, высокая степень соответствия стандартному Паскалю, очень быстрая компиляция программ, объединение компилятора с интерактивным экранным редактором, предупреждение об ошибках на уровне исходной программы, обширная библиотека подпрограмм и полезные расширения, упрощающие системное программирование.
Одной из основных проблем, с которой сталкиваются в процессе программирования, является написание программы, не содержащей ошибок. Ошибку наиболее полно можно определить, как расхождение поведения программы с ожиданиями пользователя. Сюда входит как несоответствие результат исходных данных, так и другие, порой более опасные эффекты: зацикливание, аварийная остановка программ и т.п.
Наиболее явно наблюдаемыми историческими тенденциями в программировании являются непрерывный рост пользовательских требований, лавинообразное усложнение функциональности программы и, как следствие, - усложнение её разработки. В связи с увеличением трудоёмкости программных средств возникла необходимость выработки интеллектуальных инструментов, позволяющих разработчикам справляться с возросшей сложностью своего труда.
В настоящий момент можно утверждать, что практически каждая программа составляется с применением той или иной технологии программирования.
1. Теоретическая часть
Алфавит языка Pascal составляют следующие символы:
) буквы латинского алфавита A, B, C…;
) буквы русского алфавита А, Б, В,…Я (кроме Ъ);
) цифры 1,2,3,4,5,6,7,8,9;
) знаки арифметических операций:
+ - сложение;
- вычитание;
*- умножение;
/ - деление;
) специальные символы:
. - точка;
, − запятая;
; − точка с запятой;
: − двоеточие;
’ - апостроф;
( ) - круглые скобки;
[ ] - квадратные скобки;
_ −пробел;
{ } - фигурные скобки;
) знаки операций:
> - больше;
< - меньше;
>= - больше или равно;
<= - меньше или равно;
= - равно;
<> - не равно;
:= - присвоить.
Из символов алфавита строят более сложные конструкции - слова, словосочетания, предложения. В языке Pascal под словом понимают число, строку, имя. Минимальная конструкция языка, представляющая собой законченную мысль, есть предложение. Предложение либо задает полное описание некоторого действия, которое необходимо выполнить, и называется оператором, либо описывает структуру и организацию данных - объектов языка, над которыми эти действия производятся, и называется описанием. Совокупность описаний и операторов образует программу. Для того, чтобы научиться писать программы, необходимо изучить синтаксис языка (правила записи его конструкций) и его семантику (смысл и правила использования этих конструкций). В языке Pascal существует некоторый набор служебных слов, назначение которых строго определено (зарезервировано) и которые не могут быть использованы с другой целью. Служебные слова используются, например, для обозначения операторов.
Массив - это упорядоченная совокупность значений одинакового типа, объединенная одним именем. Для того чтобы иметь возможность работать с каждым элементом массива, необходимо задать координаты этого элементам в общей структуре массива.
Если массив одномерный рис. 1 а, б, то для определения положения элемента достаточно задания номера ячейки. Выделенные ячейки имеют номера 3, 5, 7, а соответствующие элементы массива, если массив в целом обозначить буквой А, обозначаются соответственно, как A[3], A[5], A[7]. Одномерные массивы часто называют векторами.
Если массив двумерный, то для определения положения какого-либо элемента достаточно задания номера строки и столбца, на пересечении которых находиться рассматриваемый элемент. Так выделенные на рис. 1 в элементы массива имеют следующие обозначения B[1,1], B[1,4], B[5,2].
Файл представляет собой совокупность данных, в которой все данные должны быть одного типа. Необходимость в файлах возникает тогда, когда память (ОЗУ) мала для данных, и когда данные нужно сохранить. На первый взгляд файл похож на массив. Однако между массивом и файлом существует четкое различие. Одним из таких различий является то, что у массива с помощью индекса можно указать любой элемент. У файла же вызвать желаемые данные таким способом нельзя. Нагляднее всего файл представить в виде бумажного рулона, на котором одно за другим записаны данные. Читать данные, записанные таким образом можно только с начала, и по мере чтения следует перемещаться последовательно с одной записи на другую. Таким образом, после каждого обращения к файлу указатель файла автоматически смещается на следующую позицию (окно).
Файловый тип определяется в программе с помощью соответствующего описания:
<имя типа> = FILE <тип элемента>
Например, определение типов
MAX = 80;
TYPE M=1. . MAX;= ARRAY [M] OF CHAR;
FF = FILE OF F;
задает файл FF, элементами которого являются массивы символов длинной M. Файловый тип можно определить и в разделе переменных:
<имя файла>: FILE OF <тип элементов>;
Переменная, имеющая смысл файла, описывается в разделе переменных. Над файлами можно выполнять некоторые действия: запись (создание и пополнение файла) и чтение.
Операция записи добавляет к файлу новую компоненту. Новые элементы могут добавляться только к концу файла.
Рассмотрим некоторые процедуры, которые можно выполнять над файлами:
) связь программного имени файла с дисковым именем файла
ASSIGN (F, ‘A: FILE. EXE’);
F- программное имя файла;имя диска;.EXE- дисковое имя и расширение (с этим расширением хранится на диске созданный файл).
) открытие существующего файла на диске для чтение (файловое окно установится на начало файла)
(F);
) открытие нового файла на диске для записи (файловое окно устанавливается на начало файла)
(F);
) чтение из файла
(F, V);
-имя переменной.
Через текущее окно считывается компоненты файла в переменную V. V имеет тип компоненты файла.
) запись в файл
WRITE (F, V);
Записывается значение V в компоненту файла.
) открытие файла и установка окна для добавления символов
в конец существующего файла
(F);
) закрытие файла.
(F);
Тип STRING (строка) в Паскале широко используется для обработки текстов. Он во многом похож на одномерный массив символов ARRAY [O . . N] OF CHAR, однако, в отличии от последнего, количество символов в строке - переменной может меняться от О до N, где N - максимальное количество символов в строке. Значение N определяется объявлением типа STRING [N] и может быть любой константой порядкового типа, но не более 255, например:
Const N = 25;Stroka = String [n];S: Stroka;: String [50];: String [230];: String [270]; Ошибка, 270>255
Разрешается не указывать N. В этом случае длина строки принимается максимально возможной, а именно N=255. Т.о. согласно описания
Var A: String; B: String [255];
переменные А и В могут содержать до 255 символов каждая.
2. Постановка задачи
Задание 1.
Разработать блок-схему и программу для вычисления переменной r, используя для ввода данных, операторы READ и READLN. Вывести значения исходных данных, подобрав к ним форматы по операторам WRITE и WRITELN. Значение переменной r вывести в стандартной форме.
b=-3=5,6
k=0,14 |
Задание 2.
Поменять в каждом столбце элементы главной и неглавной диагоналей
Задание 3.
Создать файл S, компонентами которого являются элементы массива T. Записать в файл X первые пять компонент файла S и сумму всех остальных. Прочитать файл X.
=(0,2; 0,4; 6,1; 5,8; 4,9; 9,8; 7,1; 2,4;).
Задание 4.
Дан текст из букв и цифр. Определить, равна ли длина текста сумме числовых значений цифр, входящих в текст.
3. Руководство пользователя
Задание 1. Запускается программа program1. Вводятся значения b, c, k. После нажатия на Enter программа считает и выводит результат работы программы (рисунок В.1).
Задание 2. Запускается программа program2. С клавиатуры вводятся элементы матрицы А. Далее программа меняет местами элементы главной и побочной диагоналей и выводит результат на экран (рисунок В.2).
Задание 3. Запускается программа program3. Программа создаёт файл S, компонентами которого являются элементы массива Т.Далее программа создаёт файл Х в который заносит первые пять компонентов файла S и сумму остальных. Читает файл Х (рисунок В.3).
Задание 4.Запускается программа program4. Вводится предложение содержащее цифры. Программа считает количество символов и сравнивает их с суммой цифр в предложении (рисунок В.4).
4. Руководство программиста
Задание 1. Организация линейной программы.
В данной программе используются входные переменные b, c, k, промежуточные p, x, o и выходная r.
В таблице 1 приведены арифметические операции и функции, используемые в программе.
Таблица 1 - Арифметические операции и функции
Запись на языке Pascal |
Выполняемые функции |
ABS(X) |
| X | |
COS(X) |
COS X |
EXP(X) |
ex |
LN(X) |
Ln x |
Задание 2. Массивы.
Входными параметрами являются элементы исходного массива А[i, j]. Выходными - элементы измененного массива. Выходной массив изменен путём замены в нем элементов главной и побочной диагоналей.
Задание 3. Обработка файловых структур данных.
Входные параметры: элементы массива Т, записанные в файл S.Исходным параметром является файл Х, элементами которого являются первые пять компонентов файла S и сумма всех остальных.
Для работы с файлами используются следующие основные процедуры и функции:(y, ‘Y’) - связывает внешний файл, с файловой переменной.(y) - открывает существующий файл для чтения.(y) - создает и открывает новый файл.(y) - закрывает открытый файл.
Так же используется функция:- возвращает состояние конца файла.
Задание 4. Строки в паскале.
В данной программе используется входная переменная s. Вводим произвольное предложение, содержащее цифры. Программа считает количество символов и сравнивает его с суммой цифр содержащихся в предложении.
Так же используются функции:- возвращает в качестве значения длину строки.- возвращает порядковое значение выражения перечисляемого типа.- увеличивает число на определенное значение.
5. Анализ работы
Задание 1.
1. Даны значения b=-3, c=5.6, k=0.14 и формулы для расчета переменных p, x и o.
2. Найти по выше приведенным формулам переменную r.
Полученный результат совпал с результатом программы (рисунок В.1).
Задание 2.
Дана исходная матрица А:
1. Произведём замену элементов главной диагонали на элементы побочной диагонали:
Полученный результат совпал с результатом программы (рисунок В.2).
Задание 3.
1. Создается файл S, компонентами которого являются элементы массива Т:
2. Записываются в файл Х первые пять компонентов файла S и сумма всех остальных. Х=(0.2, 0.4, 6.1, 5.8, 4.9, 19.3)
Полученный результат совпал с результатом программы (рисунок В.3).
Задание 4.
Вводим произвольное предложение, содержащее цифры. Программа считает количество символов и сравнивает его с суммой цифр содержащихся в предложении:содержит 7 символов и цифру 7. Количество символов равно сумме цифр значит условие выполняется.
Полученный результат совпал с результатом программы (Рисунок В.4).
Заключение
В данной курсовой работе были рассмотрены символьные, линейные, файловые структуры данных и массивы, их ввод, обработка на языке Pascal.
Согласно условиям поставленных задач в данной курсовой работе подробно разработаны руководство пользователя и руководство программиста.
Также были проанализированы результаты работы программы. Задачи, поставленные перед программистом, были успешно выполнены.
Разработка блок-схем решения поставленных задач осуществлена в приложении А.
Листинг программ приведен в приложении Б.
В приложении В представлены результаты работы программ.
Список использованной литературы
1. Абрамов В.Г., Трифонов Н.П. Введение в язык Pascal. - М.: Наука 1988. - 320 с.
2. Абрамов С.А., Зима Е.В. Начала программирования на языке Pascal. - М.: Наука, 1987. - 112 с.
3. Алтухов А.В., Жукова Т.А. Основы алгоритмизации и программирования - Шымкент: ЮКГИ им. М. Сапарбаева, 2007 г.
. Бутомо И.Д., Самочадин А.В., Усанова Д.В. Программирование на алгоритмическом языке Pascal. - Л.: Издательство Ленинградского университета, 1985. - 216 с.
5. Грэхем Р. Практический курс языка Pascal. - М.: Радио и связь. 1986 - 200 с.
. Йенсен К., Вирт Н. Руководство для пользователя и описание языка. - М., 1982. 151 с.
7. Пильщиков В.Н. Сборник упражнений по языку Pascal. - М.: Наука, 1989. - 160 с.
8. ru.wikipedia.org/wiki/PascalABC.
Приложения
Приложение А (обязательное)
Блок-схемы
Рисунок А.1 - Блок-схема алгоритма программы (задание 1)
Рисунок А.2 - Блок-схема программы (задание 2)
Рисунок А.4 - Блок-схема программы (задание 3)
Рисунок А.5 - Блок-схема программы (задание 3)
Рисунок А.6 - Блок-схема программы (задание 3)
Рисунок А.7 - Блок-схема программы (задание 4)
Приложение Б (обязательное)
Листинг программ
Задание 1
Program ZADANIE1;crt;PI=3.14;r,o,p,x,b,c,k:real;;('Введите b=');(b);('Введите c=');(c);('Введите k=');(k);:=14.38E3+exp(1/3*ln(k-lg(ABS(k))));:=b+c;:=cos(2*PI/3*b);:=(o+p)/(x+exp(2*x)+18E3);('Промежуточные');('p=',p:3:3);('х=',p:3:3);('о=',p:3:3);('Результат');('r=',r:3:3);;.
Задание 2
Zadanie2;A:array[1..4,1..4] of real;,j:integer;:real;i:=1 to 4 doj:=1 to 4 do('vvedite element A[',i,',',j,']:');(A[i,j]);;i:=1 to 4 do:=A[i,i];[i,i]:=A[i,4-i+1];[i,4-i+1]:=N;;i:=1 to 4 doj:=1 to 4 do(A[i,j],' ');;;;;.
Задание 3
Zadanie3;X,S:file of real;:integer;:real;:array[1..8] of real;(X,'I:X.doc');(S,'I:S.doc');(S);i:=1 to 8 do('vvedite element T[',i,']:');(T[i]);(S,T[i]);;(S);(X);
B:=0;
for i:=1 to 5 do(S,T[i]);(X,T[i]);;not eof(S) do(S,T[i]);:=B+T[i];;(X,B);(X);('sodergimoe faila X');not eof(X) do(X,T[i]);(T[i]);;(X);(S);.
Задание 4
laba4;s:string;,sum,k:integer;('Text: ');readln(s);i:=1 to length(s) dos[i] in ['0'..'9'] then:=sum+ord(s[i])-ord('0');(k);;sum=length(s) then writeln('Yslovie vupolnyaetsya')writeln('Yslovie ne vupolnyaetsya');
readln;.
Результаты работы программ
Рисунок В.1 - Результат работы программы (задание 1)
Рисунок В.2 - Результат работы программы (задание 2)
Рисунок В.3 - Вывод работы программы на экран (задание 3)
Рисунок В.4 - Вывод результата работы программы (задание 4)
- Применение процессного подхода для оптимизации бизнес-процессов
- Законность и правопорядок ( Система способов обеспечения законности)
- ПРАВО СОЦИАЛЬНОГО ОБЕСПЕЧЕНИЯ. Понятие и виды трудового стажа
- Особенности управления организациями в современных условиях и пути его совершенствования (ПАО “Ростелеком”)
- Кадровая стратегия в системе стратегического управления организацией (ООО «М Видео»)
- Роль мотивации в поведении организации («СУ ТДСК»)
- Планирование туризма в регионе как основа устойчивого развития территории (Проблемы развития туризма в регионе)
- Выбор стиля руководства в организации (Управление человеческими ресурсами)
- Методы выбора проектов (Менеджмент)
- Особенности профессиональной мотивации служащих организации (ООО «Аква»)
- Процессы принятия решений в организации (на примере ОАО "Гермес")
- Языки гипертекстовой разметки («технология Web»)