2

私は、C++ の多くの概念に比較的慣れていません。学校の課題です。今、私は使用しています

if(smartPhones >= 6000)
    commission = (smartPhones - 6000) * .25;
else(commission = 0);
if(serviceContracts >= 3500)
    commission1 = (serviceContracts - 3500) * .10;
else(commission1 = 0);
if(accessories >= 2000)
    commission2 = (accessories - 2000) * .05;
else(commission2 = 0);
if(maintenance >= 500)
    commission3 = (maintenance - 500) * .07;
else(commission3 = 0);

携帯電話の販売手数料を計算します。誰かが 6000 台を超える電話を販売する場合、6000 台を超えるすべての電話の 25% を手数料として受け取ります。3500 以上のサービス契約では、3500 台を超えるすべての契約の 10% を手数料として受け取ります。これらの制限に達しない場合、手数料は受け取りません。そのカテゴリの。

4 つの基準 (スマートフォン、サービス契約、アクセサリ、保守契約) すべてのコミッションを計算するために、1 つの関数を継続的に呼び出して使用する必要があります。これを適切に行うにはどうすればよいですか? また、関数内に何を含める必要がありますか? 関数内で If/Else ステートメントを使用できますか?

double calcComm(double sales, double base, double percent)
{

}

手数料を計算した後、void 関数を使用して、列と行に配置された量のデータを呼び出して表示する必要があります。の線に沿った何か

void display()
{
    double ID, totalCommission, smartPhones, serviceContracts, accessories, maintenance, commission, commission1, commission2, commission3, base, total;
cout << "Commission Statement for Salesman #: "<< ID << endl;
cout << left << "Product and Sales Amount " << endl;
cout << left << "Smart Phones: " << smartPhones << endl;
cout << left << "Service Contracts: "<< serviceContracts << endl;
cout << left << "Accessories: " << accessories << endl;
cout << left << "Maintenance Contracts: " << maintenance << endl;

cout << left << "Commission for all Products" << endl;
cout << left << "Smart Phones: " << commission << endl;
cout << left << "Service Contracts: " << commission1 << endl;
cout << left << "Accessories: " << commission2 << endl;
cout << left << "Maintenance Contracts: " << commission3 << endl;

cout << left << "Total Commission " << totalCommission << endl;
cout << left <<"Base Pay " << base << endl;
cout << left << "Total Due " << total << endl;
}
4

2 に答える 2

0

最も簡単な方法は、すべての種類の手数料を含む Commissions クラスを作成し、コードの最初のブロックを取得して Commissions インスタンスを作成 (入力) することです。

その後、Commissions インスタンスを表示メソッドに渡すことができます。

于 2012-11-02T00:10:17.307 に答える
0
  1. はい、関数内で if-else を使用できます。実際、ほとんどの C++ キーワードを使用できます (一部は、 などの他のコンテキストで制限されていclassますtemplate)。

  2. John3136 とは対照的に、おそらく列挙型で十分であり、規定されたフレームワークにも適合すると思います。いずれにせよ、コミッションは同じではなく、ベースも同じではないため、さまざまなタイプの販売を区別できる引数をその関数に渡す必要があります。関数内で、その引数を使用して if-else を使用できます。

于 2012-11-02T00:12:58.373 に答える