如何添加钱面额c ++
How to add money denominations c++
非常新的程序员,我很难找到解决这个问题的方法。我有面额的货币,从一美元到一百美元。用户必须输入例如 4 美元和 5 5 美元,然后收到 29 美元的总和。我很茫然,我一直在尝试这里就是我所拥有的...
{ // dollar values
int n = std::numeric_limits<int>::max();
int b = std::numeric_limits<int>::max();
int dollarOne = 1;
int dollarTwo = 2;
int sum1; // defines sum
cin >> n >> dollarOne;
sum1 = ((n*dollarOne)+(b*dollarTwo); // sum function
cout << sum1 << endl; // displays total amount
system("pause");
return 0;
}
新建
国际美元Am1;
国际美元Am2;
整数总和;
辛>>美元Am1;
cin >> dollarAm2;
总和 = ((dollarAm1 * 1) + (dollarAm2 * 2));
cout << sum << endl;
你少了一个括号
sum1 = ((n*dollarOne)+(b*dollarTwo);
接下来,您应该使用 cin.get()
来结束您的程序,而不是 system("PAUSE")
。这在处理速度方面更有效。此外,您应该简单地执行 int n, b;
来初始化变量。
您应该像这样阅读输入:
std::cout << "Enter number of 1-dollar bills, and press \"Enter\". Next, enter number of 5-dollar bills:" << std::endl;
cin >> dollarOne;
cin >> dollarTwo;
int n = 0;
int b = 0;
int dollarOne = 1;
int dollarFive = 5;
int sum1; // defines sum
std::cin >> n;
std::cin >> b;
sum1 = (n*dollarOne)+(b*dollarFive); // sum function
std::cout << sum1 << std::endl; // displays total amount
system("pause");
return 0;
试试更像这样的东西(为简洁起见删除了错误处理):
{
int n;
int sum1 = 0;
cout << "How many bills: ";
cin >> n;
sum1 += (n*1);
cin.clear();
cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
cout << "How many bills: ";
cin >> n;
sum1 += (n*5);
cin.clear();
cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
cout << "How many bills: ";
cin >> n;
sum1 += (n*10);
cin.clear();
cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
cout << "How many bills: ";
cin >> n;
sum1 += (n*20);
cin.clear();
cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
cout << "How many bills: ";
cin >> n;
sum1 += (n*50);
cin.clear();
cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
cout << "How many 0 bills: ";
cin >> n;
sum1 += (n*100);
cout << "Total: $" << sum1 << endl;
cin.clear();
cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
cin.get();
return 0;
}
非常新的程序员,我很难找到解决这个问题的方法。我有面额的货币,从一美元到一百美元。用户必须输入例如 4 美元和 5 5 美元,然后收到 29 美元的总和。我很茫然,我一直在尝试这里就是我所拥有的...
{ // dollar values
int n = std::numeric_limits<int>::max();
int b = std::numeric_limits<int>::max();
int dollarOne = 1;
int dollarTwo = 2;
int sum1; // defines sum
cin >> n >> dollarOne;
sum1 = ((n*dollarOne)+(b*dollarTwo); // sum function
cout << sum1 << endl; // displays total amount
system("pause");
return 0;
}
新建 国际美元Am1; 国际美元Am2; 整数总和; 辛>>美元Am1; cin >> dollarAm2; 总和 = ((dollarAm1 * 1) + (dollarAm2 * 2));
cout << sum << endl;
你少了一个括号
sum1 = ((n*dollarOne)+(b*dollarTwo);
接下来,您应该使用 cin.get()
来结束您的程序,而不是 system("PAUSE")
。这在处理速度方面更有效。此外,您应该简单地执行 int n, b;
来初始化变量。
您应该像这样阅读输入:
std::cout << "Enter number of 1-dollar bills, and press \"Enter\". Next, enter number of 5-dollar bills:" << std::endl;
cin >> dollarOne;
cin >> dollarTwo;
int n = 0;
int b = 0;
int dollarOne = 1;
int dollarFive = 5;
int sum1; // defines sum
std::cin >> n;
std::cin >> b;
sum1 = (n*dollarOne)+(b*dollarFive); // sum function
std::cout << sum1 << std::endl; // displays total amount
system("pause");
return 0;
试试更像这样的东西(为简洁起见删除了错误处理):
{
int n;
int sum1 = 0;
cout << "How many bills: ";
cin >> n;
sum1 += (n*1);
cin.clear();
cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
cout << "How many bills: ";
cin >> n;
sum1 += (n*5);
cin.clear();
cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
cout << "How many bills: ";
cin >> n;
sum1 += (n*10);
cin.clear();
cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
cout << "How many bills: ";
cin >> n;
sum1 += (n*20);
cin.clear();
cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
cout << "How many bills: ";
cin >> n;
sum1 += (n*50);
cin.clear();
cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
cout << "How many 0 bills: ";
cin >> n;
sum1 += (n*100);
cout << "Total: $" << sum1 << endl;
cin.clear();
cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
cin.get();
return 0;
}