СПИСОК ИСПОЛЬЗУЕМЫХ ИСТОЧНИКОВ ИНФОРМАЦИИ




I. Теоретические сведения

В линейной программе все операторы выполняются последовательно, один за другим. Таким способом можно записывать только очень простые алгоритмы. Для того чтобы в зависимости от конкретных значений исходных данных обеспечить выполнение разных последовательностей операторов, применяются операторы ветвления if и case.

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

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

Формат оператора:

if выражение then оператор_1 [else оператор_2:]

Сначала вычисляется выражение, которое должно иметь логический тип. Как правило, в выражении используются знаки операций отношения (меньше <, больше >, равно =, не равно <>, меньше или равно <=, больше или равно >=)2. Если требуется проверить несколько условий, их объединяют знаками логических операций and (И), or (ИЛИ), xor (исключающее ИЛИ) и not (отрицание). Примеры логических выражений:

а < 2

(х <> 0) and (у <> 0)

 

Если выражение имеет значение true, выполняется первый оператор, иначе — второй (рисунок 1). Ветвь else может отсутствовать. После выполнения операторов из соответствующей ветви управление передается оператору, следующему за условным оператором.

 

Рисунок 1. – Структурная схема условного оператора

 

Если по какой-либо ветви требуется выполнить не один, а несколько операторов, применяют блок (составной оператор). Блок обрамляется ключевыми словами begin и end:

if а=0 then begin х:=0; у:=0 end

else begin х:=1; у:=2 end;

Внутри условного оператора можно записать еще один условный оператор, например: if а >= b then if а = b then с:= 0 else с:= 1 else с:= 2;

Ключевое слово else всегда считается относящимся к ближайшему слову if, т.е.

if а >= b then if а = b

then с:= 0 else с:= 1

else с:= 2;

 

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

 

1.2 Оператор case

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

Рисунок 2. – Структурная схема оператора выбора

 

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

Формат оператора:

case выражение of

константы_1: оператор_1;

константы_2: оператор_2;

...

константы_n: оператор_n;

[else: оператор]

end;

 

II. Рабочее задание

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

2. Разработать алгоритм, составить, отладить и испытать программу с использованием оператора CASE, которая решает следующую задачу: По введенному k – числу грибов – выводит на экран фразу «Мы нашли в лесу k грибов», причем согласовывает окончание слова «гриб» с числом k.

 

III. Выполнение работы

Задание 1. Для выполнения данного задания для начала рассмотрим график, показанный на рисунке 3.

Рисунок 3. – График функции

 

Проанализировав данную зависимость переменной y от x, мы приходим к выводу, что график меняется от -7 до 3 и состоит из пяти составляющих уравнений, объединяющихся в одну систему уравнений:

 

y =

 

Опираясь на данную систему уравнений, мы построим блок-схему как показано на рисунке 4.

Рисунок 4. – Блок-схема 1

 

Теперь, когда мы имеем готовую блок-схему для будущей программы, нетрудно написать сам код (Рисунок 5).

 

Рисунок 5. – Код программы с оператором ветвления

После этого этапа составим таблицу зависимости y от x по графику, чтобы потом проверить данные непосредственно на самой программе (Таблица 1).

 

Таблица 1. – Зависимость y от x

x -5 -6   -2 2,5 -9
y 0,5     -0,5

 

Результаты подстановки значений x покажем на рисунке 6.

 

Рисунок 6. – Результаты y от x

 

Программа работает. Ошибок не выявлено.

 

Задание 2. Анализируя задачу: «По введенному k – числу грибов – выводит на экран фразу «Мы нашли в лесу k грибов», причем согласовывает окончание слова «гриб» с числом k.» – мы понимаем, что число k должно быть целым неотрицательным числом и слово «гриб» будет иметь всего три вида окончаний, которые напрямую зависят от числа k.

Составим блок-схему для данной задачи (Рисунок 7).

 

Рисунок 7. – Блок-схема 2

 

Имея готовую блок схему, напишем код программы как показано на рисунке 8.

 

Рисунок 8. – Код программы с оператором выбора

Чтобы испытать программу, подставим вместо k необходимое число, проверим падеж слова «гриб».

 

 

Как показала практика, программа работает без ошибок.

 

Вывод: Таким образом, мы научились программировать разветвляющиеся алгоритмы в среде ПО Pascal ABC.

 

 

СПИСОК ИСПОЛЬЗУЕМЫХ ИСТОЧНИКОВ ИНФОРМАЦИИ

1. Лабораторная работа №2. Программирование разветвляющихся алгоритмов в среде Pascal ABC. URL: file:///G:/информатика/ЛБ%202/ЛР2_Программирование%20разветвляющихся%20алгоритмов%2027%20заданий.pdf (Дата обращения: 24.03.2022). – Текст электронный.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2022-07-03 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: