0

フローチャート

上記のフローチャートは、20、40、60、80、100、120、140、160、180 の数字を画面に表示するアルゴリズムを表しています。while ステートメントを使用して、アルゴリズムをプログラムにコーディングします。カウンター変数は、count という名前の int 変数である必要があります。プログラムを保存して実行します。プログラムをテストして、正しい出力が得られるかどうかを確認します。エラーがあれば修正します。プログラムが正しく実行されている場合は、IPO チャートとプログラム コードをコピーして Word 文書に貼り付けます。

C++ を始めたばかりで、while ステートメントの使い方とコードの書き方がよくわかりません。助けていただければ幸いです。これまでのところ、私のコードは次のとおりです。

#include <iostream>
using namespace std;

int main ()
{
  int count;
  count = 10

;  while (count < 200) {
    cout << count << ", ";
    count*=2;
  }

  system("pause");
  return 0;
}

「カウンターに 10 を加算」し、上記の数字を表示するにはどうすればよいですか? (20, 40, 60, 80, 100, 120, 140, 160, 180) これまでのところ、10, 20, 40, 80, 160 しか表示されません. ? ありがとう!

4

5 に答える 5

2

変数に 10 を追加するには、次を使用できます。

count = count + 10;

または短縮形:

count += 10;

2 を掛けた数値を出力するには、次のように簡単に使用できます。

cout << (count * 2);

(一見)望ましい形式で数値リストを出力するという点では", "、最初のすべてのエントリバーの前に必要なので、coutステートメントを次のように変更できます。

if (count > 10)        // assuming 10 is the first number.
    cout << ", ";
cout << count;

そして最後に改行を書き出すことを確認してください:

cout << '\n';

1行の数値の適切なフォーマットについて実際に心配していない場合は、次のように入力してください。

cout << count << '\n';

1行に1つ取得します。


例として、3 の倍数より 1 小さい数から 30 より小さい 1 を含む数を出力するプログラムを次に示します。

#include <iostream>

int main (void) {
    int num = 3;
    while (num <= 30) {
        if (num > 3)
            std::cout << ", ";
        std::cout << (num - 1);
        num = num + 3;
    }
    std::cout << '\n';
    return 0;
}

出力は次のとおりです。

2, 5, 8, 11, 14, 17, 20, 23, 26, 29

上記のコメントとサンプル プログラムを分析するだけで、独自の仕様に合わせて同様のプログラムを作成できることを願っています。

もちろん、恣意的な制限が課せられていなければ、もっと良い方法があることがよくあります。プログラム全体は次のように記述できます。

#include <iostream>

int main (void) {
    std::cout << 20;
    for (int num = 40; num < 200; num += 20)
        std::cout << ", " << num;
    std::cout << '\n';
    return 0;
}

ただし、これらの制限はおそらくC++ の特定の部分を確実に習得するためのものであるため、長い道のりを歩まなければなりません。

于 2012-10-19T06:19:36.260 に答える
0

あなたがすべき:

  1. ing中 に乗算coutして、乗算がの実際の値に影響を与えないようにしますcount
  2. ingの後に10を追加coutして、次の反復でシーケンスに新しい値が出力されるようにします。
  3. の間、繰り返し続けcount < 100ます。

このような:

while (count < 100) {
    cout << count*2 << ", ";
    count+=10;
}
于 2012-10-19T06:26:18.273 に答える
0

フローチャートを理解しているので、2の製品のみが表示されるはずです。そう、

count*=2;

カウントが変わるので不正解です。10 を追加したいので、 に置き換えcount+=10;ます。

上記では count を出力していますが、2 つの積を出力したい場合:

cout << (2*count) << ", ";

最後に、セミコロンを while ステートメントの前から後ろに移動する必要がありますcount=10

また、system("pause"); - なぜ間違っているのですか?

于 2012-10-19T06:23:34.670 に答える
0

フローチャートを間違った方法で解釈しています。でカウンターに 2 を掛けていますがcount*=2、そうすべきではありません。フロー チャートには、カウンターに 2 を掛けたものを表示すると、意味が異なります。

while (count < 200) {
  cout << count * 2 << ", ";
  count += 10;
}

表示コマンドは平行四辺形で、追加コマンドは四角形であることに注意してください。これらの形状はフローチャートでは異なる意味を持ちます。

于 2012-10-19T06:23:59.270 に答える
0

プラス記号 (+) を使用して特定の値を追加し、それらに = を割り当てます。または += の組み合わせ。

コードを短くするには、次のようにします。

int main(int argc, char* argv[])
{
int count = 10;
while( (count+=10) < 200 )
    cout << (count*2) << ", ";

system("pause");
return 0;
}

または、このような単純なカウント ループが必要な場合は、次のような for() ループを使用します。

int main()
{
for( int count = 10; count < 200; count+=10)
    cout << (count*2) << ", ";

//do stuff    
}
于 2012-10-19T06:35:34.280 に答える