Coorect the Following C++ code: #include #include #include #include #include using namespace std; // Function to print available currencies for exchange void printCurrencies() {     cout << "Available currencies for exchange: " << endl;     cout << "SAR --> Saudi Arabia Riyal" << endl;     cout << "KWD --> Kuwaiti Dinar" << endl;     cout << "QAR --> Qatar Riyal" << endl;     cout << "AED --> United Arab Emirates Dirham" << endl;     cout << "BHD --> Bahraini Dinar" << endl;     cout << "OMR --> Omani Rial" << endl; } // Function to convert currency double convertCurrency(string fromCurrency, string toCurrency, double amount) {     ifstream exchangeRateFile("ExchangeRate.txt"); // Open file for reading     string line;          double desiredRate=0;          while (getline(exchangeRateFile, line)) { // Read file line by line         int i=0;         string from, rate, to;          while (line[i] != ' ') {             i++;         }         i++;         while (line[i] != ' ') {             from += line[i];             i++;         }         i++;         while (line[i] != ' ') {             rate += line[i];             i++;         }         i++;         while (i < line.length()) {             to += line[i];             i++;         }         if(from==fromCurrency && to.substr(0,to.length()-1)==toCurrency){             desiredRate=stod(rate);             break;         }     }     exchangeRateFile.close(); // Close file     return amount * desiredRate; // Return converted amount } string toupper(string currency){     string s="";     for (char c : currency) {         s += toupper(c);     }     return s; } int main() {     printCurrencies(); // Print available currencies     string fromCurrency, toCurrency;     double amount;     cout << "Enter the currency you want to convert from: ";     cin >>fromCurrency;     fromCurrency = toupper(fromCurrency);     while(fromCurrency != "SAR" && fromCurrency != "KWD" && fromCurrency != "QAR" && fromCurrency != "AED" && fromCurrency != "BHD" && fromCurrency != "OMR"){         cout << "Invalid input, Please Enter again: ";               cin >>fromCurrency;         fromCurrency = toupper(fromCurrency);     }     cout<< "Enter the currency you want to convert to: ";         cin >>toCurrency;     toCurrency = toupper(toCurrency);     while(toCurrency != "SAR" && toCurrency != "KWD" && toCurrency != "QAR" && toCurrency != "AED" && toCurrency != "BHD" && toCurrency != "OMR"){         cout<< "Invalid input, Please Enter again: ";         cin >>toCurrency;         toCurrency = toupper(toCurrency);     }     cout<<"Enter the amount you want to convert: ";      cin >> amount;     cout << amount << " " << fromCurrency << " = " << convertCurrency(fromCurrency, toCurrency, amount) << " " << toCurrency << endl;     return 0; }       to get the below result: Sample run1: The currencies we have exchange for are: SAR--> Saudi Arabia Riyal KWD --> Kuwaiti Dinar QAR --> Qatar Riyal AED--> United Arab Emirates Dirham BHD --> Bahraini Dinar OMR --> Omani Rial What is the currency you have? SaR What is the currency you want to exchange it for? aed How much money you want to exchange? 707 707 SAR is 692.86 AED    Sample run2: The currencies we have exchange for are: SAR --> Saudi Arabia Riyal KWD --> Kuwaiti Dinar QAR --> Qatar Riyal AED --> United Arab Emirates Dirham BHD --> Bahraini Dinar OMR--> Omani Rial What is the currency you have? Kuwaiti Incorrect abbreviation please provide it again Sad Incorrect abbreviation please provide it again SAR What is the currency you want to exchange it for? BHR Incorrect abbreviation please provide it again BHD How much money you want to exchange? 50 50 SAR is 5 BHD   Please note that the . “ExchangeRate.txt” file contain: 1.00 SAR 0.08 KWD 1.00 SAR 0.97 QAR 1.00 SAR 0.98 AED 1.00 SAR 0.10 BHD 1.00 SAR 0.10 OMR 1.00 QAR 0.08 KWD 1.00 QAR 1.01 AED 1.00 QAR 0.10 BHD 1.00 QAR 0.11 OMR 1.00 KWD 12.00 AED 1.00 KWD 1.23 BHD 1.00 KWD 1.26 OMR 1.00 AED 0.10 BHD 1.00 AED 0.10 OMR 1.00 BHD 1.02 OMR

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Topic Video
Question
 
Coorect the Following C++ code:

#include <bits/stdc++.h>
#include <iostream>
#include <fstream>
#include <string>
#include <cctype>

using namespace std;

// Function to print available currencies for exchange
void printCurrencies() {
    cout << "Available currencies for exchange: " << endl;
    cout << "SAR --> Saudi Arabia Riyal" << endl;
    cout << "KWD --> Kuwaiti Dinar" << endl;
    cout << "QAR --> Qatar Riyal" << endl;
    cout << "AED --> United Arab Emirates Dirham" << endl;
    cout << "BHD --> Bahraini Dinar" << endl;
    cout << "OMR --> Omani Rial" << endl;
}

// Function to convert currency
double convertCurrency(string fromCurrency, string toCurrency, double amount) {
    ifstream exchangeRateFile("ExchangeRate.txt"); // Open file for reading
    string line;
    
    double desiredRate=0;
    
    while (getline(exchangeRateFile, line)) { // Read file line by line
        int i=0;
        string from, rate, to;
         while (line[i] != ' ') {
            i++;
        }
        i++;
        while (line[i] != ' ') {
            from += line[i];
            i++;
        }
        i++;
        while (line[i] != ' ') {
            rate += line[i];
            i++;
        }
        i++;
        while (i < line.length()) {
            to += line[i];
            i++;
        }
        if(from==fromCurrency && to.substr(0,to.length()-1)==toCurrency){
            desiredRate=stod(rate);
            break;
        }
    }
    exchangeRateFile.close(); // Close file
    return amount * desiredRate; // Return converted amount
}

string toupper(string currency){
    string s="";
    for (char c : currency) {
        s += toupper(c);
    }
    return s;
}

int main() {
    printCurrencies(); // Print available currencies

    string fromCurrency, toCurrency;
    double amount;

    cout << "Enter the currency you want to convert from: ";
    cin >>fromCurrency;
    fromCurrency = toupper(fromCurrency);
    while(fromCurrency != "SAR" && fromCurrency != "KWD" && fromCurrency != "QAR" && fromCurrency != "AED" && fromCurrency != "BHD" && fromCurrency != "OMR"){
        cout << "Invalid input, Please Enter again: ";      
        cin >>fromCurrency;
        fromCurrency = toupper(fromCurrency);
    }

    cout<< "Enter the currency you want to convert to: ";    
    cin >>toCurrency;
    toCurrency = toupper(toCurrency);
    while(toCurrency != "SAR" && toCurrency != "KWD" && toCurrency != "QAR" && toCurrency != "AED" && toCurrency != "BHD" && toCurrency != "OMR"){
        cout<< "Invalid input, Please Enter again: ";
        cin >>toCurrency;
        toCurrency = toupper(toCurrency);
    }

    cout<<"Enter the amount you want to convert: "; 
    cin >> amount;

    cout << amount << " " << fromCurrency << " = " << convertCurrency(fromCurrency, toCurrency, amount) << " " << toCurrency << endl;

    return 0;
}

 

 

 

to get the below result:

Sample run1:

The currencies we have exchange for are:

SAR--> Saudi Arabia Riyal

KWD --> Kuwaiti Dinar

QAR --> Qatar Riyal

AED--> United Arab Emirates Dirham

BHD --> Bahraini Dinar

OMR --> Omani Rial

What is the currency you have? SaR

What is the currency you want to exchange it for?

aed

How much money you want to exchange?

707

707 SAR is 692.86 AED

 

 Sample run2:
The currencies we have exchange for are:
SAR --> Saudi Arabia Riyal
KWD --> Kuwaiti Dinar
QAR --> Qatar Riyal
AED --> United Arab Emirates Dirham
BHD --> Bahraini Dinar
OMR--> Omani Rial
What is the currency you have? Kuwaiti
Incorrect abbreviation please provide it again
Sad
Incorrect abbreviation please provide it again
SAR
What is the currency you want to exchange it for?
BHR
Incorrect abbreviation please provide it again
BHD
How much money you want to exchange?
50
50 SAR is 5 BHD

 

Please note that the .

  • “ExchangeRate.txt” file contain:

1.00 SAR 0.08 KWD

1.00 SAR 0.97 QAR

1.00 SAR 0.98 AED

1.00 SAR 0.10 BHD

1.00 SAR 0.10 OMR

1.00 QAR 0.08 KWD

1.00 QAR 1.01 AED

1.00 QAR 0.10 BHD

1.00 QAR 0.11 OMR

1.00 KWD 12.00 AED

1.00 KWD 1.23 BHD

1.00 KWD 1.26 OMR

1.00 AED 0.10 BHD

1.00 AED 0.10 OMR

1.00 BHD 1.02 OMR

Expert Solution
steps

Step by step

Solved in 4 steps with 3 images

Blurred answer
Knowledge Booster
Instruction Format
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-engineering and related others by exploring similar questions and additional content below.
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY