Вот программа на C++, которая вычисляет сумму квадратов двух чисел, а также предоставляет возможность вычислить квадрат суммы. Программа включает меню для выбора операции:
```cpp
#include <iostream>
#include <cmath> // для функции pow(), если нужно использовать
using namespace std;
int main() {
int choice;
double num1, num2, result;
do {
// Выводим меню
cout << "\n=== Вычисление квадратов ===" << endl;
cout << "1. Вычислить СУММУ КВАДРАТОВ двух чисел" << endl;
cout << "2. Вычислить КВАДРАТ СУММЫ двух чисел" << endl;
cout << "3. Выход" << endl;
cout << "Выберите операцию (1-3): ";
cin >> choice;
// Проверка на корректный ввод
if (cin.fail()) {
cout << "Ошибка ввода! Пожалуйста, введите число." << endl;
cin.clear();
cin.ignore(10000, '\n');
continue;
}
// Обработка выбора пользователя
switch(choice) {
case 1: {
// Сумма квадратов: a² + b²
cout << "\n--- Сумма квадратов ---" << endl;
cout << "Введите первое число: ";
cin >> num1;
cout << "Введите второе число: ";
cin >> num2;
result = num1 * num1 + num2 * num2; // или pow(num1, 2) + pow(num2, 2)
cout << num1 << "² + " << num2 << "² = "
<< num1 * num1 << " + " << num2 * num2
<< " = " << result << endl;
break;
}
case 2: {
// Квадрат суммы: (a + b)²
cout << "\n--- Квадрат суммы ---" << endl;
cout << "Введите первое число: ";
cin >> num1;
cout << "Введите второе число: ";
cin >> num2;
double sum = num1 + num2;
result = sum * sum; // или pow(sum, 2)
cout << "(" << num1 << " + " << num2 << ")² = "
<< sum << "² = " << result << endl;
break;
}
case 3: {
cout << "\nВыход из программы. До свидания!" << endl;
break;
}
default: {
cout << "\nНеверный выбор! Пожалуйста, выберите 1, 2 или 3." << endl;
break;
}
}
// Очистка буфера ввода после операции
cin.ignore(10000, '\n');
} while(choice != 3);
return 0;
}
```
Особенности программы:
1. Две основные операции:
· Сумма квадратов: a² + b²
· Квадрат суммы: (a + b)²
2. Защита от некорректного ввода:
· Проверка на корректный ввод чисел
· Очистка буфера ввода после операций
3. Интерактивное меню:
· Позволяет выполнять несколько операций без перезапуска программы
· Простой и понятный интерфейс
4. Гибкость вычислений:
· Можно использовать как простое умножение, так и функцию pow() из <cmath>
Пример работы программы:
```
=== Вычисление квадратов ===
1. Вычислить СУММУ КВАДРАТОВ двух чисел
2. Вычислить КВАДРАТ СУММЫ двух чисел
3. Выход
Выберите операцию (1-3): 1
--- Сумма квадратов ---
Введите первое число: 3
Введите второе число: 4
3² + 4² = 9 + 16 = 25
```
Альтернативная упрощенная версия (только сумма квадратов):
Если нужна только сумма квадратов без меню:
```cpp
#include <iostream>
using namespace std;
int main() {
double a, b;
cout << "Введите первое число: ";
cin >> a;
cout << "Введите второе число: ";
cin >> b;
double sum_of_squares = a * a + b * b;
cout << "Сумма квадратов " << a << " и " << b << " = " << sum_of_squares << endl;
return 0;
}
```
Эта программа более простая и вычисляет только сумму квадратов двух введенных чисел.
Комментариев 1