2016-12-28 5 views
-10

ifの代わりにswitchの条件文でこのプログラムを書くには?ここで1から100までの7の倍数を表示するプログラムC++

#include <iostream> 
using namespace std; 
int main() 
{ 
    int i; 
    for (i = 1; i <= 100; i++) { 
     if ((i % 7 == 0) && (i > 0)) { 
      cout << i << endl; 
     } 
    } 

    return 0; 
} 
+1

'スイッチ(I){ケース7:ケース14:ケース21:/ *など... * /。ブレーク;デフォルト:/ *他のすべて*/'? –

+4

なぜあなたは 'switch'を使いたいのですか? 'if'ステートメントは完全に妥当です。 –

+0

@Someprogrammerdudeこれは7で割り切れるすべての数字を知り、リストする必要はありませんか?私がすべての数字が10000未満の同じプログラムを書くように頼むと、あなたの答えは...煩雑になります。 –

答えて

-1

あなたは以下のとおりです。

#include <iostream> 

int main() 
{ 
    for (int i = 1; i<=100; i++) 
    { 
     switch(i % 7) 
     { 
      case 0: 
       std::cout << i << std::endl; 
       break; 
      default: 
       break; 
     } 
    } 
    return 0; 
} 

オンライン編集:http://ideone.com/uq8Jue

0

あなたはswitch文と少し慣れていないように聞こえます。 switch文は、ブール引数ではないことを除いて、if-else文に似ています。それで本質的にそれは尋ねます:私にその価値を教えてください。そして、それぞれのケース(可能な結果)について、それはフォローアップ・アクションを持っています。

あなたは質問したいと思っています:数字、モジュラスの値を教えてください。7.ゼロであれば、カウンターに1を加えてください。 1の場合は、実行します。

だからコードがの一般構造を有するべきである:

Switch(i%7): 
    Case 0{increment counter or display to std. out or store in array} 
    Case 1{other action} 
+0

_ "switch文はif-else文と似ています" _実際はありません。 –

+0

@ LightnessRacesinOrbitよく読んでいれば、説明があります...誰かのために簡略化しようとしています。より細かいディテールはコンセプトほど重要ではありません。 –

+0

これは私が難しかった概念です。 switch文をif-else文と同じように考えると、誤った使用につながる可能性があります。なぜなら、それはそれが目的ではないからです。 –

関連する問題