Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект лекций -=Вычислительная техника и прог...docx
Скачиваний:
9
Добавлен:
01.05.2025
Размер:
1.84 Mб
Скачать

3.7.1.2. Оператор switch

Оператор switch предназначен для разветвления процесса на несколько направлений.

Формат записи:

switch (выражение) {

case константное_выражение_1: [список_операторов_1] ;

case константное_выражение_2: [список_операторов_2] ;

case константное_выражение_n: [список_операторов_n] ;

[default : операторы] ;

}

Выполнение начинается с вычисления 'выражения’, а затем управление передается первому оператору из списка, помеченного константным выражением, значение которого совпало с вычисленным. После этого, если выход из переключателя не указан явно, последовательно выполняются все остальные ветви.

Выход из оператора switch может быть организован с помощью операторов break или return.

Обозначение оператора в алгоритмах. Блок-схема алгоритма часть программы, соответствующей оператору switch, представлена на рис. 3.9.

Рисунок 3.9 — Блок-схемы алгоритма оператора switch

В качестве примера использования оператора switch можно привести программу реализации простейшего калькулятора:

#include <iostream.h>

void main ()

{

int a, b, result ;

char operation ;

bool f = true ;

cout<<” \n Введите 1-й операнд: “ ; cin>>a ;

cout<<” \n Введите знак операции: “ ; cin>>operation ;

cout<<” \n Введите 2-й операнд: “ ; cin>>b ;

switch (operation)

{

case ‘+’ : result=a + b; break;

case ‘–’ : result=a – b; break;

case ‘*’ : result=a * b; break;

case ‘/’ : result=a / b; break;

default : cout<<” Неизвестная операция “ ; f=false;

}

if (f) cout<<” \n Результат: “<<result;

return ;

}

3.7.2. Операторы цикла

Цикл — многократно повторяющиеся вычисления или действия.

Один проход цикла называют итерацией.

Различают циклы с предусловием и с пост условием.

Блок-схемы таких циклов изображены на рис. 3.10.

Рисунок 3.10 — Блок-схемы алгоритма операторов цикла: а) с предусловием; б) с постусловием

3.7.2.1. Цикл с предусловием (while)

Формат записи оператора:

while (выражение) оператор ;

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

Когда выражение равно false, то оператор не выполняется (пропускается) и происходит выход из цикла.

После завершения цикла программа переходит к операторам, следующим за циклом.

Выход из цикла часто организуется изменением параметров цикла, которым присваиваются начальные значения до цикла (блок начальных установок в алгоритме (рис. 3.10)). Параметры цикла изменяются в теле цикла и входят в выражение цикла.

В качестве примера использования оператора while можно привести программу, которая печатает таблицу значений функции y=x2+1 :

#include <stdio.h>

int main ()

{

float Xn, Xk, Dx ;

printf ( “Введите диапазон и шаг изменения аргумента: ” ) ;

scanf ( “%f%f%f”, &Xn, &Xk, &Dx ) ;

printf ( “| x | y | \n” ) ;

float X=Xn;

while ( X<=Xk ) {

printf ( “| %-5.2f | %-5.2f | \n“, X, X*X+1) ;

}

return 0 ;

}

Результат выполнения программы:

| x | y |

| 0.00 | 1.00 |

| 0.40 | 1.16 |

| 0.80 | 1.64 |

| 1.20 | 2.44 |

| 1.60 | 3.56 |

| 2.00 | 5.00 |