Файл: Основы языка программирования turbo pascal. Базовый уровень 1Алфавит языка Паскаль.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 11.01.2024
Просмотров: 23
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
ОСНОВЫ ЯЗЫКА
ПРОГРАММИРОВАНИЯ
TURBO PASCAL
базовый уровень
РАБОЧАЯ ТЕТРАДЬ
_____________________________________________
Фамилия Имя Отчество
Брянск 2019
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
1
Алфавит языка Паскаль
26 латинских строчных и 26 латинских прописных букв:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a b c d e f g h i j k l m n o p q r s t u v w x y z
подчеркивание _
10 цифр:
0 1 2 3 4 5 6 7 8 9
знаки операций:
+ - * / = <> < > <= >= := @
ограничители (разделители):
. , ' ( ) [ ] (. .) { } (* *) .. : ;
спецификаторы:
^ # $
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
2
Структура программы
Структура программы в общем виде:
Упрощенная структура программы:
{1. заголовок программы}
program Имя_Программы;
{2. раздел указания используемых
модулей}
uses
Список_Используемых_Моду
лей;
{3. Раздел описаний}
label Описания_меток;
const Описания_Констант;
type Описания_Типов;
var Описания_Переменных;
procedure Описания_Процедур;
function Описания_Функций;
exports
Описания_Экспортируемых_Имен;
{4. Раздел операторов}
begin
Операторы
end.
{1. заголовок программы}
program Имя_Программы;
{2. раздел указания используемых
модулей}
uses
Список_Используемых_Моду
лей;
{3. Раздел описаний}
const Описания_Констант;
var Описания_Переменных;
{4. Раздел операторов}
begin
Операторы программы
end.
Команды языка программирования называются операторами.
Разделителем операторов в Паскале является ; (точка с запятой).
Комментарий представляет собой фрагмент текста программы, ограниченный символами { }. Комментарии в программе выполняют информационную функцию.
{Моя первая программа } program first; begin writeln(‘Hello, World!’) end.
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
3
Служебные (зарезервированные) слова
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
4
Данные
Программа в своей работе имеет дело с данными.
Некоторые данные устанавливаются еще до того, как программа начнет выполняться, а после ее запуска сохраняют свои значения неизменными на всем протяжении работы программы. Это константы.
Другие данные могут изменяться во время выполнения программы. Они называются переменными.
✓ Различие между переменной и константой довольно очевидно: во время выполнения программы значение переменной может быть изменено, а значение константы нет.
Запишите данные, которые являются константами:
Запишите данные, которые являются переменными:
Данные
Переменные
Константы
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
5
Идентификаторы
Идентификаторы или имена элементов, являются определяемыми программистом последовательностями латинских букв и цифр. Для идентификаторов принято следующее соглашение – на первом месте всегда стоит латинская буква, следующие символы могут быть либо латинскими буквами, либо цифрами в любой комбинации, либо символ подчеркивания “_”.
Пробелы и другие знаки являются недопустимыми символами.
Имя может содержать произвольное количество символов, но значащими являются 63 символа.
Не разрешается в языке ПАСКАЛЬ использовать в качестве имен служебные
слова и стандартные имена, которыми названы стандартные константы, типы, процедуры, функции и файлы.
В Turbo Pascal большие и малые буквы воспринимаются транслятором одинаково, например, Proba, proba и PROBA являются одинаково воспринимаемыми идентификаторами.
Первым идентификатором в тексте программы является имя программы.
Запишите примеры идентификаторов:
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
6
Стандартные типы данных
1. Группа целых типов (Shortint, Integer, Longint, Byte, Word).
2. Группа действительных типов (Single, Real, Double, Extended, Comp).
3. Логический тип (Boolean).
4. Символьный (Char).
5. Строковый (String).
6. Указательный (Pointer).
7. Текстовый тип (Text).
Запишите величины, обозначаемые целыми числами:
Запишите величины, обозначаемые дробными числами:
Запишите величины, имеющие только два значения:
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
7
Группа целых типов
Название типа
Тип
Диапазон
значений
Требуемая
память
Короткое целое со
знаком
Shortint
-128 .. 127 1 байт
Целое со знаком
Integer
-32768 .. 32767 2 байта
Длинное целое со
знаком
Longint
-2147483648 2147483647 4 байта
Короткое целое без
знака
Byte
0 .. 255 1 байт
Целое без знака
Word
0 .. 65535 2 байта
Запишите примеры:
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
8
Группа вещественных типов
Название типа
Тип
Диапазон
значений
Количество
цифр
мантиссы
Размер
(байт)
Вещественное число
одинарной точности
Real
2.9e-39 1.7e+38 11 6
Вещественное число
Single
1.5e-45 3.4e+38 7
4
Вещественное число
двойной точности
Double 5.0e-324 ..
1.7e+308 15 8
Вещественное число
повышенной
точности
Extended 3.4e-4932 ..
1.1e+4932 19 10
Целое
число
в
формате
вещественного
Comp -9.2e+18 ..
9.2e+18 19 8
Запишите примеры:
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
9
Действительные числа записываются в форме с десятичной точкой или в форме с использованием десятичного порядка, который изображается буквой
Е:
28.6 0.65 -0.018 4.0
5Е12 -1.72Е9 73.1Е-16
Булевскому типу данных соответствует идентификатор Boolean. Переменные булевского типа имеют размер 1 байт и могут содержать значения TRUE или
FALSE.
Значению FALSE соответствует 0, любое число отличное от нуля считается
TRUE.
Символьному типу соответствует стандартный идентификатор Char.
Переменные и константы символьного типа могут принимать значения из множества символов кода ASCII.
Определите символьные константы:
Определите символьные переменные:
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
10
Строка символов представляет собой последовательность символов из набора символов кода ASCII, заключенную в одиночные кавычки.
Строки в языке ПАСКАЛЬ - это последовательность символов, записанная между апострофами. Если в строке в качестве содержательного символа необходимо употребить сам апостроф, то следует записать два апострофа.
Для строковых типов данных имеют смысл только отношения «равно» и
«неравно».
Определите строковые константы:
Определите строковые переменные:
Верно ли выражение:
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
11
Операции и выражения
Выражение:
• В программировании служит для определения действий.
• Выражения состоят из операций и операндов.
• По количеству операндов выражения делятся на унарные (один операнд с символом операции: -5, -(-6), not False) и бинарные (два операнда, между которыми ставится символ операции: 5+7, (4-2)*5+10, True or False - истина или ложь).
Классификация операций:
1. Арифметические операции:
унарные: +, -
бинарные: +, -, *, /, div, mod
2. Операции отношения: =, <>, <, >, <=, >=
3. Булевские (логические) операции:
not (логическое отрицание);
and (лог. И);
or (лог. ИЛИ);
xor (исключающее ИЛИ).
4. Строковая операция (конкатенация) +
div – частное от деления
7 div 3 = 2
A:=10 div 3;
mod – остаток от деления
7 mod 3 = 1
A:=25 mod 10;
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
12
Перестановка цифр
▪
Дано трехзначное число. Переставить цифры числа.
Например, для числа 123 программа должна выдать 321.
Program num3;
Var a: integer;
Begin
Readln(a);
// a div 100 = 1
// a mod 10 = 3 -- 300
// (a div 10) mod 10 = 2 -- 20
A:= (a mod 10)*100 + ((a div 10) mod 10)*10 + (a div
100);
End.
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
13
Стандартные функции и операции
Abs (x) соответствует |x|;
ArcTan (x) соответствует arctg(x);
Cos (x) соответствует cos(x);
Sin (x) соответствует sin(x);
Exp (x) соответствует e
x
;
Ln (x) соответствует ln(x);
Sqr (x) соответствует x
2
;
Sqrt (x) соответствует
x
;
Frac (x) - дробная часть: X – INT(X);
Int (x) возвращает целую часть числа;
Round (x) возвращает число равное целой части (округление по правилам арифметики);
Trunc(x) возвращает округленное число, отбрасывая дробную часть числа x.
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
14
Запишите выражения на языке программирования Pascal:
(
)
(
)
(
)
(
)
(
)
2 2
2 4
2
ln
)
;
cos sin
)
;
cos sin
)
;
ln
2
,
0
sin
5
,
0 2
)
c
x
c
ax
d
x
x
c
e
y
x
x
y
x
b
y
x
c
y
x
a
a
y
x
+
+
−
+
+
+
+
−
−
+
+
−
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
15
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
16
Операторы
Операторы предназначены для описания действий, которые будут выполняться при реализации алгоритма.
Простые операторы не содержат в себе других операторов.
1. Оператор присваивания
:=
2. Оператор процедуры состоит из имени, за которым в круглых скобках может располагаться список фактических параметров.
Например, Swap(x, y).
3. Оператор перехода
GoTo
Структурные операторы включают в себя другие операторы.
1. Составной оператор
2. Условные операторы (if, case)
3. Операторы цикла (while, repeat, for)
4. Оператор присоединения with
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
17
Процедуры ввода-вывода
Процедуры ввода являются предопределенными.
Формат процедур
Ввод данных:
Read [(<список ввода>)];
Readln [(<список ввода>)];
Read обеспечивает ввод данных в память ЭВМ, при этом курсор остается на месте. Readln обеспечивает ввод данных в память ЭВМ, при этом осуществляется перевод курсора на новую строку.
Вывод данных:
Write [(<список вывода>)];
Writeln [(<список вывода>)];
Write предназначена для вывода значений на экран. Writeln выводит значения данных на экран и перводит курсор в начало следующей строки.
Список вывода состоит из идентификаторов переменных и выражений, отделенных друг от друга запятой.
В списке вывода могут присутствовать параметры, задающие формат вывода результатов. После идентификатора следует двоеточие и число, определяющее число знакомест для вывода, после второго двоеточия указывается количество знаков после запятой.
Пример: program example_in_out; var b, c: integer; v: real; begin write(‘b=’); readln(b); write(‘c=’); readln(c); v:=(b+c)/3.56; writeln(‘v=’,v:8:4) end.
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
18
Операторы ветвления
Оператор условия If <условие> then <оператор - да> else <оператор - нет>;
предназначен для реализации простого ветвления алгоритма.
Простая конструкция
Расширенная конструкция
Пример:
Проверим квадратное уравнение на наличие корней. для чего вычислим дискриминант и проверим его знак. program example_uravnenie; var a, b, c, d: real; begin writeln(‘Введите коэффициенты квадратного уравнения А,
В и С’); readln(a, b, c); d:=sqr(b)-4*a*c;
if d>0
then writeln(‘Вещественные корни существуют’)
else writeln(‘Нет вещественных корней’); end.
Действие
Ложь
Истина
Условие
Действие1
Ложь
Истина
Условие
Действие2
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
19
Даны действительные числа x, y, z.
Напишите алгоритмы получения: а) max(x,y), б) min(x,y), в) min(y,max(z,x)).
▪
Вводятся три числа. Определить, все ли из них различны.
Program difch;
Var a,b,c: Integer; fl: Boolean;
Begin
Randomize;
A:=random(4); b:=random(4); c:=random(4);
Fl:= (a = b) and (a = c);
Writeln(fl);
End.
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
20
Оператор выбора
Case <селектор> of
<значение1>:<оператор1>;
<значение2>:<оператор2>;
………………………………;
<значениеN>:<операторN>
Else <оператор - нет>;
Оператор Case используется при множественном разветвлении алгоритма, например, если необходимо по числовому значению дня недели указать его название (1 - понедельник, 2 - вторник, 3 – среда и т.д.). program example_case; var n: 1..7; {перечисляемый тип, здесь допускает только значения от 1 до 7 } begin writeln(‘Введите числовое значение дня недели’); readln(n);
case n of
1: writeln(‘понедельник’);
2: writeln(‘вторник’);
3: writeln(‘среда’);
4: writeln(‘четверг’);
5: writeln(‘пятница’);
6: writeln(‘суббота’)
7: writeln(‘воскресенье’); end; end.
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
21
Циклы
Циклы (операторы повтора) используются в программе при необходимости неоднократного повторения какого-либо оператора или группы операторов.
В Pascal различают три вида циклов:
□ цикл с параметром For,
□ цикл с предусловием While,
□ цикл с постусловием Repeat.
Опишите ситуации, когда возникает необходимость повторить некоторые действия:
ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ TURBO PASCAL. БАЗОВЫЙ УРОВЕНЬ
22
Оператор повтора For применяется, когда заранее известно число повторений.
Переменная, хранящая количество повторений называется параметром цикла.
Существует две структуры данного оператора.
Счет по возрастанию:
For <параметр цикла>:=<целочисленное выражение1 > to < целочисленное
выражение2> do <оператор цикла>;
Счет по убыванию:
For <параметр цикла>:=<целочисленное выражение2 > downto <
целочисленное выражение1> do <оператор цикла>;
Пример:
Вывести на экран результат умножения 7 на числа от 11 до 25. program example_for; var i: byte; {i- параметр цикла} r: integer; begin writeln (‘Таблица умножения для 7’);
for i:=11 to 25 do begin
{при выполнении в цикле более одного оператора ставятся операторные скобки Begin end;} r:=7*I; write(r:5);
{вывод результата в строку с промежутком в 5 позиций} end; end.