Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Пример программы разветвленной структуры




Оператор выбора

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

Операции отношения

Операция Название
= Равно
<> Не равно
> Больше
< Меньше
>= Больше или равно
<= Меньше или равно
Операция Название
and И
or Или

В операторе if можно одновременно проверять несколько условий.

Например:

if (a>b)and(a>c) then writeln(’a – max’);

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

Паскаль допускает вложенность операторов if.

Например:

if n>0 then

if (m div n)>n then m:= m - n

else m:= m + n;

Структура else всегда относится к ближайшему оператору if.

Если n>0 и (m div n)>n будет выполнено m:= m-n.

Если n>0, но (m div n)≤n будет выполнено m:= m + n.

Если n≤0 – переход к следующему оператору.

Задача.

Найти максимальное число из трех вещественных чисел.

program max;

var

a, b, c: real;

begin

writeln (’введите a, b, c’); readln (a, b, c);

if a>=b then

if a>=c then writeln (’max - a’)

else writeln (’max - c’)

else

if b<=c then writeln (’max - b’)

else writeln (’max - c’);

readln;

end.

Второй способ решения этой задачи:

program max_1;

var

a, b, c: real;

begin

writeln (’введите a, b, c’);

readln (a, b, c);

if (a>=b) and (a>=c) then writeln (’max-a’);

if (b>=a) and (b>=c) then writeln (’max-b’);

if (c>=a) and (c>=b) then writeln (’max-c’);

readln;

end.

Если a=b=c - то все три оператора if будут выполнены.

Этот оператор предназначен для замены конструкций из вложенных if.

Структура:

case N of

N1: P1;

N2: P2;

NN: PN;

[else P;]

end;

[else P;] – необязательная часть оператора.

где N – целочисленная переменная, или выражение целого типа;

N1, N2, … NN – возможные значения переменной N;

P, P1, P2, … PN – простые или составные операторы.

По этому оператору:

если значение N = N1, то выполняется P1 (после чего управление передается оператору, следующему за оператором case...of);

если значение N = N2, то выполняется P2, (после чего управление передается оператору, следующему за оператором case...of);

если N не принимает ни одного из перечисленных значений, управление передается оператору P;

если структура else отсутствует и N не принимает ни одного из перечисленных значений, управление передается следующему за case...of оператору.

Например:

case N of

1, 2, 5: writeln (’a’);

7.. 10: writeln (’b’);

end;

1, 2, 5 – перечисляемые значения разделяются «,».

7.. 10 – интервал задается начальными и конечными значениями через «..».

Задача.

1. Вычислить значение функции:

y= .

Значение аргумента х в градусах ввести с клавиатуры.

2. Таблица идентификаторов

Наименование переменной Обозначения в программе
  Функция y
  Аргумент x

3. Листинг программы.

program lab2;

uses

crt;

var

x, y: real;

begin

clrscr;

writeln (’Введите x’);

readln (x);

if x>90 then writeln(’функция не определена’)

else

{составной оператор}

begin

if x<0 then y: = 0

else y: = sin (x*pi/180);

writeln (’y = ’,y:8:3);

end;

readln;

end.

Вопросы для самоконтроля

  1. Какие алгоритмические конструкции называются ветвлениями?
  2. Для чего используют оператор goto?
  3. Почему при использовании нескольких условий в одном операторе if … then … else, каждое условие заключается в круглые скобки?
  4. Перечислите основные логические операции.
  5. Перечислите основные операции отношения.
  6. В каких случаях прибегают к использованию оператора case … of?

9.3. Методические указания для выполнения практического задания №5. «Ветвления»

Цель работы: Ознакомиться с алгоритмами разветвленной структуры, логическим оператором, оператором выбора.

Задание:

1. В приложении 6 выбрать свой вариант задания.

2. Выполнить практическое задание №5, используя пример программы разветвленной структуры.

3. Составить блок-схему алгоритма.

