Важно!Инструкцию goto следует применять с оглядкой (как сильнодействующее лекарство). Если без нее ваш код будет менее читабельным или для вас важна скорость выполнения программы, то в таких случаях использование инструкции goto показано.

Итак, подведем итоги...

Следующий пример представляет собой последнюю версию программы "Угадай магическое число". В ней использованы многие средства С++-программирования, представленные в этой главе, и, прежде чем переходить к следующей, убедитесь в том, что хорошо понимаете все рассмотренные здесь элементы языка C++. Этот вариант программы позволяет сгенерировать новое число, сыграть в игру и выйти из программы.

// Программа "Угадай магическое число": последняя версия.

#include

#include

using namespace std;

void play(int m);

int main()

{

 int option;

 int magic;

 magic = rand();

 do {

  cout << "1. Получить новое магическое число\n";

  cout << "2. Сыграть\n";

  cout << "3. Выйти из программы\n";

  do {

   cout << "Введите свой вариант: ";

    cin >> option;

  }while(option<1 || option>3);

  switch(option){

   case 1:

    magic = rand();

    break;

   case 2:

    play(magic);

    break;

   case 3:

    cout << "До свидания !\n";

    break;

  }

 }while(option != 3);

 return 0;

}

// Сыграем в игру.

void play(int m)

{

 int t, x;

 for(t=0; t<100; t++) {

  cout << "Угадайте магическое число: ";

   cin >> x;

  if(x==m) {

   cout << "** Правильно **\n";

   return;

  }

  else

   if(x

   else cout << "Многовато.\n";

 }

 cout << "Вы использовали все шансы угадать число. " << "Попытайтесь снова.\n";

}

<p id="chapter 5">Глава 5: Массивы и строки</p>

В этой главе мы рассматриваем массивы. Массив (array) — это коллекция переменных одинакового типа, обращение к которым происходит с применением общего для всех имени. В C++ массивы могут быть одно- или многомерными, хотя в основном используются одномерные массивы. Массивы представляют собой удобное средство группирования связанных переменных.

Чаще всего используются символьные массивы, в которых хранятся строки. Как упоминалось выше, в C++ не определен встроенный тип данных для хранения строк. Поэтому строки реализуются как массивы символов. Такой подход к реализации строк дает С++-программисту больше "рычагов" управления по сравнению с теми языками, в которых используется отдельный строковый тип данных.

Одномерные массивы

Одномерный массивэто список связанных переменных. Для объявления одномерного массива используется следующая форма записи.

тип имя_массива [размер];

Здесь с помощью элемента записи тип объявляется базовый тип массива. Базовый тип определяет тип данных каждого элемента, составляющего массив. Количество элементов, которые будут храниться в массиве, определяется элементом размер. Например, при выполнении приведенной ниже инструкции объявляется int-массив (состоящий из 10 элементов) с именем sample.

int sample[10];

Индекс идентифицирует конкретный элемент массива.

Доступ к отдельному элементу массива осуществляется с помощью индекса. Индекс описывает позицию элемента внутри массива. В C++ первый элемент массива имеет нулевой индекс. Поскольку массив sample содержит 10 элементов, его индексы изменяются от 0 до 9. Чтобы получить доступ к элементу массива по индексу, достаточно указать нужный номер элемента в квадратных скобках. Так, первым элементом массива sample является sample[0], а последним — sample[9]. Например, следующая программа помещает в массив sample числа от 0 до 9.

#include

using namespace std;

int main()

{

 int sample[10]; // Эта инструкция резервирует область памяти для 10 элементов типа int.

 int t;

 // Помещаем в массив значения.

 for(t=0; t<10; ++t) sample[t]=t;

  // Отображаем массив.

Перейти на страницу:

Все книги серии Изучайте C++ с профессионалами

Похожие книги