我正在尝试编写一个简单的计算程序,但答案仍然是0

时间:2017-01-29 03:55:39

标签: c++ calculator

我花了几个小时试图弄清楚为什么这会回来为0如果有人可以提供帮助那就太棒了。

  1 /*Written by Connor Green*/
  2 /*CISP 1010 01/28/17*/
  3
  4 #include <iostream>
  5 using namespace std;
  6
  7 int main()
  8
  9
 10 {
 11     int carton_size, number_cartons, eggs_per_omelette, number_of_omelettes;
 12 /*This will tell you how many omelettes you can make*/
 13
 14    number_of_omelettes = carton_size * number_cartons / eggs_per_omelette;
 15    cout << "Welcome to the Egg Ordering Guide.\n";
 16    cout << "How many eggs do you want per carton? (12, 18, or 25):\n";
 17    cin >> carton_size;
 18    cout << "How many cartons?:\n";
 19    cin >> number_cartons;
 20    cout << "How many eggs in an omelette? (2 or 3):\n";
 21    cin >> eggs_per_omelette;
 22    cout << "You can make ";
 23    cout << number_of_omelettes;
 24    cout << " omelettes with this amount of eggs.\n";
 25
 26    return 0;
 27 }

1 个答案:

答案 0 :(得分:2)

这是因为您在获取此计算的输入变量之前计算number_of_omelettes 。将该计算移至输出之前:

...
number_of_omelettes = carton_size * number_cartons / eggs_per_omelette;
cout << "You can make " << number_of_omelettes << " omelettes with this amount of eggs.\n";

另外,请注意除法/运算符在乘法*运算符之前,由于整数除法可能导致零。要避免这种情况,请使用括号强制乘法在除法之前:

number_of_omelettes = (carton_size * number_cartons) / eggs_per_omelette;