Skip to main content

Java Datatypes Hackerrank solution in Java

 Java Datatypes Hackerrank solution in Java



Problem-7:-

Java has 8 primitive data types; char, boolean, byte, short, int, long, float, and double. For this exercise, we'll work with the primitives used to hold integer values (byte, short, int, and long):

  • byte is an 8-bit signed integer.
  • short is a 16-bit signed integer.
  • An int is a 32-bit signed integer.
  • 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.

Reference: https://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html

Input Format

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

Output Format

For each input variable  and appropriate primitive , 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 (i.e.: ).

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

n can't be fitted anywhere.

Sample Input

5
-150
150000
1500000000
213333333333333333333333333333333333
-100000000000000

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

Explanation

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

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


Solution:-

import java.util.*;
import java.io.*;



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>=-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 >= -Math.pow(2, 63) && x <= Math.pow(2, 63) - 1)
                System.out.println("* long");
                
            }
            catch(Exception e)
            {
                System.out.println(sc.next()+" can't be fitted anywhere.");
            }

        }
    }
}


Explanation:-

In this program, basically they ask for to print the data type in which the integer value can be put. For Example, a byte can stored the integer value starting from -8 to 7 and other datatype also have there range which is given below:-

                 pic source:- cs.fit.edu

When writing the code, you may note that, i use if statement more than one time(or Nested If) and not use If-else statement. This is because if we use if else statement then then number after considering the number stop there execution and return the data type value and not proceed further. This is why we use nested if statement.


Hackerrank Completion Proof:-



Hope, it Helps!!

Comments

Post a Comment

Popular posts from this blog

Java Stdin and Stdout II Hackerrank Solution in Java

 Java Stdin and Stdout II Hackerrank Solution in Java Problem-4:- In this challenge, you must read an  integer , a  double , and a  String  from stdin, then print the values according to the instructions in the  Output Format  section below. To make the problem a little easier, a portion of the code is provided for you in the editor. Note:  We recommend completing  Java Stdin and Stdout I  before attempting this challenge. Input Format There are three lines of input: The first line contains an  integer . The second line contains a  double . The third line contains a  String . Output Format There are three lines of output: On the first line, print  String:  followed by the unaltered  String  read from stdin. On the second line, print  Double:  followed by the unaltered  double  read from stdin. On the third line, print  Int:  followed by the unaltered  integer  rea...

Java Output Formating Hackerrank Solution in Java

  Java Output Formating Hackerrank Solution in Java Problem-5:- Java's  System.out.printf  function can be used to print formatted output. The purpose of this exercise is to test your understanding of formatting output using  printf . To get you started, a portion of the solution is provided for you in the editor; you must format and print the input to complete the solution. Input Format Every line of input will contain a  String  followed by an  integer . Each  String  will have a maximum of   alphabetic characters, and each  integer  will be in the inclusive range from   to  . Output Format In each line of output there should be two columns: The first column contains the  String  and is left justified using exactly   characters. The second column contains the  integer , expressed in exactly   digits; if the original input has less than three digits, you must pad your outp...

Welcome to Java! Hackerrank Solution in Java

  W elcome to Java! Hackerrank Solution in Java Problem-1:- Welcome to the world of Java! In this challenge, we practice printing to stdout. The code stubs in your editor declare a  Solution  class and a  main  method. Complete the  main  method by copying the two lines of code below and pasting them inside the body of your  main  method. System . out . println ( "Hello, World." ); System . out . println ( "Hello, Java." ); Input Format There is no input for this challenge. Output Format You must print two lines of output: Print  Hello, World.  on the first line. Print  Hello, Java.  on the second line. Sample Output Hello, World. Hello, Java. Solution:- public   class   Solution   {      public   static   void   main ( String []   args )   {          /* Enter your code here. Print output...