Day 16: Exceptions – String to Integer | 30 Days Of Code | HackerRank Solution

Hello coders, today we are going to solve Day 16: Exceptions – String to Integer HackerRank Solution in C++, Java and Python.

Day 16: Exceptions

Objective

Today, we’re getting started with Exceptions by learning how to parse an integer from a string and print a custom error message. 

Task

Read a string, S, and print its integer value; if S cannot be converted to an integer, print Bad String.

Note: You must use the String-to-Integer and exception handling constructs built into your submission language. If you attempt to use loops/conditional statements, you will get a 0 score.

Input Format

A single string, S.

Constraints

  • 1 <= |S| <= 6, where |S| is the length of string S.
  • S is composed of either lowercase letters (azor decimal digits (0 – 9).

Output Format

Print the parsed integer value of S, or Bad String if S cannot be converted to an integer.

Sample Input 0

3

Sample Output 0

3

Sample Input 1

za

Sample Output 1

Bad String

Explanation

Sample Case 0 contains an integer, so it should not raise an exception when we attempt to convert it to an integer. Thus, we print the 3.
Sample Case 1 does not contain any integers, so an attempt to convert it to an integer will raise an exception. Thus, our exception handler prints Bad String.

Solution – Day 16: Exceptions – String to Integer

C++

 #include <map>

#include <set>
#include <list>
#include <cmath>
#include <ctime>
#include <deque>
#include <queue>
#include <stack>
#include <string>
#include <bitset>
#include <cstdio>
#include <limits>
#include <vector>
#include <climits>
#include <cstring>
#include <cstdlib>
#include <fstream>
#include <numeric>
#include <sstream>
#include <iostream>
#include <algorithm>
#include <unordered_map>

using namespace std;


int main(){
    string S;
    cin >> S;
     try {
     int i = stoi(S);
     cout<<i;
    } catch (exception e) {
    cout<<"Bad String";
    
    }
    return 0;
}

Java

import java.io.*;
import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;

public class Solution {

    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        
    String S=sc.nextLine();
    try
    {
        int no;
        no=Integer.parseInt(S);
        System.out.println(no);
    }
    catch(Exception a)
    {
        System.out.println("Bad String");
    }          
   }
  }

Python

try:
    print(int(input()))
except ValueError:
    print("Bad String")

Disclaimer: The above Problem (Day 16: Exceptions – String to Integer) is generated by Hacker Rank but the Solution is Provided by CodingBroz. This tutorial is only for Educational and Learning Purpose.

Leave a Comment

Your email address will not be published.