Ở đây chúng ta sẽ xem cách kiểm tra xem một đầu vào đã cho là chuỗi số nguyên hay chuỗi bình thường. Chuỗi số nguyên sẽ chứa tất cả các ký tự nằm trong phạm vi 0 - 9. Cách giải quyết rất đơn giản, chúng ta sẽ lướt qua từng ký tự một và kiểm tra xem nó có phải là số hay không. Nếu nó là số thì hãy trỏ đến giá trị tiếp theo, nếu không thì trả về giá trị false.
Ví dụ
#include <iostream> using namespace std; bool isNumeric(string str) { for (int i = 0; i < str.length(); i++) if (isdigit(str[i]) == false) return false; //when one non numeric value is found, return false return true; } int main() { string str; cout << "Enter a string: "; cin >> str; if (isNumeric(str)) cout << "This is a Number" << endl; else cout << "This is not a number"; }
Đầu ra
Enter a string: 5687 This is a Number
Đầu ra
Enter a string: 584asS This is not a number