# Cpp - Write program to use nested while loop to output exchange rate

## Requirements

Rewrite the following code with nested while loop

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

int main()
{
long   euro, maxEuro;     // Amount in Euros
double rate;              // Exchange rate Euro <-> \$

cout << "\n* * * TABLE OF EXCHANGE "
<<  " Euro - US-\$ * * *\n\n";

cout << "\nPlease give the rate of exchange: "
" one Euro in US-\$: ";
cin >> rate;
cout << "\nPlease enter the maximum euro: ";
cin >> maxEuro;
// Titles of columns:
cout << '\n'
<< setw(12) << "Euro" << setw(20) << "US-\$"
<< "\t\tRate: " << rate << endl;

// Formatting US-\$:
cout << fixed << setprecision(2) << endl;

long lower, upper,         // Lower and upper limit
step;                 // Step width

for( lower=1, step=1; lower <= maxEuro; step*= 10, lower = 2*step)
for( euro = lower, upper = step*10; euro <= upper && euro <= maxEuro; euro+=step)
cout << setw(12) << euro << setw(20) << euro*rate << endl;
return 0;
}
```

## Demo

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

int main() /*w w  w .  j a  va 2 s  . c om*/
{
long   euro, maxEuro;     // Amount in Euros
double rate;              // Exchange rate Euro <-> \$

cout << "\n* * * TABLE OF EXCHANGE "
<<  " Euro - US-\$ * * *\n\n";

cout << "\nPlease give the rate of exchange: "
" one Euro in US-\$: ";
cin >> rate;
cout << "\nPlease enter the maximum euro: ";
cin >> maxEuro;
// Titles of columns:
cout << '\n'
<< setw(12) << "Euro" << setw(20) << "US-\$"
<< "\t\tRate: " << rate << endl;

// Formatting US-\$:
cout << fixed << setprecision(2) << endl;

long lower, upper,         // Lower and upper limit
step;                 // Step width

lower=1, step=1;
while( lower <= maxEuro)
{
// The inner loop outputs a block:

euro = lower;
upper = step*10;
while( euro <= upper && euro <= maxEuro)
{
cout << setw(12) << euro
<< setw(20) << euro*rate << endl;
euro += step;
}
step *= 10, lower = 2*step;
}
return 0;
}
```