Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции.docx
Скачиваний:
12
Добавлен:
15.03.2015
Размер:
5.82 Mб
Скачать

Лекция 5

5.1. Базовые конструкции

К базовым конструкциям относят следование, ветвление и цикл.

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

. . .

Рис. 5.1. Базовые конструкции: следование, ветвление, цикл

5.2. Операторы базовых конструкций

Тернарный оператор относится к конструкции ветвление и имеет синтаксис: условие? выражение 1: выражение2.

Пример: определение наибольшего из двух чисел.

#include <iostream>

#include <windows.h> //установка команд операционной системы

using namespace std;

string Rus(string text) //установка вывода русского языка в строке

{ CharToOem((LPCTSTR)text.c_str(), (LPSTR)text.c_str()); return text;}

int main()

{

int a,b,max;

cout <<Rus("Введите первое число "); cin >>a;

cout <<Rus("Введите второе число "); cin >>b;

max=(a>b)? a:b;

cout<<Rus("Наибольшее число ")<<max<<endl;

system("pause"); //команда операционной системе о приостановке

return 0;

}

Здесь конструкция установки русификации текста

string Rus(string text) //установка вывода русского языка в строке

{CharToOem((LPCTSTR)text.c_str(), (LPSTR)text.c_str()); return text;}

требует подключения заголовочного файла <windows.h>.

Оператор SWITCH также относится к конструкции ветвление и имеет синтаксис: switch (выражение)

{

case 1:

операторы; break;

case 2:

операторы; break;

. . .

default:

операторы;

{

Пример: простейший калькулятор.

#include <iostream>

#include <windows.h>

using namespace std;

int main()

{

double a,b,result; char operation; int x;

CALCULATOR:

system("cls"); //системная крманда очистки экрана

cout <<"Input first number: ";

cin>>a;

cout <<"Input operation: "; cin>>operation;

cout <<"Input second number: "; cin>>b;

cout <<"\n"; bool f=true;

switch (operation)

{

case '+': result=a+b; break;

case '-': result=a-b; break;

case '*': result=a*b; break;

case '/': result=a/b; break;

default: cout <<"Unknown operation !!!!!!!!\n"; f=false;

}

if (f>0) cout <<a<<operation<<b<<"="<<result<<endl;

cout << "Do you want to continue? (yes=y/no=any key)";

char cont; cin >> cont;

if (cont=='y') goto CALCULATOR;

return 0;

}

Условный оператор IF относится к конструкции ветвление и имеет синтаксис: