Обзор С++
СОДЕРЖАНИЕ: Конструкции языка программирования С++, составление простых программ, использyющих оператор if, оператор if else и оператор switch. Работа оператора switch. Создание программы, которая по дате определяет день недели , на который эта дата приходится.Цель работы: познакомиться 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
#includecondefs.h
#includeiostream.h
#includeconio.h
#pragma argsused
int main(int argc, char** argv)
{
int a,b,max;
coutInput a,b:;
cinab;
max=a;
if(bmax) max=b;
coutmax=maxendl;
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 = maxendl;
getch();
return 0;
}
Вы можете при необходимости использовать вложенные onepamopaif . В этом случае за обычным onepaтopoмif следует один или несколько таких же onepатopoв.
Пример:if (x 10) if (x 20)
cout x is between 10 and 20 end1;
Оператор switch
Onepamopswitch можно рассматривать как усложненный if . Он позволяет вам выполнять один из нескольких блоков кода в зависимости om значения выражения. Выражение может быть переменной, вoзвpaщaемым значением функции или любым арифметическим выpaжением C++. Синтаксис onepamopaswitch :
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;
coutInput n:;
cinn;
switch (n)
{
case o:coutSundayendl; break;
case 1:coutMondayendl; break;
case 2:coutTuesdayendl; break;
case 3:coutWednesdayendl; break;
case 4:coutThursdayendl; break;
case 5:coutFridayendl; break;
case 6:coutSaturdayendl; break;
default: coutMistake;
}
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:;
cinn;
if (n1) if (n8)
switch (n)
{
case 1:cout Sundayendl; break;
case 2:cout Mondayendl; break;
case 3:cout Tuesdayendl; break;
case 4:cout Wednesdayendl; break;
case 5:cout Thursdayendl; break;
case 6:cout Fridayendl; break;
case 7:cout Saturdayendl; break;
}
else if (n7) if (n15)
switch (n)
{
case 8:cout Sundayendl; break;
case 9:cout Mondayendl; break;
case 10:cout Tuesdayendl; break;
case 11:cout Wednesdayendl; break;
case 12:cout Thursdayendl; break;
case 13:cout Fridayendl; break;
case 14:cout Saturdayendl; break;
}
else if (n14) if (n22)
switch (n)
{
case 15:cout Sundayendl; break;
case 16:cout Mondayendl; break;
case 17:cout Tuesdayendl; break;
case 18:cout Wednesdayendl; break;
case 19:cout Thursdayendl; break;
case 20:cout Fridayendl; break;
case 21:cout Saturdayendl; break;
}
else if (n21) if (n29)
switch (n)
{
case 22:cout Sundayendl; break;
case 23:cout Mondayendl; break;
case 24:cout Tuesdayendl; break;
case 25:cout Wednesdayendl; break;
case 26:cout Thursdayendl; break;
case 27:cout Fridayendl; break;
case 28:cout Saturdayendl; break;
}
else if (n28) if (n32)
switch (n)
{
case 29:cout Sundayendl; break;
case 30:cout Mondayendl; break;
case 31:cout Tuesdayendl; break;
default:coutMistake;
}
getch();
return 0;
}
//--------------------------------------------------------------------------