# Print Pretty in C++ | HackerRank Solution

Hello coders, today we are going to solve Print Pretty HackerRank Solution in C++.

## Problem

Given a text file with many lines of numbers to format and print, for each row of 3 space-separated doubles, format and print the numbers using the specifications in the Output Format section below.

## Input Format

The first line contains an integer, T, the number of test cases.
Each of the T subsequent lines describes a test case as 3 space-separated floating-point numbers: AB, and C, respectively.

## Constraints

• 1 <= T <= 1000
• Each number will fit into a double.

## Output Format

For each test case, print 3 lines containing the formatted AB, and C, respectively. Each AB, and C must be formatted as follows:

1. A: Strip its decimal (i.e., truncate it) and print its hexadecimal representation (including the 0x prefix) in lower case letters.
2. B: Print it to a scale of 2 decimal places, preceded by a + or  sign (indicating if it’s positive or negative), right justified, and left-padded with underscores so that the printed result is exactly 15 characters wide.
3. C: Print it to a scale of exactly nine decimal places, expressed in scientific notation using upper case.

Sample Input

``````1
100.345 2006.008 2331.41592653498``````

Sample Output

``````0x64
_______+2006.01
2.331415927E+03``````

## Explanation

For the first line of output, (100)10 = (64)16 (in reverse, 6 x 161 + 4 x 160 = (100)10).
The second and third lines of output are formatted as described in the Output Format section.

## Solution – Print Pretty in C++

### C++

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

int main() {
int T; cin >> T;
cout << setiosflags(ios::uppercase);
cout << setw(0xf) << internal;
while(T--) {
double A; cin >> A;
double B; cin >> B;
double C; cin >> C;

/* Enter your code here */
cout << resetiosflags(ios::uppercase|ios::scientific);
cout << std::setiosflags (ios::left|ios::fixed);
cout << setw(0) << std::hex;
cout << std::setiosflags (ios::showbase);
cout << (unsigned long)A << std::endl;

cout << resetiosflags(ios::showbase);
cout << setw(0xf) << setfill('_')<< std::dec ;
cout << setiosflags (ios::showpos) << setprecision(2);
cout  << B << endl;

cout << resetiosflags(ios::fixed|ios::showpos);
cout << setiosflags (ios::scientific | ios::uppercase) << setprecision(9);
cout << C << std::endl;
}
return 0;

}```

Disclaimer: The above Problem (Print Pretty) is generated by Hacker Rank but the Solution is Provided by CodingBroz. This tutorial is only for Educational and Learning Purpose.