Java Datatypes Hackerrank Problem – CoderInMe

Problem related to Java Datatypes Hackerrank Problem :  Java has 8 primitive datatypes:

char, boolean, byte, short, int, long, float, and double are Java Datatypes. For this Java DataTypes Hackerrank Problem, we’ll work with the primitives used to hold integer values (byte, short, int, and long):

  • A byte is an 8-bit signed integer.
  • A short is a 16-bit signed integer.
  • An int is a 32-bit signed integer.
  • A long is a 64-bit signed integer.

Given an input integer, you must determine which primitive data types are capable of properly storing that input.

To get you started, a portion of the solution is provided for you in the editor.

Input Format Java Datatypes Hackerrank Problem

The first line contains an integer, T , denoting the number of test cases.
Each test case, T , is comprised of a single line with an integer, n , which can be arbitrarily large or small.

Output Format Java Datatypes Hackerrank Problem

For each input variable n and appropriate primitive dataType, you must determine if the given primitives are capable of storing it. If yes, then print:

n can be fitted in:
* dataType

If there is more than one appropriate data type, print each one on its own line and order them by size (like: byte<short<int<long).

If the number cannot be stored in one of the four aforementioned primitives, print the line:

n can't be fitted anywhere.

Sample Input


Sample Output

-150 can be fitted in:
* short
* int
* long
150000 can be fitted in:
* int
* long
1500000000 can be fitted in:
* int
* long
213333333333333333333333333333333333 can't be fitted anywhere.
-100000000000000 can be fitted in:
* long

View For Java Datatypes Hackerrank Problem:

-150 can be stored in a short, an int, or a long.

213333333333333333333333333333333333333333 is very large and is outside of the allowable range of values for the primitive data types discussed in this problem.

Code for this :

import java.util.*;

class Solution{
    public static void main(String []argh)

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

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

                long x=sc.nextLong();
                System.out.println(x+" can be fitted in:");
                if(x>=-128 && x<=127)System.out.println("* byte");
                if(x >= -Math.pow(2, 15) && x <= Math.pow(2, 15) - 1)
                System.out.println("* short");
            if(x >= -Math.pow(2, 31) && x <= Math.pow(2, 31) - 1)
                System.out.println("* int");
            if(x >= -Math.pow(2, 63) && x <= Math.pow(2, 63) - 1)
                System.out.println("* long");
            catch(Exception e)
                System.out.println(" can't be fitted anywhere.");



Leave a reply:

Your email address will not be published.