#include
#include
#include
// Функция для проверки ввода числа
bool isNumber(double& num) {
std::cin >> num;
if (std::cin.fail()) {
std::cin.clear(); // Очистка флага ошибки
std::cin.ignore(std::numeric_limits::max(), '\n'); // Пропуск неверного ввода
return false;
}
return true;
}
int main() {
double h, y;
// Ввод значения h
std::cout << "Введите значение h: ";
while (!isNumber(h)) {
std::cout << "Неверный ввод. Пожалуйста, введите числовое значение для h: ";
}
// Ввод значения y
std::cout << "Введите значение y: ";
while (!isNumber(y)) {
std::cout << "Неверный ввод. Пожалуйста, введите числовое значение для y: ";
}
// Проверка подкоренного выражения
if (2.7 * y < 0) {
std::cerr << "Ошибка: подкоренное выражение не может быть отрицательным." << std::endl;
return 1;
}
// Вычисление выражения
double numerator = 0.355 * h * h - 4.121;
double denominator = exp(y + h) + sqrt(2.7 * y);
double T = numerator / denominator;
// Вывод результата
std::cout << "Значение T = " << T << std::endl;
return 0;
}
Блок схема
вычисления выражения, в программе предусмотреть проверку правильности
введенных значений.