0

私は、ピザの注文を受けるプログラムを作成する任務を負っています。サイズを選択するための 2 つのラジオ ボタン (Large 6$、X-Large $12) と、トッピングの数を選択するための 4 つのラジオ ボタン (1、2、3、4) をユーザーに提供しました。税込みのコストを計算する式を思いつきました (C=1.13(0.75(x-1)+1)+S、x はトッピング、S はサイズ)。

私の問題は、方程式をコーディングしようとすると、最後から 2 行目に割り当てられていない変数の numbToppings とサイズの使用にエラーがあると表示されることです。

なぜこれが起こっているのか、そしてそれを修正する方法についてのアイデア。

        const double taxes = 1.13;
        const double toppings = 0.75;
        double size;
        double numToppings;
        double costInitial;
        double costTotal;

        if (radLarge.Checked == true)
        {
            size = 6;
        }

        else if (radXLarge.Checked == true)
        {
            size = 12;
        }

        if (rad1.Checked == true)
        {
            numToppings = 1;
        }

        else if (rad2.Checked == true)
        {
            numToppings = 2;
        }

        else if (rad3.Checked == true) 
        {
            numToppings = 3;
        }

        else if (rad4.Checked == true) 
        {
            numToppings = 4;
        }

        costInitial = ((toppings * numToppings - 1) + 1) + size;
        costTotal = taxes * costInitial; 
4

1 に答える 1

0

シンプルにこうする

double numToppings = 0;

ゼロに設定します。

理由: 計算を行っていnumToppingsますが、考えられるすべての条件を処理し、いずれにしても初期化されることを確認するには、コンパイラが十分にインテリジェントではありませnumToppingsん。

詳細については、ブール値を使用した switch ケースの奇妙な動作 を参照してください。

于 2013-10-09T01:39:21.587 に答える