Занятие 2
Первая программа. Структура программы на C++
По сложившейся традиции, первая программа на С++ выводит на экран сообщение «Hello world!». Мы немного усложним задачу и рассмотрим вывод на экран сразу двух сообщений: «Hello, world!» и «Привет, мир!». Такая постановка задачи обращает внимание учащегося сразу на несколько ключевых моментов языка программирования, главным из которых является базовая структура программы.
Откройте меню File → New → Empty file. Выполните сохранение File → Save file as…, в открывшемся окне выберите папку для сохранения файла и введите имя файла, например, «Hello.cpp». Наберите текст программы (Рисунок 2.1).
Рисунок 2.1. Текст программы «Hello.cpp»:
Эту программу C++ можно разделить на две части: директивы препроцессора, которые начинаются с символа #, и основную часть программы, которая начинается с int main().
Директива #include используется для подключения других файлов в код. Строка #include <iostream> будет заменена содержимым файла «iostream.h», который находится в стандартной библиотеке языка и отвечает за ввод и вывод данных на экран.
Содержимое второй строки – using namespace std; указывает на то, что мы используем по умолчанию пространство имен с названием «std». В том числе эта строка позволяет программе использовать операторы, такие как cout. Точка с запятой является частью синтаксиса C++. Она сообщает компилятору, что это конец команды. Точка с запятой используется для завершения большинства команд в C++.
Главная функция main()
После директивы (директив) препроцессора следует тело программы, расположенное в функции main(). Функции в языке C++ – это элементы, позволяющие разделить содержимое вашего приложения на функциональные блоки, которые могут быть вызваны по вашему выбору. При вызове функция обычно возвращает значение вызывающей функции.
Как компьютер узнаёт, с чего начинать выполнение программы? Он ищет функцию с именем main (главная) и начинает выполнять инструкции, содержащиеся в ней. Исполнение программ C++ всегда начинается здесь. По стандартному соглашению, перед функцией main() указывается тип int (от integer – целое число). Тип int в данном случае – это тип возвращаемого значения функции main (). Если в процессе выполнения программы произойдет какой-либо сбой, то будет сгенерирован код ошибки, отличный от нуля. Если же работа программы завершилась без сбоев, то код ошибки будет равен нулю. Команда return 0; необходима для того, чтобы передать операционной системе сообщение об удачном завершении программы.
Фигурные скобки, { и }, сигнализируют о начале и конце тела функции. Фигурные скобки используются и в других блоках кода, но всегда обозначают начало и конец блока.
Тело функции main
Функция setlocale устанавливает языковый стандарт. При выполнении оператора setlocale(LC_ALL, "Russian"); включается поддержка русского
языка при выводе на экран сообщений.
Рассмотрим строку программы cout << "Hello, World!" << endl;.
cout (“console-out” (вывод на консоль), произносится как си-аут) является оператором, фактически выводящем на экран строку Hello, World!. cout – это поток, определенный в стандартном пространстве имен. Мы помещаем текст строки Hello, World! в данный поток, используя оператор помещения в выходной поток <<. Текст заключается в двойные кавычки. Оператор endl используется для завершения строки. После вывода символов Hello, World! курсор будет установлен на начало новой строки.
По аналогии, следующая строка программы cout << "Привет, мир!" << endl; решает задачу вывода сообщения на русском языке Привет, мир!.
Комментарии в коде C++
Комментарии игнорируются компилятором и обычно используются программистами для объяснений в коде [9]. Символ // означает, что следующая далее строка – комментарий. Например:
// Это комментарий
Часто короткие комментарии пишут справа в строке кода:
cout << “Привет, мир!”; // Вывод “Привет, мир!”
Текст, содержащийся между символами /* и */, также является комментарием, даже если он занимает несколько строк:
/* Это комментарий,
занимающий две строки */
Компиляция и запуск программы на С++
Написание программы C++ является первым этапом создания исполняемого файла, который может быть запущен на вашей операционной системе. Основные этапы создания приложений C++ приведены ниже.
1. Написать код на C++, используя текстовый редактор.
2. Откомпилировать код, используя компилятор C++, который преобразует его в версию машинного языка и запишет в объектный файл (object file).
3. Скомпоновать результат работы компилятора, используя компоновщик, и получить исполняемый файл (.ехе в Windows, например).
Мы используем интегрированную среду разработки Code::Blocks, объединяющую этапы написания программы, компиляции и компоновки в пределах единого пользовательского интерфейса, предоставляющего также средства отладки, облегчающие обнаружение ошибок и устранение проблем.
Для компиляции, компоновки и запуска программы нужно нажать кнопку Build and run (построение и запуск). Если компилятор не обнаружит ошибки (0 error(s)), появится окно с результатами работы программы (Рисунок 2.2). Если же в программе обнаружены ошибки, необходимо их исправить и вновь нажать кнопку Build and run.
Рисунок 2.2. Пример запуска программы
Как вариант, можно вначале создать исполняемый файл, нажав на кнопку Build , а затем выполнить его запуск, нажав на кнопку Run.
Также, для выполнения перечисленных команд, можно воспользоваться меню Build. В этом же меню приведены сочетания клавиш для выполнения команд (Рисунок 2.3).
Рисунок 2.3. Меню Build
Онлайн-компилятор
В окне ниже можно проверить работу программы, используя онлайн-компилятор (вместо Code::Blocks).
Видеоурок "Первая программа. Структура программы на C++. Компиляция и запуск программы на C++":

Использование оператора cout для вывода значений выражений
Пример. Найдём значение выражения
Если записать выражение в кавычках, то будет выведено само выражение (как текст). При отсутствии кавычек на экран будет выведено значение данного выражения. Оператор cout можно записать в таком виде:
cout << “(5 + 3 * 4) / 2 = “ << (5 + 3 * 4) / 2.0 << endl;
Деление целых чисел в С++ дает в результате целое число. Дробная часть результата, если она есть, отбрасывается. Поэтому, мы делим не на 2, а на 2.0 – указав компилятору, что результат должен быть вещественным числом. Итак, если в данном выражении делить на 2, то мы получим в результате 8, а если делить на 2.0, то получим 8.5 (Рисунок 2.4).
Рисунок 2.4. Текст программы
Тест

Практические задания
1. Напишите программу, которая выводит ваше имя.
2. Напишите программу, которая выводит имена ваших друзей (каждое имя – в новой строке).
3. Напишите программу, которая выводит на экран инструкцию (алгоритм) по заварке чая. Каждую команду выводите в новой строке.
4. Напишите программу, которая выводит значения выражений: