2017-06-20 13 views
-2

私が行うべきことの記述は以下の通りです。プログラムは実行されますが、正しい数値が出てくるわけではありません。私は論理が正しいと思うが、それは動作していない。なぜ私は間違った出力を得ていますか?&Elseステートメントの場合

クッキーの数を取得します。クッキーの数を24で割ったものがあります。余分なクッキーが0より大きい場合は、ボックスを1つ追加します。

私たちは箱の数を取って、余分な箱は> 0です。

次に、出荷用コンテナと箱の合計数があります。

私はなぜそれが動作していないとこの3時間のこの問題に立ち往生し、最後にあきらめて助けを求められたのかわかりません。

クッキーの箱には24個のクッキーを入れることができ、容器には 個のクッキーを75個分入れることができます。 クッキーの総数、ボックス内のクッキーの数、および コンテナ内のクッキーボックスの数を入力するようにユーザーに促すプログラムを作成します。次に、プログラムは、クッキーを出荷するために箱の数と 容器の数を出力する。各ボックスには特定のCookie数の が含まれている必要があり、各コンテナには指定された数の ボックスが含まれている必要があります。 Cookieの最後のボックスに指定された数の 個未満のCookieが含まれている場合は、それを破棄して残りのCookieの数を出力できます。同様に、 最後のコンテナに指定されたボックスの数が含まれていない場合は、 を破棄して残りのボックスの数を出力できます。これは選択制御構造上の の章であるため、クッキーが存在しないか、ボックスがない場合 残りのクッキーまたは残りのボックスは出力されません。

#include<iostream> 
#include<cmath> 

using namespace std; 

int main() 

{ 
// Declare variables 
    int cookies, extraCookies; 
    int boxes,totalBoxes; 
    int leftOverBoxes; 
    int containers; 
    boxes = (cookies/24); 

    extraCookies = cookies%24; 
    containers = boxes/75; 
    leftOverBoxes = boxes%75; 


// Ask for the user input (doesnt make sense because we are given the capacities) 
    cout << " How many cookies do you have ?"<< endl; 
    cin >> cookies; 
    cout << " You have this many cookies: " << cookies << endl; 

    cout << " How many cookies can you fit in one box ?" << endl; 
    cin >> cookies; 

    cout << " How many cookie boxes can you fit into a container ?" << endl; 
    cin >> boxes; 

    // Computer number of boxes needed 
    if(extraCookies > 0) 
     totalBoxes = (boxes + 1); 
    cout <<" We need this many boxes:" << totalBoxes << endl; 

    if(leftOverBoxes > 0) 
     containers = (containers + 1); 
    cout << "We need this many containers: " << containers << endl; 


    return 0; 



    } 
+0

コードは実行されますが、実際には私に正しい番号が与えられていないため、これを理解しようとしている過去3時間は固まってしまいました。誰か助けてくれますか? –

+0

私は[ツアー]を受け、[尋ねる]ことを強くお勧めします。 – jonrsharpe

+0

これまでに質問された質問とあなたの解決策を提供するだけでは、Stack Overflowの質問には不十分です。あなたの事例が何をしようとしているのか、それが実際に何をしているのか、あなたが試したこととその努力の結果を説明してください。 –

答えて

0

C++が上から下に読み込まれます。私は何が起こっているのかを説明する、あなたのコードにコメントを追加することを許可する:あなたは、ユーザからの入力を取る前にboxesextraCookiescontainers、およびleftOverBoxesを計算している

#include<iostream> 
#include<cmath> 

using namespace std; // Bad practice, by the way 

int main() 

{ 
// Declare variables 
    int cookies, extraCookies; // cookies = 0, extraCookies = 0 
    int boxes,totalBoxes; // boxes = 0, totalBoxes = 0 
    int leftOverBoxes; // leftOverBoxes = 0 
    int containers; // containers = 0 
    boxes = (cookies/24); // boxes = 0/24 = 0, this line does nothing 

    extraCookies = cookies%24; // extraCookies = 0%24 = 0, this line does nothing 
    containers = boxes/75; // containers = 0/75 = 0, this line does nothing 
    leftOverBoxes = boxes%75; // leftOverBoxes = 0%75 = 0, this line does nothing 


// Ask for the user input (doesnt make sense because we are given the capacities) 
    cout << " How many cookies do you have ?"<< endl; 
    cin >> cookies; 
    cout << " You have this many cookies: " << cookies << endl; 

    cout << " How many cookies can you fit in one box ?" << endl; 
    cin >> cookies; // You throw away how many cookies the user has, and rewrite it with how many cookies fit in one box 

    cout << " How many cookie boxes can you fit into a container ?" << endl; 
    cin >> boxes; 

    // Computer number of boxes needed 
    if(extraCookies > 0) // 0 > 0 == false 
     totalBoxes = (boxes + 1); 
    cout <<" We need this many boxes:" << totalBoxes << endl; 

    if(leftOverBoxes > 0) // 0 > 0 == false 
     containers = (containers + 1); 
    cout << "We need this many containers: " << containers << endl; 


    return 0; 



    } 

。これらはすべて0に初期化されています。

ユーザからの入力を受けてから計算してください。

コードを一連の手順と考えてください。クッキーがまだ足りない場合に必要な箱の数を把握することはできません。

+0

私は初心者なので、それらの計算をif文の下に移動する必要があるのだろうか? –

+0

if文の上で、入力を受け取ります。 –

+0

なぜラインクッキー/ 24は何もしませんか?私は言葉で演算子を使うことができると思った? 私のコードのほとんどが何もしていないことから私は何を言っているのですか?私はこのミニプロジェクトに関連する章全体を読みました。私は完全に失われていると思います。私はできます;これを行うための他の方法を考える? –

関連する問題