Разработка мини-калькулятора
Создадим мини-калькулятор. Сначала объявим переменные для хранения чисел, вводимых пользователем, используя тип данных float (числа с плавающей точкой):
float num1, num2;
Затем, с помощью std::cin, получим значения от пользователя:
std::cout << "Enter num1: ";
std::cin >> num1;
std::cout << "Enter num2: ";
std::cin >> num2;
Сообщения Enter num1: и Enter num2: подсказывают пользователю, что нужно ввести.
Создадим переменную для хранения математической операции:
char op;
std::cout << "Enter op: ";
std::cin >> op;
Переменная op типа char хранит один символ (+, -, *, /).
Выполним проверку введенного оператора. Используем switch-case, который предпочтительнее для проверки одной переменной на несколько значений:
float res;
switch (op) {
case '+':
res = num1 + num2;
break;
case '-':
res = num1 - num2;
break;
case '*':
res = num1 * num2;
break;
case '/':
res = num1 / num2;
break;
default:
res = 0;
std::cout << "Error" << std::endl;
break;
}
std::cout << "Result: " << res << std::endl;
Программа запрашивает два числа и оператор, выполняет вычисления и выводит результат. При вводе чисел с плавающей точкой используйте точку (.), а не запятую (,).
Дополнительные математические операции
C++ поддерживает операцию получения остатка от деления (%). Она работает только с целыми числами:
int a = 10, b = 3, z;
z = a % b;
std::cout << z << std::endl; // Выведет 1
z будет равен 1, так как 10 / 3 = 3 с остатком 1.
Сокращенные математические операции
Существуют сокращенные записи для операций с одной и той же переменной:
int a = 5;
a += 5; // Эквивалентно a = a + 5;
a -= 2; // Эквивалентно a = a - 2;
a *= 3; // Эквивалентно a = a * 3;
a /= 2; // Эквивалентно a = a / 2;
a %= 3; // Эквивалентно a = a % 3;
Также существуют инкремент (++) и декремент (—):
int x = 10;
x++; // x = x + 1;
x--; // x = x - 1;
Пространство имен
Для использования стандартных функций, таких как std::cout и std::cin, можно использовать директиву using namespace std; в начале файла:
#include <iostream>
using namespace std;
int main() {
// ... код программы ...
}
После этого std:: перед стандартными функциями можно опускать.
Генерация случайных чисел
Функция rand() возвращает псевдослучайное число в диапазоне от 0 до RAND_MAX. Для получения случайного числа в заданном диапазоне, например, от 1 до 20, используйте:
#include <cstdlib> // Для rand()
#include <ctime> // Для time()
int result = 1 + rand() % 20; // Случайное число от 1 до 20
std::cout << result << std::endl;
Для получения разных случайных чисел при каждом запуске программы, инициализируйте генератор случайных чисел с помощью srand():
srand(time(0)); // Инициализация генератора случайных чисел
Для использования time() необходимо подключить заголовочный файл <ctime>.
В этом уроке мы создали простой калькулятор, изучили дополнительные математические операции и научились генерировать случайные числа в C++. Использование пространства имен std упрощает код. Не забывайте инициализировать генератор случайных чисел с помощью srand(time(0)) для получения разных результатов при каждом запуске программы.