Ранее мы рассмотрели вывод данных на экран с помощью команды cout. Однако в большинстве программ также требуется вводить данные с клавиатуры. Для этой задачи используется оператор cin.
Синтаксис ввода данных
Чтобы ввести значение в переменную, используют следующую команду:
cin >> имя_переменной;
Например, чтобы ввести значение в переменную Age, достаточно написать:
cin >> Age;
Ввод нескольких переменных можно осуществить в одной строке, разделив переменные >>:
cin >> Quantity >> Price >> Discount;
Пример использования cin
Вот пример программы, которая запрашивает цену товара и его количество, затем рассчитывает стоимость с учетом скидки и выводит итог на экран:
Создадим простую программу-игру, где компьютер всегда "выигрывает", загадывая число на единицу больше введенного пользователем:
#include <iostream>
using namespace std;
int main() {
cout << "Let's play!\n";
int i;
cout << "Enter a number:";
cin >> i;
cout << "I have " << i + 1 << "\n";
cout << "I'm winner!\n";
return 0;
}
Почему компьютер выигрывает?
В строке cout << "I have " << i + 1 << "\n"; выводится введенное число, увеличенное на 1. Компьютер всегда выводит число больше, чем у пользователя, из-за чего всегда побеждает.
Если заменить i + 1 на i - 1, пользователь будет выигрывать, так как число компьютера всегда будет на единицу меньше.
Операторы для вычислений
+ — сложение
- — вычитание
/ — деление
Мини-справочник по командам ввода-вывода
Вывод данных на экран (cout)
Синтаксис: cout << выражение;
Пример:
cout << "Текст или переменная" << переменная;
Ввод данных с клавиатуры (cin)
Синтаксис: cin >> имя_переменной;
Описание: Запрашивает ввод с клавиатуры и сохраняет его в переменную.
Пример:
cin >> переменная;
Ввод нескольких переменных сразу
Синтаксис: cin >> переменная1 >> переменная2;
Пример:
cin >> Quantity >> Price >> Discount;
Инкрементирование
a++ — постфиксный инкремент: сначала возвращает значение переменной a, затем увеличивает её на 1.
++a — префиксный инкремент: сначала увеличивает значение переменной a на 1, затем возвращает её.
Пример:
int a = 5;
int b = a++; // b = 5, a = 6
int c = ++a; // c = 7, a = 7
Остаток от деления с присваиванием (a %= b)
Синтаксис:a %= b
Описание: Делит значение переменной a на b и присваивает a остаток от этого деления.
Пример:
int a = 0;
int b = 4;
a %= b; // a остаётся равным 0, так как 0 % 4 = 0
Примечание:
Оператор %= полезен для работы с остатками при делении целых чисел.