Определите, является ли ввод числовым - PullRequest
0 голосов
/ 04 июля 2018

Приведенный ниже код должен по существу повторять любое числовое значение двойной точности, которое я накачиваю. Но когда я использую, например, «45 * 45» в качестве входных данных, это даст мне выход «Значение 45», отбрасывая все после *. Я хочу, чтобы он возвращал это как "Не числовое значение двойной точности". Как я мог это сделать? Любая помощь будет оценена!

#include <iostream>     
#include <iomanip>   
#include <cmath>   
#include <cstdlib>   
#include <cstring> 

using namespace std; 


int main() {
    double number1; //Initialize Numerical Value

std::cout << "Please input a double precision numerical value :";   
std::cin >> number1;
if (!cin) {
    cout << "Not a double precision numerical value" << endl;
}
else if (cin) {
    cout << "Value is: " << number1;
}
else {
    cout << "Error";
}

return 0;
}
...