Inherited Code Discussions | C++ | HackerRank

Inherited Code

  • + 0 comments

    include

    include

    include

    include

    using namespace std;

    /* Define the exception here */

    class BadLengthException : public exception { private: int length; // This variable stores the length of the too-short username public: // Constructor to initialize the length BadLengthException(int n) : length(n) {}

        // Method to return the length
        int what() {
            return length;
        }
    

    };

    bool checkUsername(string username) { bool isValid = true; int n = username.length(); if(n < 5) { throw BadLengthException(n); } for(int i = 0; i < n-1; i++) { if(username[i] == 'w' && username[i+1] == 'w') { isValid = false; } } return isValid; }

    int main() { int T; cin >> T; while(T--) { string username; cin >> username; try { bool isValid = checkUsername(username); if(isValid) { cout << "Valid" << '\n'; } else { cout << "Invalid" << '\n'; } } catch (BadLengthException e) { cout << "Too short: " << e.what() << '\n'; } } return 0; }