- •ПРЕДИСЛОВИЕ
- •1.1. История и классификация языков программирования высокого уровня
- •1.2. Первое (знакомство с Паскалем
- •Задания
- •Лекция 2
- •2.1. Некоторые сведения о системе ТУрбо-Паскаль
- •2.2. Способы описания языка программирования
- •Лекция 3
- •3.2. Типы данных
- •4.1. Структура Паскаль-программы
- •4.2. Арифметические операции, функции, выражения Арифметический оператор присваивания
- •Форматы процедуры write
- •Задания
- •1. Что будет напечатано программой
- •если последовательно вводятся три числа: 36, -6, 2345?
- •5.2. Функции, связывающие различные типы данных
- •Задания
- •Теперь посмотрим, как это программируется наТЛаскале.
- •Здесь
- •<параметр цикла>::= <имя простой переменной порядкового типа>
- •Задания
- •7.1. Подпрограммы-процедуры
- •7.2. Подпрограммы-функции
- •7.4. Рекурсивные подпрограммы
- •8.1. Что такое рекуррентная последовательность
- •8.2. Программирование вычислений рекуррентных последовательностей
- •Задания
- •Задания
- •6. Вывод результата.
- •Теперь будем составлять подпрограммы.
- •Задания
- •12.2. Операции над множествами
- •12.3. Примеры использования множеств
- •Красивая программа! К сожалению, ею нельзя воспользоваться для
- •В этой программе использована функция определений размера файла:
- •.Fiiesize(<HMH файловой переменной>);
- •Задания
- •14.2. Работа с файлами записей
- •Задания
- •15.2. Связанные списки
- •Лекция 16
- •16.1. Организация внешних подпрограмм
- •16,2. Создание и использование модулей
- •распечаткой текста программы с подробными комментариями.
- •выполнения следующих операции над обыкновенными дробями вида -q
- •(Р — целое, Q — натуральное):
- •1) сложение;
- •2) вычитание;
- •3) умножение;
- •4) деление;
- •5) сокращение дроби;
- •7) функции, реализующие операции отношения (равно, не равно,
- •Используя этот модуль, решить задачи:
- •При разработке модуля рекомендуется такая последовательность
- •Задания
- •Приведем текст программы целиком.
- •ЗАДАНИЯ ПО ТЕМЕ “ЛИНЕЙНЫЕ АЛГОРИТМЫ”
- •ЦЕЛОЧИСЛЕННАЯ АРИФМЕТИКА
- •Сортировка массивов
- •ЗАДАЧИ ПО ТЕМЕ “ОБРАБОТКА СТРОК”
- •ЗАДАНИЯ ПО ТЕМЕ “МОДУЛИ”
- •ЗАДАНИЯ ПО ТЕМЕ “ДИНАМИЧЕСКИЕ ПЕРЕМЕННЫЕ”
- •Задачи, предлагавшиеся на школьных олимпиадах по программированию (Пермская область)
- •Учебное издание
Задания
1. Что будет напечатано программой
Program |
Roots; |
|
Var |
В, |
С, D: Real; |
Begin |
|
С); |
Read(В, |
D := Sqrt (Sqr(B) - 4 * 0 ;
WriteLnOxl®’, (-B + D) /2, ,x2=>, (-B - D) /2)
End.
если в качестве исходных данных -заданы числа 1.0 и -2.0? 2. Что будет напечатано программой
Program |
Leas; |
|
Var |
X |
Real; |
|
T |
Boolean; |
Begin
Read(X);
T :*= X < Round(X) ;
Read(X);
T := T And (X < Trunc(X));
WriteLn(T)
End.
если последовательно вводятся два значения: 3.4, 7.9? 3. Что будет напечатано программой:
Program |
Aba; |
|
|
|
|
Var А, |
В |
Integer; |
|
||
Begin |
|
В, |
А); |
|
|
Read(A, |
2, А |
5) |
|||
Writeln(A, |
В |
||||
End. |
|
|
|
|
|
если последовательно вводятся три числа: 36, -6, 2345?
4. Составьте программу вычисления суммы двух целых чисел, ко торая будет вести диалог с пользователем в следующем виде (на месте многоточий вводимые и выводимые числа):
ВВЕДИТЕ ДВА СЛАГАЕМЫХ
а =
Ъ *
РЕЗУЛЬТАТ ВЫЧИСЛЕНИЙ:
а + Ъ *
Знак операции дизъюнкции “v” читается как частица “или” На пример, (х = 0) V (х = 1). Формула дает истину, если х — двоичная цифра (0 или 1). Следовательно, дизъюнкция дает в результате ис тину, если хотя бы один операнд — “истина”
В Паскале логические значения обозначаются служебными слоъами false (ложь) и true (истина), а идентификатор логического типа — boolean.
Кроме величин (констант и переменных) типа boolean, логические значения false, true принимают результаты операции отношения.
Операции отношения осуществляют сравнение двух операндов и определяют, истинно или ложно соответствующее отношение между ними.
Соперация отношения>
----------------------- =►<выражение>— >•<знак отношения> -- ■
<выражение>---з* |
|
<знак отношения>::= = (равно) |О |
(не равно) |> (больше) | |
< (меньше) |> = (больше или равно) |
< = (меньше или равно). |
Примеры записи отношении: х < у; а + Ь> = c/d; abs(m - n) < = 1. Примеры вычисления значений отношений:
Отношение |
Результат |
12 > = 12 |
true |
56 > 10 |
true |
11 < = 6 |
fa lse |
Логические операции выполняются над операндами булевского типа. Имеются четыре логические операции: not — отрицание; and
— логическое умножение (конъюнкция); ог — логическое сложение (дизъюнкция). Кроме этих трех обязательных операций, в ТурбоПаскале имеется еще операция “исключающее ИЛИ” Ее знак — слу жебное слово хог. Это двухместная операция, которая в результате дает значение “истина” , если оба операнда имеют ранные логические значения.
Операции перечислены в порядке убывания приоритетов. Резуль таты логических операций для различных значений операндов приве дены в табл. 5.1.