現在、私のプログラムは最初の ifステートメントを実行します。ここでは、 'w'が要件を満たしていなくても 'w'に3.5を掛けます。私が4の入力を入れると、出力は14(4 * 3.5)に変わります.3から10ポンドの間になるので実際には34(4 * 8.5)になります。修正は簡単だと確信していますが、見つけられないようです!最初のIFステートメントを実行するプログラム
#include <iostream>
using namespace std;
int main()
{
float w, price;
cout << "Enter weight of package : ";
cin >> w;
if (0 < w <= 1)
{
price = 3.5 * w;
}
else if (1 < w <= 3)
{
price = 5.5 * w;
}
else if (3 < w <= 10)
{
price = 8.5 * w;
}
else if (10 < w <= 20)
{
price = 10.5 * w;
}
else if (20 < w <= 30)
{
price = 12.5 * w;
}
else if (30 < w)
{
cout << "The package cannot be shipped" << endl;
}
else
cout << "Invalid input" << endl;
cout << "Weight : " << w << " lbs" << endl;
cout << "Shipping cost : $" << price << endl;
}
ああ私が見る!私は '&&'の使用について完全に忘れていました。どうもありがとうございました – Gizmoh