4. Написать программу и отладить ее по заранее подготовленному тесту.

5. Оформить задание в тетради для практических занятий.

6. Результат выполнения программы предъявить преподавателю.

7. Ответить на вопросы самоконтроля.

8. Защитить выполненную работу у преподавателя.

Приложение 6. Таблица вариантов заданий

Вариант Задание
  Переменной k присвоить номер четверти плоскости, в которой находится точка с координатами x и y (xy=0).
  Если сумма трех попарно различных действительных чисел x, y, z меньше единицы, то заменить меньшее из x и y полусуммой двух других, в противном случае уменьшить все числа в 5 раз.
  Даны три действительных числа. Выбрать из них те, которые принадлежат интервалу (1, 3).
  Написать программу, которая выбирает наименьшее из четырех заданных чисел.
  Даны три действительных числа. Возвести в квадрат те из них, значения которых неотрицательны.
  Даны действительные числа х, у, и z. Вычислить max (x + y + z, xyz).
  Поменять местами значения переменных a, b, c не равных между собой таким образом, чтобы а > b > c.
  Меньшее из двух значений переменных вещественного типа заменить нулем, а в случае их равенства – заменить нулями оба.
  Если сумма двух попарно различных действительных чисел x, y, z меньше единицы, то наименьшее из этих трех чисел заменить полусуммой двух других, в противном случае возвести все числа в квадрат.
  Наибольшее из трех различных значений переменных целого типа х, у и z уменьшить на 3.
  Даны два действительных числа, не равных между собой. Меньшее из них заменить их полусуммой.
  Если значение w не равно 0 и при этом котангенс от w меньше 0.5, тогда поменять знак у w, а если значение равно 0, тогда присвоить w значение 1.
  Даны действительные числа х, у и z. Получить min (x,y,z).
  Две точки плоскости заданы своими координатами. Определить, лежат ли они в одной или разных координатных плоскостях.
  Даны действительные числа х, у, и z. Вычислить min2 (x + y + z / 2, xyz) +1.
  Даны действительные числа a, b, c. Удвоить эти числа, если a > b > c, и заменить их абсолютными значениями, если это не так.
  Известно, что из четырех чисел одно отлично от трех других, равных между собой. Присвоить номер этого числа переменной n.
  Написать программу, которая выбирает наибольшее из четырех заданных чисел.
  Даны действительные числа x и y. если x и y отрицательны, то каждое значение заменить его модулем; если отрицательно только одно из них, то оба значения увеличить на 0.5, в противном случае извлечь из каждого квадратный корень.
  Две точки плоскости заданы своими координатами. Определить, лежат ли они в одной (распечатать ее номер) или разных координатных четвертях.
  Даны два действительных числа. Заменить первое число нулем, если оно меньше или равно второму, и удвоить оба числа в противном случае.
  Даны действительные числа a, b, c, d. Если a < b < c < d, то каждое число заменить небольшим из них; если a > b > c > d, то числа оставить без изменения; в противном случае все числа заменить их квадратами.
  Даны действительные числа х, у и z. Получить min (x,y,z).
  Даны три действительных числа. Выбрать из них те, которые принадлежат интервалу (1, 3).
  Меньшее из двух значений переменных вещественного типа заменить нулем, а в случае их равенства – заменить нулями оба.
  Даны действительные числа х, у и z. Обнулить отрицательные числа.
  Известно, что из трех целых чисел одно отлично от трех других, равных между собой. Присвоить номер этого числа переменной n.
  Наименьшее из трех различных значений переменных целого типа х, у и z увеличить на 3.  
  Если сумма трех попарно различных действительных чисел x, y, z больше единицы, то наибольшее из этих трех чисел заменить полусуммой двух других, в противном случае возвести все числа в квадрат.
  Даны два действительных числа, не равных между собой. Наибольшее из них заменить их полусуммой.



Поделиться с друзьями:


Дата добавления: 2014-12-27; Просмотров: 948; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.019 сек.