Операторы ветвления и передачи управления
Краткая форма условного оператора
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) | ||
double sqrt(double x) | ||
double pow(double x, double y) | ||
double exp(double x) | ||
double log(double x) | ||
double log10(double x) | ||
double sin(double x) | аргумент в радианах | |
double cos(double x) | аргумент в радианах | |
double tan(double x) | аргумент в радианах | |
double asin(double x) | ||
double acos(double x) | ||
double atan(double x) | ||
double floor(double x) | “пол” аргумента x | |
double ceil(double x) | “потолок” аргумента x |
Лабораторная работа №1. Основные конструкции языка C++
Задание. Используя оператор цикла с параметром, табулировать[8] функцию на отрезке [Хst; Хen] с шагом Stepи построить её график.
Порядок выполнения работы
1. В редакторе деловой графики Microsoft Visio создаём блок-схемы основного (main) и двух вспомогательных (F и tabular_for) алгоритмов:
Набор шаблонов для создания блок-схем в редакторе Visio можно выбрать следующим образом: File – Stencil – Flowchart – Basic Flowchart Shapes.
2. Открываем систему программирования BCW (Borland C++ for Windows) и создаем в ней новый проект:
· File – New – Project…
· в появившемся окне
в строке "Project Path and Name" указываем путь к проекту (файл с расширением ide); в выпадающем списке "Platform" выбираем платформу DOS (Standart);
если в программе будут вызываться графические функции, то устанавливаем флажок BGI в окне Libraries;
· щелчок по OK, а затем двойной щелчок по выделенному имени cpp-файла:
откроет окно редактора:
в котором набираем текст программы:
# 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);