Программа запрашивает у пользователя число от 1 до 3 и выводит соответствующую поговорку. При любом другом введённом числе выводится сообщение об ошибке.



Задание 5-5

// Задание 5-5.cpp: определяет точку входа для консольного приложения.

/*Простой генератор поговорок, который

демонстрирует использование оператора SWITCH.

*/

       #include "stdafx.h"

       #include <iostream>

       using namespace std;

int main()

{

       setlocale (LC_ALL,"Russian");

       int num;

       cout << " Введите число от 1 до 3: ";

       cin >> num;

       switch (num) {

             case 1:

                   cout << " Под лежачий камень вода не течёт. \n";

                   break;

             case 2:

                   cout << " Лучше синица в руках, чем журавль в небе. \n";

                   break;

             case 3:

                   cout << " Денег много не бывает. \n";

                   break;

             default:

                   cout << " Вы можете ввести только 1, 2 или 3. \n";

       }

return 0;

}

Формально в конструкции switch предложение break не обязательно, хотя в большинстве случаев его приходиться использовать. Когда в последовательности предложений в ветви case встречается предложение break, оно заставляет поток выполнения программы выйти из всего предложения switch и перейти на следующее предложение вне switch. Если же последовательность ветви case не заканчивается break, тогда все предложения и выбранной ветви case и всех нижележащих будут выполняться до тех пор пока не встретиться break или не закончится все предложения switch. Пример такой ситуации демонстрирует следующий пример.

Запишите ниже после текста программы возможный результат вывода информации на экран и проверьте правильность полученного результата, выполнив программу.

Задание 5-6

// Задание 5-6.cpp: определяет точку входа для консольного приложения.

// Использование SWITCH без BREAK

#include "stdafx.h"

#include <iostream>

using namespace std;

int main()

{

setlocale(LC_ALL, "Russian");

int i;

for (i = 0; i < 5; i++) {

       switch (i) {

       case 0:

             cout << " меньше 1\n";

       case 1:

             cout << " меньше 2\n";

       case 2:

             cout << " меньше 3\n";

       case 3:

             cout << " меньше 4\n";

       case 4:

             cout << " меньше 5\n";

       }

       cout << "\n";

}

return 0;

}

Предполагаемый вывод информации на экран:

меньше 1

меньше 2

меньше 3

меньше 4

меньше 5

 

меньше 2

меньше 3

меньше 4

меньше 5

 

меньше 3

меньше 4

меньше 5

 

меньше 4

меньше 5

 

меньше 5

 

Допустимо иметь пустые ветви, как это показано ниже:

             switch (i) {

                   case 1:

                   case 2:

                   case 3:

                   cout << " i меньше 4";

                        break;

                   case 4:

                   cout << " i равно 4";

                        break;

             }

Выстраивание условий case «штабелем» как показано в последнем примере, является весьма распространённым приёмом в тех случаях, когда для нескольких условий выбора должен выполняться один и тот же фрагмент кода.

Вложенные предложения switch

Предложение switch может входить в последовательность предложений внешнего предложения . При этом конфликтов не возникает даже если в списках констант case внутреннего и внешнего switch имеются общие значения. Так приведённый ниже фрагмент вполне допустим.

switch (ch1) {

case ‘A’: cout << “ Эта А является частью внешнего switch “

switch (ch2) {

case ‘A’:

cout << “ Эта А является частью внутреннего switch “

break;

             case ‘B’:    //

       }

break;

case ‘B’:    //

}

 

Проект 3-1 Справочная система С++

Следует создать простую справочную систему, которая выводит информацию о синтаксисе управляющих предложений С++ (пока для if и switch). Назовите этот программный файл HELP

// HELP.cpp: главный файл проекта.

/* проект 3-1

Простая справочная система

*/

       #include "stdafx.h"

       #include <iostream>

       #include <conio.h>

       using namespace std;

int main()

{

       setlocale (LC_ALL,"Russian");

       char choice;

       cout << " Справка по:\n";

       cout << " 1. if \n";

       cout << " 2. switch \n";

       cout << " Выберите один из пунктов:\n";

       cin >> choice;

       switch (choice) {

             case '1':

                   cout << " Предложение if:\n \n";

                   cout << " if (условие) предложение;\n";

                   cout << " else предложение;\n";

                   break;

             case '2':

                   cout << " Предложение switch:\n \n";

                   cout << " switch (выражение) {\n";

                   cout << " case константа :\n";

                   cout << " последовательность предложений\n";

                   cout << " break;\n";

                   cout << " //....\n";

                   cout << " }\n";

                   break;

             default:

                   cout << " Этот пункт отсутствует.\n";

       }

       _getch();

}

 

Цикл for

С помощью конструкции цикла можно повторно выполнять некоторую последовательность кодов. В С++ предусмотрен богатый ассортимент конструкций циклов. Общая форма цикла for для повторения единственного предложения следующая:

for (инициализация; выражение; приращение) предложение;

Для повторения блока предложений общая форма предложения будет такой:

for (инициализация; выражение; приращение);

{


Дата добавления: 2019-07-15; просмотров: 203; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!