如果用户要为两个房子输入相同的基本价格和平方英尺,我怎么能创建另一个if / else语句来输出两种房屋类型?所有帮助表示赞赏 .
#include using namespace std;
int main()
{
int baseColonial;
int baseSplit;
int baseSingle;
int sqftColonial;
int sqftSplit;
int sqftSingle;
int priceColonial;
int priceSplit;
int priceSingle;
cout << "Please enter the base price of the Colonial home: ";
cin >> baseColonial;
cout << "Now please enter the finished area in square feet: ";
cin >> sqftColonial;
cout << "Please enter the base price of the Split-entry home: ";
cin >> baseSplit;
cout << "Now please enter the finished area in square feet: ";
cin >> sqftSplit;
cout << "Please enter the base price of the Single-story home: ";
cin >> baseSingle;
cout << "Now please enter the finished area in square feet: ";
cin >> sqftSingle;
priceColonial = baseColonial / sqftColonial;
priceSplit = baseSplit / sqftSplit;
priceSingle = baseSingle / sqftSingle;
if ((priceColonial <= priceSplit) && (priceColonial <= priceSingle))
{
cout << endl << "The Colonial house is the cheapest." << endl;
}
else if ((priceSplit <= priceColonial) && (priceColonial >= priceSingle))
{
cout << endl << "The split-entry house is the cheapest." << endl;
}
else if ((priceSingle <= priceSplit) && (priceSplit >= priceColonial))
{
cout << endl << "The single-story house if the cheapest." << endl;
}
return 0;
我只是试图将这个代码用于一个场景,其中所有3个都是每平方英尺相同的价格,但它没有正常运行 . 我错过了什么?
否则如果((priceSingle == priceSplit)&&(priceSingle == priceColonial)){cout << endl <<“所有三个房屋模型的每平方英尺都有相同的价格 . ” << endl; }
2 回答
您需要将if / else if语句中的> =和<=比较更改为>或<,以使最后一个else语句生效 . 否则,当所有房屋价格相同时,将满足第一个if条件 . 也就是说,例如,如果所有房屋的价格都是50,那么因为您的第一个条件指定(priceColonial <= priceSplit)&&(priceColonial <= priceSingle),这个条件将成立,因为您还要检查此条件下的相等性 .
你可以这样:
检查下面的其他 - 如果梯子: