Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Урок 1(Паскаль).doc
Скачиваний:
3
Добавлен:
11.11.2018
Размер:
236.03 Кб
Скачать

Логические операции

Выражение

Значение

Выражение

Значение

not true

false

not false

true

true and true

true

true or true

true

true and false

false

false or true

true

false and true

false

true or false

true

false and false

false

false or false

false

Пример. Пусть х=3, у=-9. рассмотрим некоторые логические выражения и их значения.

Прстые выражения

Значения

Сложные выражения

Значения

х = 3

true

not (y<=-50)

true

х > y

true

(1<x) and (x<5)

true

7 mod 3=1

true

(x>4) or (y<-15)

false

y div 2=4

false

(x>4) or (y>-15)

true

Двойное неравенство 1<х<5 как сложное логическое выражение записывают так: (1<x) and (x<5). Совокупность неравенств вида x<1; x>5 так: (x<1) or (x>5). Простые логические выражения, из которых состоят сложные, всегда берут в круглые скобки.

Операторы ввода данных (read, readln). Задать значения переменным можно двумя способами: при помощи оператора присваивания, например, х:=5, или оператора ввода данных с клавиатуры read. Второй способ делает программу более универсальной (массовой), поскольку даёт возможность решать одни и те же задачи для разных значений переменных. Оператор read в общем виде выглядит так:

read(<переменная 1>, …, <переменная n>);

Действие оператора. Выполнение программы приостанавливается. Система переходит в режим ожидания ввода данных (экран темный, мигает курсор ввода). Значения данных пользователь набирает на клавиатуре через пропуск или нажимает после каждого данного клавишу Enter. В результате соответственным переменным будут присвоены конкретные значения.

Оператор readln выглядит так:

readln(<переменная 1>, …, <переменная n>);

Различие между операторами read и readln заключается в том, что во время выполнения оператора readln лишние данные в строке ввода игнорируются. Следующий оператор ввода будет считывать данные с новой строки. Этот оператор используют обычно при работе с текстовыми файлами.

Замечание 1. Оператор readln без параметров можно использовать в среде ТР для MS-DOS для просмотра окна с результатами. Для того, чтобы перейти в режим редактирования программы, достаточно нажать любую клавишу. В среде ТР для Windows результаты выполнения программы система выводит в отдельном окне, поэтому там этим приемом не пользуются.

Замечание 2. Значения переменных логического и перечисляемого типов вводить с клавиатуры нельзя.

Операторы вывода данных (write, writeln). Для вывода на экран сообщений и результатов работы программы используют операторы write и writeln. Оператор write выглядит так:

write(<выражение 1>, …, <выражение n>);

В списке вывода могут быть константы, переменные или выражения.

Действие оператора. Константы, значения переменных и выражений выводят на экран в окно вывода. В среде TP для MS-DOS это окно можно активизировать, например, с помощью комбинации клавиш Alt+F5.

Оператор

writeln(<выражение 1>,…<выражение n>);

действует почти также, как и оператор write. Различие в том, что следующий после него оператор вывода будет печатать значение в новой строке.

Для перехода на новую строку экрана или пропуска строки используют writeln без параметров.

Форматированный вывод данных. С помощью операторов write и writeln можно осуществить форматированный вывод данных. Форматированиеэто представление результатов в нужном для пользования виде. Для этого после выражения записывают формат – двоеточие и число (:n), обозначающее количество позиций на экране, которые необходимо выделить для вывода значения этого выражения. Формат :n применяют для данных целого, логического, символьного и строкового типов. При выводе данного действительного типа указывают общее количество позиций (n) и количество позиций для дробной части (m), то формат выглядит так :n:m.

Задача 1.1. Вычислить высоты треугольника со сторонами а, b, с, используя формулы 1.1, 1.2, 1.3:

1.1

1.2

1.3

где p = (a + b +с)/2.

Схема алгоритма решения задачи приведена на рис. 1.1.

Рис. 1.1. Схема алгоритма решения задачи 1.1

Исходными данными для решения являются значения длин сторон треугольника – а, b, с. Для ввода этих значений следует использовать оператор read . При этом значения а, b, с, должны быть расположены на одной строке экрана дисплея. В программе используются переменная р для вычисления полупериметра и вспомогательная переменная t для исключения повторений. Вычисленные значения высот ha, hb, hc необходимо вывести со своими именами, каждую на одной строке.

Программа имеет вид:

Program Htr;

uses Crt;

var a, b, c, p, t, ha, hb, hc: real; {Объявляем переменные}

begin

clrscr; {Очищаем экран перед выводом результатов}

read(a,b,c); {вводим с клавиатуры значения сторон}

p := (a + b + c)/2; {Вычисляем полупериметр}

t:= 2*sqrt(p * (p – a) * (p – b) * (p – c));

ha:=t/a; {Вычисляем высоту ha}

hb:=t/b; {Вычисляем высоту hb}

hc:=t/c; {Вычисляем высоту hc}

writeln(' ha =', ha:5:2);

writeln(' hb =', hb:5:2);

writeln(' hc =', hc:5:2);

writeln(‘Программу составил студент Петров И.И.’);

readln {нажимаем клавишу Enter}

end.

В программе Htr отсутствуют метки, константы, типы, функции и процедуры. Поэтому разделы определения и описания указанных структур отсутствуют.

Примечание: С целью сокращения текстов программ:

1) можно опускать заголовки;

2) модуль Crt подключается не всегда, хотя имеет смысл подключать этот модуль даже тогда, когда его процедуры и функции не применяются;

3) в языке Паскаль допускается размещать на одной строке несколько операторов. Однако этого следует избегать, так как такое размещение приводит к плохому восприятию программы.

Задание 1.1. Проанализируйте программу Htr. Поменяйте значения сторон и выполните программу.

  1. Для следующих формул записать соответствующие арифметические выражения на языке Паскаль:

а) ; б) ; в) 10α -3β; г)

  1. Даны x, y, z. Вычислить а, b, если:

а)

б) , .

  1. В банк был положен вклад в размере N грн. Через три года он увеличился на 50%. Сколько денег получил вкладчик?

  1. В билетной кассе аэропорта имеются К билетов по N1 грн. и М билетов на ночной рейс по цене N1 грн. Определите предполагаемую выручку авиа кассы за этот дней

  1. Самолет делает две посадки для дозаправки. Определите, сколько горючего требуется для перелета, если при первой посадке было долито 60%, а при второй 70% до полного бака.

  1. Пусть заданы координаты трёх вершин треугольника А(1;1), В(2;2), С(-1;2) Вычислить биссектрису Wa и радиус описанной окружности R (R = abc / (4s)), где: s – площадь треугольника; p – полупериметр треугольника.

  1. Ввести размер ребра куба. Определить объем и площадь боковой поверхности куба.

  1. Сколько секунд в сутках, неделе, году?

  1. Цены на два вида товаров возросли на p процентов. Вывести старые и новые цены.

  1. Ввести целое трехзначное число. Определить первую цифру числа.

  1. Дано натуральное трехзначное число n. Чему равно произведение его цифр?

  1. Ввести целое четырехзначное число. Найти сумму цифр этого числа.