Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save AbdullahMagat/153b444d7f197cd197c82313f7857949 to your computer and use it in GitHub Desktop.
Save AbdullahMagat/153b444d7f197cd197c82313f7857949 to your computer and use it in GitHub Desktop.
Hackerrank Java Datatypes Solution
import java.util.*;
import java.io.*;
import java.math.BigInteger;
class Solution{
public static void main(String []argh)
{
Scanner sc = new Scanner(System.in);
int t=sc.nextInt();
for(int i=0;i<t;i++)
{
try
{
long x=sc.nextLong();
System.out.println(x+" can be fitted in:");
if(x>=(Byte.MIN_VALUE) && x<=Byte.MAX_VALUE)System.out.println("* byte");
if(x>=(Short.MIN_VALUE) && x<=Short.MAX_VALUE)System.out.println("* short");
if(x>=(Integer.MIN_VALUE) && x<=Integer.MAX_VALUE)System.out.println("* int");
if(x>=(Long.MIN_VALUE) && x<=Long.MAX_VALUE)System.out.println("* long");
//Another way. Be careful to take the interval of numbers. They are signed char so you should mines 1. for example byte is not in range of 2^8 and -2^8. it is signed char so it should be between 2^7 and 2^7-1.
// BigInteger y = BigInteger.valueOf(x);
// System.out.println(x+" can be fitted in:");
// if(y.longValue()>=-128 && x<=127)System.out.println("* byte");
// if(y.longValue()>=-(Math.pow(2,15)) && y.longValue()<=(Math.pow(2,15)-1))System.out.println("* short");
// if(y.longValue()>=-(Math.pow(2,31)) && y.longValue()<=Math.pow(2,31)-1)System.out.println("* int");
// if(y.longValue()>=-(Math.pow(2,63)) && y.longValue()<=Math.pow(2,63)-1)System.out.println("* long");
}
catch(Exception e)
{
System.out.println(sc.next()+" can't be fitted anywhere.");
}
}
}
}
@Aaditaasoni
Copy link

Thanks

@vinaysk125
Copy link

thnx..

@AbhilaashAnnamreddi
Copy link

why should we assign value of x to big integer i have done without it but im facing an error that last test case is not working

@TanmaySrivastav
Copy link

Scanner sc = new Scanner(System.in);
int t=sc.nextInt();

    for(int i=0;i<t;i++)
    {

        try
        {
            long x=sc.nextLong();
            System.out.println(x+" can be fitted in:");
            if(x>=-128 && x<=127)
            {
            System.out.println("* byte");
            }
             if (x>=-32768 && x<=32767)
            {
            System.out.println("* short");   
            }
            if (x>=-2147483648 && x<=2147483647)
            {
            System.out.println("* int");   
            }
             if (x>=-9223372036854775808L && x<=9223372036854775807L)
            {
                System.out.println("* long");    
            }
            
            
            
            
        }
        catch(Exception e)
        {
            System.out.println(sc.next()+" can't be fitted anywhere.");
        }
        

    }

@saitejakanumuri
Copy link

Thank you

@AlaaAyaad74
Copy link

great

@tiiitu
Copy link

tiiitu commented Sep 1, 2021

what is try and catch Exception e?

@uday0903
Copy link

uday0903 commented May 7, 2024

try()
The try block is used to specify a block of code that may throw an exception.

catch(Exception e)
Your 'catch' block will literally 'catch'' an exception object that was 'thrown' at some point during a 'try' block and store it in the 'e' variable Inside your catch block

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment