В разветвляющихся программах выполняются вычисления по одним или другим формулам в зависимости от некоторых условий.
Задание
| Краткие теоретические сведения
|
1. Выполнить про-грамму, записанную в правой части, несколько раз с различными значе-ниями переменной j.
Переделать программу с тем, чтобы ввод и вывод осуществлялся с помощью потоковых операторов ввода-вывода.
| Пример. Вычислить значение zпо формулам:
b = s + (5*x + j),
где x = 4× 10-3; s = 1, 1; j = {2; 6, 8; 0, 03; 55; …}.
Здесь в программе для организации разветвлений используется условный оператор if. Формат оператора: if < условие> оператор-1; [else оператор-2; ] или if < условие> оператор-1;
Выполнение оператора ifначинается с проверки условия. Если условие истинно, то выполняется оператор 1, если условие ложно, то выполняется оператор 2.
Если условие ложно и отсутствует оператор 2, то выполняется следующий за if оператор.
При каждом повторении операторов цикла если выражение b < 1, 5 истинно, то zвычисляется по первой формуле. В противном случае - по второй.
|
2. Выполнить про-грамму, записанную в правой части.
Изменить программу с тем, чтобы ввод и вывод осуществлялся с помощью потоковых операторов ввода-вывода.
|
Пример. Ввести с клавиатуры вещественные числа x, y, z, используя функции форматированного ввода. Вычислить max(x + y + z, xyz) * min(x, y, z).
|
3. Выполнить про-грамму с использованием оператора switch, записанную в правой части.
Записать условие задачи.
Изменить программу с тем, чтобы в программе присутствовал оператор goto.
| Для организации выбора из множества различных вариантов используется оператор выбора switch. Формат оператора:
switch (выражение)
{[ case константное выражение 1]: [ список операторов 1];
……………………………………………………..
[ case константное выражение n]: [ список операторов n];
[ default: [ список операторов ]; ] }
Выражение в круглых скобках может быть целой или символьной константой. Выполняется оператор следующим образом: вычисляется выражение в круглых скобках, и полученное значение последовательно сравнивается с константными выражениями, следующими за ключевыми словами case.Если одно из константных выражений совпадает со значением константного выражения, то управление передается на оператор, помеченный соответствующим ключевым словом case. Если совпадения нет, то управление передается на оператор, помеченный ключевым словом default, а в случае его отсутствия управление передается на следующий после switch оператор.
Оператор break изменяет поток управления, он передает управление оператору, следующему за switch.
Оператор return 0; завершает выполнение функции и возвращает системе значение 0.
В некоторых случаях приходится использовать оператор goto, который передает управление на оператор, помеченный меткой (например, оператор goto a; передает управление оператору: a: std:: cin> > k; Здесь a - метка оператора).
|
4. Написать и выполнить программу в соответствии с разработанной блок-схемой в лабораторной работе № 2.
5. Написать программу, реализующую диалог на любую тему, с использованием оператора switch.
В начало практикума