Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОАиП.doc
Скачиваний:
22
Добавлен:
15.11.2018
Размер:
435.2 Кб
Скачать

7. Объясните назначение условного оператора в языке программирования Паскаль (Delphi). Опишите структуру условного оператора. Приведите пример фрагмента блок-схемы с условием.

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

Условный оператор if

Условный оператор позволяет проверить некоторое условие и в зависимости от результатов проверки выполнить то или иное действие.

Структура условного оператора:

if <логическое выражение>

then

<Оператор 1>

[else

<Оператор 2>]

Здесь if, then, else - зарезервированные слова (если, то, иначе), квадратные скобки означают, что конструкция else <Оператор 2> может отсутствовать, тогда он называется сокращенным условным оператором.

Например, вычисление квадратного корня из числа "a" проводится при условии a>=0, операторами:

IF a>=0 Then b := Sqrt(a)

Else

begin

WriteLn('a<0');

Readln;

Halt;

end;

Пример фрагмента блок-схемы с условием.

8. Объясните назначение оператора выбора (варианта) в языке программирования Паскаль (Delphi). Опишите структуру оператора выбора (варианта). Приведите пример фрагмента блок-схемы с условием.

Разработайте программу, которая по введенному пользователем номеру дня недели выводит на экран его название.

Оператор выбора (варианта)

Оператор case позволяет сделать выбор из произвольного числа имеющихся вариантов. Он состоит из выражения, называемого селектором (selection — выбор альтернативы), и списка параметров, каждому из которых предшествует список констант выбора (список может состоять и из одной константы).

Структура оператора case:

case <выражение-селектор> of

<список1>: <оператор1; >

<список2>: <оператор2; >

<списокN>: <onepaторN>

else <оператор>

end;

Здесь case, of, end – зарезервированные слова языка Паскаль, которые можно перевести соответственно как ВЫБОР, ИЗ, КОНЕЦ. Между словами of и end располагается case-список, состоящий из операторов, перед которыми записываются одна или более меток-констант, отделяемых от оператора двоеточием.

Ветвь ELSE может отсутствовать.

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

Пример фрагмента блок-схемы с условием.

9. Охарактеризуйте сущность логических операций в Паскале, опишите логический тип данных. Приведите таблицы истинности для операций and и or.

Разработайте программу для нахождения минимального из трех целых чисел, вводимых пользователем.

Логические операции, логический тип данных

Кроме арифметических операций, можно выделить категорию операций отношения, которые выполняют сравнение двух операндов и определяют: истинно выражение или ложно. Результат выражения с использованием таких операций имеет логический тип. Определены следующие операции отношения:

< - меньше;

<= - меньше или равно;

= - равно;

> - больше;

>= - больше или равно;

<> - не равно.

Результат каждого логического выражения с использованием одной из перечисленных операций отношения может принимать одно из двух значений: false или true. Операции отношения определены над числовыми переменными, над символьными переменными и строками.

Логические операции допустимы только по отношению к операндам логического типа.

Логические переменные должны быть описаны в разделе описания переменных как имеющие тип Boolean (ЛОГИЧЕСКИЙ). Например,

Var

x, y, z : Boolean;

Boolean - это логический тип данных, занимает в памяти 1 байт. Переменная этого типа может хранить только одно из двух возможных значений - True (истина) или False (ложь).

Логический тип определен таким образом, что FALSE < TRUE.

В ТУРБО ПАСКАЛЬ введены еще разновидности логического типа: ByteBool, WordBool и LongBool, которые занимают в памяти ЭВМ один, два и четыре байта соответственно.

К булевским операндам применимы следующие логические операции:

  • andлогическое умножение (конъюнкция А^В, операция И).

  • or – логическое сложение (дизъюнкция AvB, операция ИЛИ).

  • not логическое отрицание (инверсия, операция НЕ). Имеет один операнд, который и инвертирует. Например, not true даст в результате false.

  • xor - ИСКЛЮЧАЮЩЕЕ или.

Таблица истинности — это таблица, задающая логическую функцию.

A

B

A and B

A or B

0

0

0

0

0

1

0

1

1

0

0

1

1

1

1

1

Program min_number;

var

n, i, min : integer;

begin

for i:=1 to 3 do

begin

write('Введите ',i,'-е число');

readln(n);

if i=1 then min:=n else

if n<min then min:=n;

end;

writeln('min = ', min);

readln;

end.

10. Перечислите операторы, которые служат для организации циклов в языке программирования Паскаль (Delphi). Опишите две формы оператора цикла со счетчиком. Приведите пример использования оператора for.

Разработайте программу, которая выводит на экране символы американскою стандартного кода обмена информацией (ASCII) в порядке убывания кода.