Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьшения длины пробега и улучшения маневрирования ВС при...
История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...
Топ:
Характеристика АТП и сварочно-жестяницкого участка: Транспорт в настоящее время является одной из важнейших отраслей народного...
Оценка эффективности инструментов коммуникационной политики: Внешние коммуникации - обмен информацией между организацией и её внешней средой...
Проблема типологии научных революций: Глобальные научные революции и типы научной рациональности...
Интересное:
Как мы говорим и как мы слушаем: общение можно сравнить с огромным зонтиком, под которым скрыто все...
Берегоукрепление оползневых склонов: На прибрежных склонах основной причиной развития оползневых процессов является подмыв водами рек естественных склонов...
Уполаживание и террасирование склонов: Если глубина оврага более 5 м необходимо устройство берм. Варианты использования оврагов для градостроительных целей...
Дисциплины:
2017-09-30 | 546 |
5.00
из
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
Основные темы параграфа:
■ оператор ветвления на Паскале;
■ программирование полного и неполного ветвления;
■ программирование вложенных ветвлений;
■ логические операции;
■ сложные логические выражения.
Оператор ветвления на Паскале
В языке Паскаль имеется оператор ветвления. Другое его название — условный оператор.
Формат полного оператора ветвления следующий:
if <логическое выражение> then <оператор1>
else <оператор2>
Здесь if — «если», then — «то», else — «иначе».
Программирование полного и неполного ветвления
Сравните запись алгоритма ВИД 1 из предыдущего параграфа с соответствующей программой.
Очень похоже на перевод с русского языка на английский. Обратите внимание на следующее отличие: в программе нет специального служебного слова, обозначающего конец ветвления. Здесь признаком конца оператора ветвления является точка с запятой. (Разумеется, оставлять в программе пустую строку совсем не обязательно. Здесь это сделано только ради наглядности.)
Простой формой логического выражения является операция отношения. Как и в АЯ, в Паскале допускаются все виды отношений (ниже указаны их знаки):
< (меньше); <= (больше или равно);
> (больше); = (равно);
<= (меньше или равно); <> (не равно).
А теперь запрограммируем на Паскале алгоритм БИД2, в котором использовано неполное ветвление.
Опять всё очень похоже. Ветвь else в операторе ветвления может отсутствовать.
Программирование вложенных ветвлений
Запишем на Паскале программу определения большего из трех чисел, блок-схема которой показана на рис. 2.6. Структура этого алгоритма — вложенные ветвления. Алгоритм на АЯ (БИТ2) приведен в предыдущем параграфе.
|
Program BIT2;
var А, В, C, D: real;
Begin
readln(А, В, C);
if A>B
then if A>C then D:=A else D:=B
else if B>C then D:=B else D:=C;
writeln(D)
End.
Обратите внимание на то, что перед else символ «;» не ставится, так как этот символ является разделителем операторов. Вся ветвящаяся часть структуры алгоритма заканчивается на точке с запятой после оператора D: =С.
Составим программу упорядочения значений двух переменных.
Этот пример иллюстрирует следующее правило Паскаля: если на какой-то из ветвей оператора ветвления находится несколько последовательных операторов, то их нужно записывать между служебными словами begin и end. Конструкция такого вида:
begin <последовательность операторов> end
называется составным оператором. Следовательно, в описанной выше общей форме ветвления <оператор1> и <оператор2> могут быть простыми и составными операторами.
Логические операции
Наконец, составим еще один, третий вариант программы определения наибольшего числа из трех.
Program BIT3;
var А, В, С, D: real;
Begin
readln(А,В,С);
if (А>=В) and (А>=С) then D:=A;
if (В>=А) and (В>=С) then D:=B;
if (C>=A) and (C>=B) then D:=C;
writeln(D)
End.
Нетрудно понять смысл этой программы. Здесь использованы три последовательных неполных ветвления. А условия ветвлений представляют собой сложные логические выражения, включающие логическую операцию and (И). С логическими операциями вы встречались, работая с базами данных и с электронными таблицами.
Напомним, что операция and называется логическим умножением или конъюнкцией. Ее результат — «истина», если значения обоих операндов — «истина». Очевидно, что если А ³ В и А ³ С, то А имеет наибольшее значение и т.д. В Паскале присутствуют все три основные логические операции:
and — И (конъюнкция),
or — ИЛИ (дизъюнкция),
not — НЕ (отрицание).
Замечание. Мы рассмотрели три варианта решения задачи о поиске максимального числа из трех заданных (БИТ1, БИТ2, БИТЗ). Предложенные варианты решения, помимо всего прочего, отличаются еще и эффективностью: эффективность тем выше, чем меньше исполняется операций при выполнении программы. С этой точки зрения, самым неэффективным является алгоритм БИТЗ. В любом случае в нем будет выполняться 6 операций отношения. При исполнении алгоритмов БИТ1 и БИТ2 выполняются 2 операции отношения. Понятно, что на практике необходимо использовать наиболее эффективные алгоритмы.
|
|
|
Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...
Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...
История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...
Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!