|
Обзор С++
Обзор С++
Цель работы: познакомиться
c конструкциями выбора языка программирования С++, научиться составлять простые
программы, использующие оператор if, оператор if else и оператор switch.
Краткие теоретические сведения.
Оператор if
if (условие) выражение1;
Onepaтop if используется для проверки условия и в
зависимости от того, истинно (true) это условие или ложна (false) последующего
выполнения выражения1.
Если в случае
истинности условия должны выполняться несколько строк кода, необходимо
использовать фигурные скобки для объединения этих строк в блок:
if (условие)
{
выражение1;
выражение2;
…
выражение
N;
}
Если условие принимает значение false, блок кода,
связанный c оператором if, игнорируется,
u выполнение программы продолжается c первого onepamopa, следующего за этим
блоком.
Пример
1. // поиск большего из двух чисе
#pragma hdrstop
#include<condefs.h>
#include<iostream.h>
#include<conio.h>
#pragma argsused
int main(int argc,
char** argv)
{
int a,b,max;
cout<<"Input a,b:";
cin>>a>>b;
max=a;
if(b>max)
max=b;
cout<<"max="<<max<<endl;
getch();
return
0;
}
//---------------------------------------------------------------------------
B некоторых случаях при истинности условия нужно выполнить одни
действия, a npu ложности — другие. Для этого применяется onepamop if else:
Оператор if else
if (условие) {блок_1}
else {блок_2}
Оператор else используется
в сочетании c оператором if u определяет блок кода, который выполняется
в том случае, когда условие принимает значение false. Т. е., если
условие истинно (не равно нулю), то выполняется блок_1, если условие
ложно, то выполняется блок_2.
Пример
2. // поиск большего из двух чисел
#pragma
hdrstop
#include <condefs.h>
#include <iostream.h>
#include <conio.h>
//---------------------------------------------------------------------------------------
#pragma argsused
int
main(int argc,char** argv)
{
int a, b, max;
cout <<"Input a,
b:" ;
cin >>а>>b;
if (b>=a) mаx = b;
else max=a;
cout <<"max
= "<<max<<endl;
getch();
return 0;
}
Вы можете при необходимости
использовать вложенные onepamopa if. В этом случае
за обычным onepaтopoм if
следует один или несколько таких же onepатopoв.
Пример: if
(x > 10) if (x < 20)
cout << "x is between
10 and 20" << end1;
Оператор switch
Onepamop
switch можно рассматривать как усложненный if. Он позволяет вам выполнять один из
нескольких блоков кода в зависимости om значения выражения.
Выражение может быть переменной, вoзвpaщaемым значением функции или любым арифметическим
выpaжением C++. Синтаксис onepamopa
switch:
switch (выражение)
{
case значение_1: блoк_1; break;
case значенue_2: блок_2; break;
…
case
значение_п: 6лoк_п, break;
default: блок_last; break;
}
Оператор switch состоит
из нескольких частей. Прежде всего, вы можете заметить выражение. Затем
операторы case проверяют выражение на равенство определенной величине.
Оператор switch позволяет выполнять различные блоки кода в зависимости
от значения выражения. Блок_1 выполняется, когда выражение равно
значение _1, блок_2- когда выражение равно значение_2, u т,д. до блока_п, когда
выpажeние равно значение _п. Если выражение не pавно ни одному из
значение_1 значение_п, выполняется блок_last. B каждом из case присутствует
опеpатор break. Он используется для выxода из блока switch - это
означает, что значение выражения совпало c одной из величин и оставшаяся часть
onepamopa switch может быть игнорирована. B самом конце вы видите
оператор default. Блок, следующий за этим оператором, выполняется при
отсутствии совпадений, Включение оператора defalt не
обязательно.
Пример
3.// определение дня недели по
номеру
#pragma hdrstop
#include <condefs.h>
#include <iostream.h>
#include <conio.h>
#pragma argsused
int main(int argc, char* argv[])
{
int n;
cout<<"Input n:";
cin>>n;
switch (n)
{
case
o:cout<<"Sunday"<<endl; break;
case
1:cout<<"Monday"<<endl; break;
case
2:cout<<"Tuesday"<<endl; break;
case
3:cout<<"Wednesday"<<endl; break;
case
4:cout<<"Thursday"<<endl; break;
case 5:cout<<"Friday"<<endl;
break;
case
6:cout<<"Saturday"<<endl; break;
default:
cout<<"Mistake";
}
getch();
return 0;
}
Программа, которая по дате определяет день недели , на который эта дата
приходится.
#pragma hdrstop
#include
<condefs.h>
#include
<iostream.h>
#include
<conio.h>
//---------------------------------------------------------------------------
#pragma argsused
int main(int argc,
char** argv)
{
int n;
cout
<<"Input n:";
cin>>n;
if (n>1) if
(n<8)
switch (n)
{
case 1:cout
<<"Sunday"<<endl; break;
case 2:cout
<<"Monday"<<endl; break;
case 3:cout
<<"Tuesday"<<endl; break;
case 4:cout
<<"Wednesday"<<endl; break;
case 5:cout
<<"Thursday"<<endl; break;
case 6:cout
<<"Friday"<<endl; break;
case 7:cout
<<"Saturday"<<endl; break;
}
else if (n>7) if
(n<15)
switch (n)
{
case 8:cout
<<"Sunday"<<endl; break;
case 9:cout
<<"Monday"<<endl; break;
case 10:cout
<<"Tuesday"<<endl; break;
case 11:cout
<<"Wednesday"<<endl; break;
case 12:cout
<<"Thursday"<<endl; break;
case 13:cout
<<"Friday"<<endl; break;
case 14:cout
<<"Saturday"<<endl; break;
}
else if (n>14) if
(n<22)
switch (n)
{
case 15:cout
<<"Sunday"<<endl; break;
case 16:cout
<<"Monday"<<endl; break;
case 17:cout
<<"Tuesday"<<endl; break;
case 18:cout
<<"Wednesday"<<endl; break;
case 19:cout <<"Thursday"<<endl;
break;
case 20:cout
<<"Friday"<<endl; break;
case 21:cout
<<"Saturday"<<endl; break;
}
else if (n>21) if
(n<29)
switch (n)
{
case 22:cout
<<"Sunday"<<endl; break;
case 23:cout
<<"Monday"<<endl; break;
case 24:cout
<<"Tuesday"<<endl; break;
case 25:cout
<<"Wednesday"<<endl; break;
case 26:cout
<<"Thursday"<<endl; break;
case 27:cout
<<"Friday"<<endl; break;
case 28:cout
<<"Saturday"<<endl; break;
}
else if (n>28) if
(n<32)
switch (n)
{
case 29:cout
<<"Sunday"<<endl; break;
case 30:cout <<"Monday"<<endl;
break;
case 31:cout
<<"Tuesday"<<endl; break;
default:cout<<"Mistake";
}
getch();
return 0;
}
//--------------------------------------------------------------------------
|
|
|