Воскресенье, 24.11.2024, 12:49
Вы вошли как Гость | Группа "Не зарегистрированный"Приветствую Вас Гость | RSS
Главная | Каталог статей | Мой профиль | Регистрация | Выход | Вход
QO.DO.AM
 >>>мир предметника 050202

Форма входа

Основное меню

Меню 050202

Учительская OnLine

Категории раздела
8 класс-теория [49]
Теоретический материал по Информатики и ИКТ
9 класс [40]
10 класс [34]
11 класс [37]
Лабораторный практикум [23]
Из математической логики
Алексеев Е.Г., Богатырев С.Д. [97]
Алексеев Е.Г., Богатырев С.Д. Информатика. Мультимедийный электронный учебник, содержит: теорию по Информатике и ИКТ, закрепляющие тесты, иллюстративные материалы для урока Информатики и ИКТ
ИНФОРМАТИКА И ИКТ "Учебное пособие" [17]
Содержательный материал по Информатике и ИКТ. Преподается краткое и отборочное содержание для подготовки и проведения уроков Информатики и ИКТ 8-9 классы, 10-11 классы
Технические средства информатизации [31]
Данное учебное пособие предназначено для изучения дисциплины «Технические средства информатизации» в средних специальных учебных заведениях на специальности 2203- «Программное обеспечение вычислительной техники и автоматизированных систем».
Материалы к урокам ИНФОРМАТИКИ И ИКТ для учащихся с 8-11 классы [57]
Переработанный материал по Информатике и ИКТ, блок схемы, выделение основных понятий информатики красочно и кратко, автор разработок Давыдова Елена Владимировна

Статистика

Онлайн всего: 2
Гостей: 2
Пользователей: 0
// Your SEO optimized title page contents

Счетчики

Главная » Архив Информатики и ИКТ » Теория » 9 класс [ Добавить статью ]

Программирование ветвлений на Паскале

Программирование ветвлений на Паскале


Оператор ветвления на Паскале

В языке Паскаль имеется оператор ветвления. Другое его название - условный оператор. Формат полного оператора ветвления следующий:

if <логическое выражение> then <оператор1>
else <оператор2>

Здесь if - "если", then - "то", else - "иначе".

Программирование полного и неполного ветвления

Сравните запись алгоритма БИД1 из предыдущего параграфа с соответствующей программой.

алг БИД1
вещ А, В, С
нач ввод А, В 
     если А>В 
     то С:=А 
     иначе С:=В 
     кв
     вывод С
кон
Program BID1;
var А, В, С : real;
begin readln(А, В);
     if A>B 
     then C:=A 
     else C:=B;
     writeln(С)
end.

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

Простой формой логического выражения является операция отношения. Как и в АЯ, в Паскале допускаются все виды отношений (ниже указаны их знаки):

< (меньше);
> (больше);
<= (меньше или равно);
<= (больше или равно);
= (равно);
<> (не равно).

А теперь запрограммируем на Паскале алгоритм БИД2, в котором использовано неполное ветвление.

алг БИД2 
вещ А, В, С
нач ввод А, В
     С:=А
     если В > А
     то С:=B
     кв
     вывод С
кон
Program BID2;
var А, В, С : real;
begin readln(А, В); 
     С:=А; 
     if B>A
     then C:=B;
     write(С)
end.

Опять все очень похоже. Ветвь else в операторе ветвления может отсутствовать.

Программирование вложенных ветвлений

Запишем на Паскале программу определения большего из трех чисел, блок-схема которой показана на рис. 3.10. Структура этого алгоритма - вложенные ветвления. Алгоритм на АЯ (БИТ2) приведен в предыдущем параграфе.

Рис. 3.10. Блок-схема алгоритма "БИТ" с вложенными ветвлениями


Program BIT2; 
var А, В, С, D: real; 
begin readln(А, В, С); 
     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:=C.

Составим программу упорядочения значений двух переменных.

алг СОРТИРОВКА 
вещ X, Y, С
нач ввод X, Y
     если X>Y
     то С:=Х 
       X:=Y
       Y:=C
     кв
     вывод X, Y
кон
Program SORTING;
var X, Y, С : real;
begin readln(X, Y) ;
     if X>Y
     then begin С : =X;
          X:=Y;
          Y:=C
       end;
     write(X,Y)
end.

Этот пример иллюстрирует следующее правило Паскаля: если на какой-то из ветвей оператора ветвления находится несколько последовательных операторов, то их нужно записывать между служебными словами begin и end. Конструкция такого вида:

begin <Последовательность операторов> end

называется составным оператором. Следовательно, в описанной выше общей форме ветвления <оператор1> и <опера-тор2> могут быть простыми (один) и составными операторами.

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

Наконец, составим еще один, третий вариант программы определения большего числа из трех.

Program BIT3;
var А,В,С,D: real; 
begin readln(А,В,С);
     if (A>=B) and (A>=C) then D:=A;
     if (B>=A) and (B>=C) then D:=B;
     if (C>=A) and (C>=B) then D:=C;
     writeln(D)
end.

Нетрудно понять смысл этой программы. Здесь использованы три последовательных неполных ветвления. А условия ветвлений представляют собой сложные логические выражения, включающие логическую операцию and (И). С логическими операциями вы встречались, работая с базами данных и с электронными таблицами.

Напомним, что операция and называется логическим умножением или конъюнкцией. Ее результат - "истина", если значения обоих операндов - "истина". Очевидно, что если А>=В и А>=С, то А имеет наибольшее значение и т. д. В Паскале присутствуют все три основные логические операции:

and - И (конъюнкция), or - ИЛИ (дизъюнкция), not - НЕ (отрицание).

Сложные логические выражения

Обратите внимание на то, что отношения, связываемые логическими операциями, заключаются в скобки. Так надо делать всегда! Например, требуется определить, есть ли среди чисел А, В, С хотя бы одно отрицательное. Эту задачу решает следующий оператор ветвления:

if (A < 0)or(B < 0)or(C < 0)
     then write ( 'YES ') else write( 'NO ');

Выражение, истинное для отрицательного числа, может быть записано еще и так:

not ( A >= 0)

Вопросы и задания

1. Как программируется на Паскале полное и неполное ветвление?

2. Что такое составной оператор? В каких случаях составной оператор используется в операторе ветвления?

3. Выполните на компьютере все программы, приведенные в данном параграфе.

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

5. Составьте программу сортировки по возрастанию значений в трех переменных: А, В, С.

6. Составьте программу вычисления корней квадратного уравнения по данным значениям его коэффициентов.


Категория: 9 класс | Добавил: metalworker (20.02.2013)
Просмотров: 5065
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]


qo.do.am © 2024