gpt4 book ai didi

c++ - 使用 if if 语句检查 C++ 中的范围

转载 作者:行者123 更新时间:2023-11-30 02:48:41 25 4
gpt4 key购买 nike

我试图使用 if 语句来检查输入的数字是否在我允许的范围内。但显然它不起作用。这是我的 if 语句

用户输入重量,我检查它是否在小重量/顶级重量之间

  const float SMALL_WEIGHT        = 2.3f;      // low end 1st range weight
const float TOP_SMALL_WEIGHT = 4.3f; // top end 1st range weight

cout << "Enter the weight of the laptop: ";
cin >> weight;

if ( weight < SMALL_WEIGHT && weight > TOP_SMALL_WEIGHT )
{
cout << "The weight " << weight << " is not between "
<< SMALL_WEIGHT << " and " << TOP_WEIGHT << endl;
return 1;
}

我尝试使用逻辑或 ||但它仍然无法正常工作。

编辑:这是全部代码

#include <iostream>    
#include <iomanip>
using namespace std;

const float SALE_START_PRICE = 500.0f; // discount if more than 500
const float DISCOUNT_PCT = .15f; // 15% discount
const float TAX_PCT = .075f; // tax is 7.5%

const float SMALL_WEIGHT = 2.3f; // low end 1st range weight
const float TOP_SMALL_WEIGHT = 4.3f; // top end 1st range weight
const float TOP_MID_WEIGHT = 5.8f; // top 2nd range weight
const float TOP_WEIGHT = 7.9f; // top 3rd range weight

const float SMALL_SHIP = 5.4f; // 1st range basic ship charge
const float MID_SHIP = 5.8f; // 2nd range basic ship charge
const float TOP_SHIP = 6.2f; // 3rd range basic ship charge

const float SMALL_SHIP_PCT = .025f;
const float MID_SHIP_PCT = 2.75f;
const float TOP_SHIP_PCT = 3.5;

int main()
{
float price, weight;
float discountAmount, salePrice;
float taxAmount, shippingCharges, totalSaleAmount;

cout << "Enter the original price of the laptop: ";
cin >> price;

cout << "Enter the weight of the laptop: ";
cin >> weight;


if ( weight < SMALL_WEIGHT && weight > TOP_SMALL_WEIGHT )
{
cout << "The weight " << weight << " is not between "
<< SMALL_WEIGHT << " and " << TOP_WEIGHT << endl;
return 1;
}

if ( price > SALE_START_PRICE )
{
discountAmount = price * DISCOUNT_PCT;
}
else
discountAmount = 0.00;

taxAmount = price * TAX_PCT;
salePrice = price - discountAmount;


if (weight < TOP_SMALL_WEIGHT)
shippingCharges = SMALL_SHIP + ( salePrice * SMALL_SHIP_PCT );
else if ( weight >= TOP_SMALL_WEIGHT && weight < MID_SHIP )
shippingCharges = MID_SHIP + ( salePrice * MID_SHIP_PCT);
else
shippingCharges = TOP_SHIP + ( salePrice * TOP_SHIP_PCT );

totalSaleAmount = salePrice + taxAmount + shippingCharges;

cout << fixed << showpoint << setprecision(2);
cout << "The original price : $" << price << endl;
cout << "The discount : $" << discountAmount << endl;
cout << "The sale price : $" << salePrice << endl;
cout << "The sales tax : $" << taxAmount << endl;
cout << "The shipping : $" << shippingCharges << endl << endl;
cout << "The total sale : $" << totalSaleAmount << endl;

return 0;
}

最佳答案

weight 不能既小于 SMALL_WEIGHT 又大于 TOP_SMALL_WEIGHT

我认为你想使用逻辑或 || 所以它变成:

if (weight < SMALL_WEIGHT || weight > TOP_SMALL_WEIGHT)
{
cout << "The weight " << weight << " is not between "
<< SMALL_WEIGHT << " and " << TOP_WEIGHT << endl;
return 1;
}

关于c++ - 使用 if if 语句检查 C++ 中的范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21860655/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com