Basic Data Types – HackerRank Solution

Basic Data Types  – HackerRank Solution

Problem :

Some C++ data types, their format specifiers, and their most common bit widths are as follows:

  • Int (“%d”): 32 Bit integer
  • Long (“%ld”): 64 bit integer
  • Char (“%c”): Character type
  • Float (“%f”): 32 bit real value
  • Double (“%lf”): 64 bit real value

Reading :

To read a data type, use the following syntax:

scanf("`format_specifier`", &val)

For example, to read a character followed by a double:

char ch;
double d;
scanf("%c %lf", &ch, &d);

For the moment, we can ignore the spacing between format specifiers.

Printing :

To print a data type, use the following syntax:

printf("`format_specifier`", val)

For example, to print a character followed by a double:

char ch = 'd';
double d = 234.432;
printf("%c %lf", ch, d);

Note: You can also use cin and cout instead of scanf and printf; however, if you are taking a million numbers as input and printing a million lines, it is faster to use scanf and printf.

Input Format :

Input consists of the following space-separated values: intlongcharfloat, and double, respectively.

Output Format :

Print each element on a new line in the same order it was received as input. Note that the floating point value should be correct up to 3 decimal places and the double to 9 decimal places.

Sample Input :

3 12345678912345 a 334.23 14049.30493

Sample Output :


Explanation :

Print int 3,
followed by long 12345678912345,
followed by char a,
followed by float 334.23,
followed by double 14049.30493.

Solution :

#include <iostream>
#include <cstdio>
#include <iomanip> 
using namespace std;

int main() {
    int a;
    long b;
    char c;
    float d;
    double e;
    cin >> a >> b >> c >> d >> e;
    cout<< a << '\n' << b << '\n' << c << '\n';
    cout << std::fixed << std::setprecision(3) << d << '\n';
    cout << std::fixed << std::setprecision(9) << e << '\n';
    return 0;

 167 total views,  1 views today

Leave a Reply

Your email address will not be published. Required fields are marked *