当我为我的comp var输入任何数字时,它会输出0.我试着将它作为int原始的,并且阅读看起来就像double我想要的那样.我试过价格变量只是一个double而不是const double.我必须根据课程订购的数量申请折扣,我只是遗漏了一些任何帮助将不胜感激:
const double price = 99.0; // price per unit
double comp; // computer variable
double nodiscount = (price * comp);
double discount20 = (price * 0.8) * comp; // 10-19 20%
double discount30 = (price * 0.7) * comp; // 20-49 30%
double discount40 = (price * 0.6) * comp; // 50-99 40%
double discount50 = (price * 0.5) * comp; // 100 or more 50%
int main()
{
cout << "How many units sold?" << endl;
cin >> comp;
if ( comp >= 0) {
if ( comp <= 9 ) {
cout << "Total cost of purchase is " << nodiscount << endl;
} else if ( comp >= 10 && comp <= 19) {
cout << "The total cost with 20% discount is " << discount20 << endl;
} else if ( comp >= 20 && comp <= 49) {
cout << "The total cost with 30% discount is " << discount30 << endl;
} else if ( comp >= 50 && comp <= 99) {
cout << "The total cost with 40% discount is " << discount40 << endl;
} else if ( comp >= 100 ) {
cout << "The total cost with 50% discount is " << discount50 << endl;
}
} else {
cout << "you entered in invalid charechter pleas enter a number.";
}
}
Run Code Online (Sandbox Code Playgroud)
comp * whatever 在弄清楚是什么之后你需要计算comp.实际上,您使用默认值计算所有折扣comp = 0.(注意,如果comp是一个未初始化的局部变量,而不是全局变量,它将不会默认为0.这将是不确定的,你会得到各种疯狂的废话.)