16.04.2015 г. Лекционно-семинарское занятие.
Тема: Основы программирования на
Turbo Pascal
ЛЕКЦИОННО-СЕМИНАРСКИЕ ЗАНЯТИЯ - форма организации
учебного процесса с целью самостоятельного изучения, закрепления и углубления
учебного материала предмета, а также обобщающего повторения. На Л.-с.з.
выносится, как правило, наиболее важный и значимый материал предмета. Л.-с.з.
проводятся обычно в три этапа: первый - лекция преподавателя; второй - самостоятельная
домашняя работа учащихся по подготовке к семинару; третья - проведение
семинара. Л.-с.з. более эффективны по сравнению с уроком, так как здесь
изменяются функции преподавателя и учащихся: более ярко выражена регулятивная и
организаторская функция преподавателя, усилена информационная функция учащихся.
Цели:
Изучить основы программирования на Паскаль, структуру программы и
программирование в среде Турбо Паскаль.
Развить умение логически мыслить, выбирать наиболее
важный и значимый материал для освещения вопроса, уметь защищать свое мнение в
дискуссии.
Воспитывать умения публичного выступления, такта, умения
выслушать и задать вопросы по существу.
Задачи: Осветить тему, заслушать доклады, обсудить с
обучающимися.
Оборудование: Проектор, доклады, компьютеры для решения задач в среде TP.
Ход урока.
1.Орг. момент.
2.Вводная лекция преподавателя.
3. Доклады студентов с последующим обсуждением.
Этап 1. Лекция преподавателя.
1? Структура
программы
Программа – это упорядоченный список команд.
Любая программа на Паскале имеет
достаточно строгую структуру, которая должна неукоснительно соблюдаться, иначе
компьютер просто не поймет нас.
Любая
программа на Паскале должна состоять из трех основных разделов:
v
раздел заголовок (объявление программной единицы);
v
раздел описаний;
v
раздел исполняемых операторов (тело программы).
В разделе «заголовка»
содержится 1 строчка для этого программа начинается с
зарезервированного слова Program после которого
следует собственно, имя программы (Zadacha) Primer, после имени программы в конце обязательно ставится точка с запятой (;).
Раздел
описаний может иметь как одну ток и несколько строк. В разделе
описаний должны содержаться описания всех идентификаторов используемых в
разделе исполняемых операторов.
Например: Раздел
описания переменных начинается со слова |Var|, а раздел описания constant начинается со слова /const/.
Тело программы содержит
собственный программный код, отвечающий за реализацию алгоритма. При этом тело
программы обязательно оформляется так называемыми операторными скобками
Например: Begin (начало раздела
исполняемых операторов) Begin…. End.
……
End (конец).
Т.е все операторы, реализующие наш алгоритм,
должны помещаться между этими операторными скобками. Таким образом, структура
программы на языке Паскаль выглядит следующим образом:
Program < >;
Var;
Begin
….
End.
В более сложных программах, кроме переменных
часто приходится помещать в раздел описаний ни только описание переменной, в
таком случае раздел описаний в свою очередь может содержать некоторые множества
разделов.
Раздел
описаний (в общем случае) состоит из:
ü
раздел описаний используемых библиотек USES
ü
раздел описаний меток LABEL
ü
раздел описаний констант CONST
ü
раздел описаний типов TYPE
ü
раздел описаний переменных VAR
ü
раздел описаний процедур и функций.
Разделы TYPE; VAR; CONST; LABEL – могут следовать друг за
другом в любом порядке и встретиться в разделе описаний столько раз сколько
нужно.
Единственное
ограничение – это идентификаторы, которые используются для
определения других идентификаторов, должны описываться раньше.
Этап 2. Доклады студентов
Доклад№1 Структура программы на языке Паскаль.
- Заголовок языка программирования Паскаль:
Program <имя программы>;
Program maximum;
- Список используемых библиотек:
USES <список библиотек>;
Например: USES CRT;
- Раздел описания меток:
LABEL <список меток>;
Например: LABEL Home, 4.
- Раздел описания констант:
CONST <имя константы>;
<значение
константы>;
Например: CONST n=7
- Раздел описания типов
TYPE <имя типа> = <описания типов>
Например: TYPE
mass=array [1,..3,1..5] of real.
- Раздел описания переменных:
VAR <имя переменной>; <тип переменной>;
Например: VAR х: real.
- Раздел описания процедур инструкций
- Тело программы:
Begin (начало)
<команды программы
> (оператора)
End. (раздел операторов).
Вопросы для обсуждения:
1)Какие зарезервированные слова используются в
описании структуры программы.
2) Формат записи тела программы.
3) Перечислите разделы описаний, имеющихся в
Паскаль
4)Последовательность изложения разделов в
структуре программы.
Доклад№2 Алфавит и некоторые основные операторы языка Паскаль.
Буквы – латинского языка, а
также знак подчеркивания.
Турбо Паскаль не различает прописные и
строчные буквы, если только они не используются в качестве данных программы.
Цифры используются арабские
цифры от 0 до 9; каждая 16-ая цифра имеет значение от 0 до 16 (первые 10
обозначаются арабскими от 0 до 9, а остальные 6-латинскими буквами от А до F , специальные знаки турбо Паскаля: +; -; *; < >; ,; :; { }; [ ]; ( );
^; @; $; #; <; >; =; : = (**) (…).
Пробелы в турбо Паскале являются
разделителями.
Идентификаторы – это имена констант, переменных, меток, типов, объектов, процедур,
модулей, функций и других конструкций языка.
Длина идентификатора может быть
произвольной, но значениями являются первые 63 символа.
Идентификатор
состоит из любых букв латинского алфавита, из цифр и знака
подчеркивания. Ни какие другие символы и идентификаторе не доступны.
Идентификатор не может начинаться с цифр, не должен совпадать ни с одним из
зарегистрированных слов.
Константы: В качестве констант
в турбо Паскале могут использоваться целые, вещественные и 16-ти ричные числа;
так же логические константы, символы, строки символов.
Целые
числа записываются со знаком или без него по обычным
правилам и имеют значения от 2 до (2-1). Если целочисленная константа выходит
за рамку этого диапазона, то компьютер выдает сообщение об ошибке.
Вещественные числа со значком или без него с
использованием десятичной точки и/или экспонциальной части.
Например:
2,3 *10
Экспоненциальная
часть
Символьная
константа – это набор символов заключенный в апострофы.
Переменные
– можно
сказать, что это устройство способное хранить электронную информацию, например,
число. Во время программы содержимое этого устройства может меняться.
Операция
присвоения. В результате присвоения переменная
получает конкретное значение.
Имя переменной:= выражение.
Выполнение оператора присвоения
заключается в следующем:
Вычисляется результат выражения находящегося справа
от символа ( :=);
Вычисленное значение записывается в переменную имя,
которая стоит слева от символа (:=)
Например: х:=у12+5
Выражение.
Состоит из операндов
и операторов.
Операнды находятся между операторами.
Операторами могут
быть числа (константы) и переменные. Обозначают действие выполняемые над
операндами.
Вопросы для обсуждения:
1)Из чего состоит алфавит на языке Паскаль.
2)Что такое константы и переменные, отличие и
порядок использования в программе.
3) Что такое идентификатор, из чего состоит.
4) Операнды и операция присваивания.
Доклад№3 Арифметические
операции на Паскаль.
Рассмотрим некоторые арифметические операции
(соответствующие операторы), которые применяются для записи алгебраических
выражений на Паскаль.
Оператор
|
Выполняемое
действие
|
Пример
использования
|
Примечания
|
+
|
Сложение
|
А+3,4
|
При
А=1, выражение принимает значение =4,4
|
-
|
Вычитание
|
А-3,4
|
При
А=1, выражение принимает значение -2,4
|
*
|
Умножение
|
А*3,4
|
При
А=1, выражение принимает значение =3,4
|
/
|
Деление
вещественных чисел
|
А/3,4
|
При
А-1, выражение принимает значение =0,294
|
DIV
|
Целая
часть от деления целого числа нацело
|
1). 4
div 2
2). 5
div 2
|
1).
2-это результат деления целого числа на цело;
2). 2
путем отбрасывания дробной части
|
MOD
|
Остаток
от деления целого числа нацело
|
1). 4mod 2
2). 5mod 2
|
1). 0
в результате деления идет остаток от деления двух чисел;
2). 1
|
Правило выполнения операторов:
Ø
Операторы *; /; DIV; mod имеют более высокий, чем операции «+» и «-«.
Ø
Операторы с более высоким приоритетом выполняются
раньше операторов приоритет, которых ниже. Если приоритет операторов одинаков,
то оператор стоящий левее выполняется раньше.
Ø
Для создания любого нужного порядка выполнения
операций в выражениях можно использовать скобки. Выражение, заключенное в
скобки трактуется как один операнд. Это означает, что операции стоящие в
скобках, будут выполняться в обычном порядке, но раньше, чем операции
нахождения за скобками. При записи выражений содержащих скобки должна
соблюдаться парность скобок, т. е число открывающих скобок должно равняться
числу закрывающих скобок.
Пример: у = у:
= (2*х)/ (х+3).
Вопросы для обсуждения:
- Операция DIV
- Операция MOD.
- Пример использования.
Доклад№4 Типы данных языка Паскаль.
Для всех
переменных в программе на языке Паскаль должен быть определен их тип данных.
Тип данных характеризуется
множеством допустимых значений переменных и набором допустимых операций для
данного типа.
Все переменные в
программе описываются в специальном разделе. В разделе описания переменной
после зарезервированного слова VAR.
Выполнение раздела описания переменных (выполняется)
сопровождается следующими действиями:
v
При описании выделяется область памяти для
переменных (в стандартном Паскале целые переменные занимают 2 байта, а
вещественные 4 байта);
v
Описание не определяет конкретное значение переменной,
т. е считается, что в выделенной памяти при ее распределении /до использования/
находится некоторый «мусор»;
v
Описание определяет способ представления элементов
в памяти ПК, например, вещественные и константы, в отличии от целых, машины
представляются в виде мантиссы и порядка;
v
Описание определяет набор допустимых операций;
v
Описание определят область действия переменных
/локальные или глобальные/.
Переменные могут быть:
1.
скалярные (простые) – содержит одно единственное
значение;
2.
структурированные – могут содержать несколько
значений.
Рассмотрим
некоторые простые типы данных.
1.
Целый - Integer
Значением переменной этого типа может быть
целое число из отрезка [-32768; 32767]
2.
Вещественный тип – Real
Значением переменной этого типа может
вещественное число модуль, которого принадлежит отрезку [2.9*10; 1.7*10
3.
Логический тип – Boolean
Переменная этого типа может принимать только 2
значения: истина true или ложь false
4.
Символьный тип – Char
Значением переменной этого типа может быть
любой символ из набора ASCII символов, таблицы.
5.
Строковый тип – String
Значением переменной этого типа является набор
символов заключенные в кавычках (апострофах).
Например: ‘Pascal’.
Пусть в разделе описаний записано:
a:
integer;
b, c: real;
- это означает, что у нас описано три
переменных:
а-
целого типа;
b и c – вещественного
типа.
В программе могут
быть операторы присваивания следующего вида:
А= 3,4
(не верно)
В= 5,0
С= 3,8
Вопросы для обсуждения:
- Перечислите типы данных.
- Рассмотрите диапазон значений для каждого.
- Формат записи под каждым типом данных.
Доклад№5 Стандартные математические функции TURBO PASCAL
Обращение (запись)
|
Тип аргумента
|
Тип результата
|
Примечание
|
ABS (x)
|
Real
|
Real
|
Модуль
аргумента
|
arctan (x)
|
Real
|
Real
|
Вычисляется
арктангенс (х)
|
cos (x)
|
Real
|
Real
|
Вычисляется
косинус
|
sin (x)
|
Real
|
Real
|
Вычисляется
синус (в радианах)
|
Ln (x)
|
Real
|
Real
|
Натуральный
логарифм
|
exp (x)
|
Real
|
Real
|
Экспонента
e
|
frac (x)
|
Real
|
Real
|
Дробная
часть
|
Random
|
Real
|
Real
|
Псевдослучайное
число, равномерно распределенное в диапазоне от 0 до 1
|
Random (x)
|
Integer
|
Integer
|
Псевдослучайное
число, равно распределенное в диапазоне от 0 до х-1
|
Rendom ize
|
|
|
Инициация
генератора псевдослучайных чисел
|
Sgr (x)
|
Real
Integer
|
Real
Integer
|
Квадрат
аргумента (х.)
|
Sgrt (x)
|
Real
|
Real
|
Корень
квадратный из аргумента ()
|
Вопросы для
обсуждения:
Доклад№6 Программирование аргументов линейной структуры
1.Составной оператор
Последовательность программных операторов
программы заключенных в операторные скобки – зарезервированные
слова Begin…End.
Turbo Pascal допускает произвольную глубину влажности составных
операторов.
Зарезервированное
слово End – является закрывающей
операторной скобкой: оно одновременно указывает конец предыдущего оператора,
поэтому ставить перед ним символ; не обязательно.
2.Пустой оператор.
Символ называется
пустым оператором и обозначает окончание предшествующему оператору.
3.
Программирование линейных
алгоритмов
Линейным алгоритмом, называется
алгоритм в котором все этапы решения задачи выполняется строго последовательно,
т.е линейный алгоритм выполняется в естественном порядке его описания и не содержит
разветвлений и повторений.
Для реализации алгоритмов линейных страниц,
используют операторы:
Оператор или процедура вывода: write (ln)
Оператор или процедура ввода: Real (ln)
Оператор присвоения: =
4.
Процедура ввода.
Процедура
write
предназначена для вывода на экран монитора сообщений и значения переменных и
выражений. Для того чтобы вывести сообщение нужно его заключить в апострофы ‘ ‘.
В этом случае то, что заключено в апострофы при работе нашей программы появится
экран монитора без изменений.
Например: write (‘Привет‘)
Если выводится на экран результат некоторых
вычислений (не сообщение, а значение, хранимое в некоторой переменной), то
апострофы не ставятся.
Например: х:= у+5 у=1 х=6
Write (Х)
6
Если нужно вывести некоторое вещественное
значение, то можно использовать форматы вывода.
Например: D: = 12, 4567
Write (D: 5:2)
Первая цифра обозначает общее количество
знаков в водимом числовом значении, а вторая цифра – количество знаков после
запятой. В результате выполнения этой процедуры у нас выведется целое число.
12,45.
Процедура
writeln
Выводит информацию строкой, после того как
была выведена информация, записанная в скобках после имени процедуры, курсор
переместится на другую строку.
Write (‘
Площадь треугольника‘ - ; S)
Площадь
треугольника –
5.
Процедура вывода.
Для ввода данных используют
процедуры Read ln (line)
Read (ln)
Процедура Read считывает
данные, вводимые с клавиатуры, а процедура Readln – считывает данные и символ
конца строки, т. е, как и в случае с процедурой ввода частица ln в конце обозначает, что после выполнения ввода курсор будет переведен
на следующую строку.
Пример
1.
Составить программу которая находит площадь
прямоугольника произвольных размеров:
S= a*b
Program Zadacha;
Var A, B, S: integer;
Begin
Writeln (‘введите длину ‘);
readln (B)
Writeln (‘введите ширину ‘);
Readln (A);
S: = A*B;
Writeln (‘площадь прямоугольника с шириной;
А: 8:2, ‘и длиной, ‘В: 8:2, ‘равна, ‘S: 8:2);
Readln;
End.
Приведенная выше программа реализует алгоритм
линейной структуры.
Пример
2.
Найти квадрат данного вещественного числа.
Program Kvadrat chisla;
Var x, y: read;
Begin
Writeln (‘введите x ‘);
Readln (х);
y: =х*х;
write (х: 2:4);
Readln;
End.
Вопросы для обсуждения.
- Что такое операторы ввода и вывода.
- Как реализуется алгоритм линейной структуры.
- Отличительная особенность задач с
реализацией данных алгоритмов.
- Какие бывают форматы вывода.
Этап
3. Подведение итогов. Выставление оценок.
Оставьте свой комментарий
Авторизуйтесь, чтобы задавать вопросы.