Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Лабораторная работа № 1 Программирование алгоритмов линейной и разветвляющейся структур. 5



Лабораторная работа № 2 Программирование алгоритмов разветвляющейся и циклической структуры 7

Лабораторная работа №3 Обработка одномерных и многомерных массивов 9

Лабораторная работа № 4 Программирование с использованием подпрограмм пользователя. 12

Лабораторная работа № 5 Обработка файловых структур данных. 13

Лабораторная работа № 6 Множественный тип данных. 16

Лабораторная работа № 7 Организация и использование статической библиотеки (Unit ) в Delphi. Использование списков выбора. 19

Лабораторная работа № 8 Графические средства в DELPHI 24

Приложение 1 Справка по работе с основным набором визуальных компонентов Delphi, требуемых при выполнении лабораторных работ. 31

Список использованной литературы.. 44


Лабораторная работа № 1
Программирование алгоритмов линейной и разветвляющейся структур.

 

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

Задания для самостоятельной подготовки

1. Изучить:

— запись констант, переменных, стандартных функций;

— правила записи арифметических выражений;

— арифметический оператор присваивания;

— организацию простейшего ввода-вывода данных.

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

2. Разработать алгоритм решения в соответствии с заданием 1.

3. Составить программу решения задачи.

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

5. Разработать алгоритм решения в соответствии с заданием 2.

6. Составить, отладить и протестировать программу решения задачи 2.

 

ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ

 

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

Программа на языке Pascal состоит из заголовка, раздела описаний и раздела операторов.

Program Имя; Заголовок программы
Label раздел меток Const раздел констант Type раздел типов Var раздел переменных Procedure раздел процедур Function раздел функций Разделописаний
BEGIN Оператор1; Оператор2; ... ОператорN; END. Раздел исполняемых операторов (тело программы)

 

Заголовок содержит служебное слово PROGRAM, имя программы, задаваемое программистом. Заканчивается заголовок символом "; " (точка с запятой).

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

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

После каждого описания ставится символ "; ".

Раздел исполняемых операторов (" тело" программы) заключается в операторные скобки вида: BEGIN (" начать" ) и END (" окончить" ), при этом после служебного слова END обязательно ставится точка. В разделе операторов записывается последовательность исполняемых операторов и каждый выражает действие, которое необходимо выполнить. Исполняемые операторы отделяются друг от друга символом "; ".

Хороший стиль программирования требует:

1. записывать слова PROGRAM, BEGIN, END с одинаковой позиции строки;

2. по отношению к ним описания и операторы принято сдвигать вправо на 2-3 символа. Желательно сдвиг делать на одинаковое количество позиций от края или по отношению к предыдущему сдвигу.

 

Константы и переменные

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

Константы - это данные, значения которых не изменяются в процессе работы программы. Константы " узнаются" по форме их записи. С каждой константой связывается характеристика, называемая типом константы.

В языке Pascal используются константы трех видов: числовые, булевские и символьные. Числовые константы предназначены для представления целых и вещественных чисел. Булевские константы используются для представления данных, имеющих смысл логических высказываний (булевские константы могут принимать лишь два значения). Символьные константы представляют данные, являющиеся последовательностями символов.

Значения переменных (в отличие от значений констант) могут изменяться во время выполнения программы. Переменные " узнаются" по именам (идентификаторам).

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

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

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

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

1. простейшие, или скалярные (к скалярным типам данных относятся типы данных таких величин, значения которых не содержат составных частей, т.е. простейшие типы: целочисленный, вещественный, логический, символьный, перечисляемый, интервальный (тип диапазон) и ссылочный;

2. структурированные (структурированный тип данных, или структуры) данные, в своей основе имеет один или несколько скалярных типов данных, к ним относятся: строки, массивы, множества, записи, файлы;

3. процедурные и типа object (этим типам данных трудно поставить в соответствие данные в обычном понимании этого слова. Их названия отражают их базовые признаки и используются, как правило, в объектно-ориентированном программировании.

Рассмотрим некоторые скалярные (простейшие) типы данных.

1. Диапазон значений типа Byte: 0..255. Над данными типа Byte допустимы следующие операции:
+ (сложение);
+ (одноместный (унарный) плюс);
- (вычитание);
- (одноместный (унарный) минус);
* (умножение);
DIV (деление (получение частного));
MOD (получение остатка (второй операнд должен быть положительным));
ShL (логический сдвиг влево);
ShR (логический сдвиг вправо);
=, < >, <, < =, >, > = - операции сравнения.
При логическом сдвиге биты, оказавшиеся за пределами разрядной сетки кода, отбрасываются, а вместо недостающих устанавливаются нули.

2. Диапазон значений типа Integer: -32768..32767. Над данными типа Integer допустимы те же операции, что и над данными типа Byte.

3. Диапазон значений типа Word: 0..65535. Над типом Word допустимы те же операции, что и над данными типа Integer.

4. Диапазон значений типа Real: 2.9E-39..1.7E+38 (по абсолютной величине). Данные типа Real имеют точность до одиннадцати значащих цифр. Над данными типа Real допустимы следующие операции:
+ (сложение);
+ (одноместный (или унарный) плюс);
- (вычитание);
- (одноместный (или унарный) минус);
* (умножение);
/ (деление);
=, < >, <, < =, >, > = (операция сравнения).

5. Тип данных Char определяет множество символов с кодами ASCII. Над данными типа Char допустимы операции сравнения (=, < >, <, < =, >, > =).

6. Данные типа Boolean могут принимать два значения: TRUE и FALSE. Над данными типа Boolean допустимы следующие операции:
AND (логическое И);
OR (логическое ИЛИ);
XOR (логическое исключающее ИЛИ);
NOT (логическое отрицание);
=, < >, <, < =, >, > = (операции сравнения).

 

Встроенные константы

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

MaxInt: Integer - возвращает число 32767, наибольшее значение типа Integer;

PI: Real - возвращает число  =3.14159265358.

 

Встроенные функции

Odd (A: Integer): Boolean - возвращает TRUE, если А нечётно;

Int (X: Real): Real - возвращает целую часть аргумента;

Round (X: Real): Integer - возвращает результат округления аргумента до ближайшего целого;

Trunc (X: Real): Integer - " отбрасывает" дробную часть аргумента;

Frac (X: Real): Real - возвращает дробную часть аргумента;

Abs (X: Real): Real - возвращает абсолютное значение аргумента;

Abs (X: Integer): Integer - возвращает абсолютное значение аргумента;

Random (A: Integer): Integer - возвращает случайное число из промежутка [0, A);

Ord (A: Char): Byte - возвращает код символа A;

Chr (A: Byte): Char - возвращает символ, код которого равен A.

UpCase (A: Char): Char - превращает строчные буквы латинского алфавита в соответствующие им прописные;

Sqr (X: Integer): Integer - возвращает квадрат аргумента;

Sqr (X: Real): Real - возвращает квадрат аргумента;

Sqrt (X: Real): Real - возвращает квадратный корень аргумента;

Exp (X: Real): Real - возвращает экспоненту аргумента;

Ln (X: Real): Real - возвращает логарифм аргумента;

Sin (X: Real): Real - возвращает синус аргумента;

Cos (X: Real): Real - возвращает косинус аргумента;

ArcTan (X: Real): Real - возвращает арктангенс аргумента.

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

ArcSin (x)=ArcTan(x/Sqrt(1-x*x));

ArcCos (x)=PI/2-ArcTan(x/Sqrt(1-x*x));

ArcCtg (x)=PI/2-ArcTan(x);

Logba =Ln(a)/Ln(b);

ax =Exp(x*Ln(a)), где a> 0.

 


Поделиться:



Популярное:

Последнее изменение этой страницы: 2017-03-11; Просмотров: 1559; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.03 с.)
Главная | Случайная страница | Обратная связь