Операторы ветвления и передачи управления

Краткая форма условного оператора

If(выражение) оператоР_1;

Полная форма условного оператора

If(выражение) опреатоР_1; else оператоР_2;

Примечания.

· Выражение должно быть скалярным и может иметь арифметический тип или тип указатель.

· Если выражение не равно нулю (не пустой указатель), то оно считается истинным и выполняется оператоР_1.

· В качестве операторов нельзя использовать описания и объявления.

· Допускается использование блоков (составных операторов), то есть последовательности операторов и операций, заключенных в { }.

Примеры.

if(x < 0) x = -x; else ++x; // полная форма оператора ветвления

if(j > 0) {int k = 3; j = k;}// блок с объявлением локальной переменной[5]k,

Условная операция

Результатом условной операции

выражение_1 ? выражение_2 : выражение_3

является значение выражения_2, если значение выражения_1 не равно нулю, в противном случае результатом условной операции является значение выражения_3.

Например, переменной x можно присвоить абсолютное значение переменной yследующим образом: x = y > 0 ? y : -y;

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

Switch (переключающее_выражение)

{ case выражение_1: операторы_1;

case выражение_2: операторы_2;

case выражение_k: операторы_k;

ëdefault: операторы;û }

Оператор switch передаёт управление тому из помеченных служебным словом case оператору, для которого значение выражения совпадает со значением переключающего выражения.

Если значение переключающего выражения не совпадает ни с одним из выражений, то управление передаётся на метку default, если она есть.

Примечания.

· Каждый оператор может быть помечен несколькими метками case.

· Оператор break осуществляет выход из оператора switch.

Пример.

cout << “Введите цифру”; cin >> digit;

Switch(digit)

{

case 0: case 1: cout << “ 0 или 1”; break;

case 2: cout << “2”; break;

default: cout << “очень большая цифра”

}

Операторы передачи управления

Оператор безусловного перехода: goto метка;

· метка есть идентификатор, после которого следует ":";

· метка не объявляется.

Оператор возврата значения из тела функции: return ëвыражениеû;

Оператор выхода из блока: break;

Оператор перехода к следующему повторению тела цикла: continue;

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

Оператор цикла с параметром

for( ëинициализацияû; ëвыражениеû; ëмодификацияû) ëоператоРû;

Пример.

for(int i = 0; i < 10; i++) cout << i;

for(float x= -0.5; x < 0.6; x += 0.1) s += x;

Оператор цикла с предусловием

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

Оператор цикла с постусловием

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

Потоки ввода-вывода

Для ввода/вывода данных в языке C++ имеется много возможностей.

Наиболее просто ввод данных осуществляется с помощью, так называемого, потока ввода:

cin >> переменная ë >> переменная…û ;

а вывод данных – потока вывода:

cout << выражение ë << выражение …û ;

Прототипы потоков cin[6] и cout[7] объявлены в заголовочном файле iostream.h.

Для управления форматом ввода/вывода можно использовать манипуляторы:

setprecision(int n), который задаёт максимальное количество n цифр после запятой в записи рационального числа;

setw(int n), который задаёт минимальное количество позиций для вывода данных.

Прототипы манипуляторов объявлены в заголовочном файле iomanip.h.

Математические функции – файл math.h

функция значение пояснения
int abs(int n) Операторы ветвления и передачи управления - student2.ru  
double sqrt(double x) Операторы ветвления и передачи управления - student2.ru  
double pow(double x, double y) Операторы ветвления и передачи управления - student2.ru  
double exp(double x) Операторы ветвления и передачи управления - student2.ru  
double log(double x) Операторы ветвления и передачи управления - student2.ru  
double log10(double x) Операторы ветвления и передачи управления - student2.ru  
double sin(double x) Операторы ветвления и передачи управления - student2.ru аргумент в радианах
double cos(double x) Операторы ветвления и передачи управления - student2.ru аргумент в радианах
double tan(double x) Операторы ветвления и передачи управления - student2.ru аргумент в радианах
double asin(double x) Операторы ветвления и передачи управления - student2.ru  
double acos(double x) Операторы ветвления и передачи управления - student2.ru  
double atan(double x) Операторы ветвления и передачи управления - student2.ru  
double floor(double x) Операторы ветвления и передачи управления - student2.ru “пол” аргумента x
double ceil(double x) Операторы ветвления и передачи управления - student2.ru “потолок” аргумента x

Лабораторная работа №1. Основные конструкции языка C++

Задание. Используя оператор цикла с параметром, табулировать[8] функцию Операторы ветвления и передачи управления - student2.ruна отрезке [Хst; Хen] с шагом Stepи построить её график.

Порядок выполнения работы

1. В редакторе деловой графики Microsoft Visio создаём блок-схемы основного (main) и двух вспомогательных (F и tabular_for) алгоритмов:

 
  Операторы ветвления и передачи управления - student2.ru

Набор шаблонов для создания блок-схем в редакторе Visio можно выбрать следующим образом: File – Stencil – Flowchart – Basic Flowchart Shapes.

2. Открываем систему программирования BCW (Borland C++ for Windows) и создаем в ней новый проект:

· File – New – Project…

· в появившемся окне

Операторы ветвления и передачи управления - student2.ru

в строке "Project Path and Name" указываем путь к проекту (файл с расширением ide); в выпадающем списке "Platform" выбираем платформу DOS (Standart);

если в программе будут вызываться графические функции, то устанавливаем флажок BGI в окне Libraries;

· щелчок по OK, а затем двойной щелчок по выделенному имени cpp-файла:

Операторы ветвления и передачи управления - student2.ru

откроет окно редактора:

 
  Операторы ветвления и передачи управления - student2.ru

в котором набираем текст программы:

# include <iostream.h> // cin, cout

# include <iomanip.h> // setprecision, setw

# include <conio.h> // clrscr(), getch()

# include <math.h> // sin(x)

# include <graphics.h>

# include <stdlib.h> // exit

//Объявление прототипов функций:

Float F(float x);

Наши рекомендации