ページへ戻る

+ Links

 印刷 

blike​/intro​/p0004 のソース :: OSASK計画

osaskwiki:blike/intro/p0004のソース

« Prev  
TITLE:x
* (3) if [#i3a5015c]
-(by [[K]], 2011.02.14)
*** (1) if命令の基本形 [#fe895776]
-これから出てくるif命令というのは、次の形で使います。
 if (条件式) { 命令 }
-条件式というのは、 a == 1 とか b != c とか d > e * 3 とかそういうものです。ここで == は等しいという意味で、 != は等しくないという意味です。
--ここが見えにくいので違うフォントで書きますね。
 条件式というのは、 a == 1 とか b != c とか d > e * 3 とかそういうものです。ここで == は等しいという意味で、 != は等しくないという意味です。
--普通の(1個の) = は変数に値を代入するために使っているので、比較のときは使えないのです。
-以上とか以下という書き方もできます。 <= とか >= です。これは =< とか => と書いてはいけません。必ず大小記号を先にしてください。
-そして条件式がもし成立していたら、 { } ではさまれた中身の命令を実行します。成立していないときは、実行しません。
-こんな説明を見てもよく分からないと思うので、まずは実例です。
*** (2) rei0008.c [#fa9d958d]
 int a;
// printf("anataha... 1.boy 2.girl ? ");
// scanf("%d", &a);
 a = inptInt("あなたは... 1.おとこのこ 2.おんなのこ ? ");
 if (a == 1) { printf("かっこいい!"); }
 if (a == 2) { printf("かわいい!"); }
-このプログラムでは、最初にあなたが男の子か女の子かを聞かれます。それで数字を入力すると、「かっこいい!」とか「かわいい!」といってくれるわけです。1でも2でもない数字を入れたら何も言いません。
*** (3) rei0009.c [#fa9d958d]
 int a;
 printf("[ゆけつできる?]\n");
// printf("blood type : 1.O 2.A 3.B 4.AB ? ");
// scanf("%d", &a);
 a = inptInt("けつえきがたは : 1.O 2.A 3.B 4.AB ? ");
 if (a == 1) { printf("OK : O"); }
 if (a == 2) { printf("OK : O, A"); }
 if (a == 3) { printf("OK : O, B"); }
 if (a == 4) { printf("OK : O, A, B, AB"); }
-これは緊急時に輸血できる血液型を教えてくれるプログラムです。最初にタイトルが出ます。そしてあなたの血液型を聞かれます。たとえばA型の場合、O型とA型の血液が輸血可能だと教えてくれます。
--まあそれでも基本的には同じ血液型の血液を使うのが普通ですが。
*** (4) rei0010.c [#c7209481]
 int a;
// printf("nansai? ");
// scanf("%d", &a);
 a = inptInt("なんさいですか? ");
 if (a == 0) { printf("あかちゃん"); }
 if (1 <= a && a <= 5) { printf("ようじ"); }
 if (6 <= a && a <= 19) { printf("こども"); }
 if (20 <= a && a <= 64) { printf("おとな"); }
 if (a >= 65) { printf("こうれいしゃ"); }
-これは年齢を入れると、赤ちゃん・幼児・子供・大人・高齢者のどれにあたるのかを教えてくれるプログラムです。ここで、 && というのが新出ですよね。これは条件式の中でたまに出てくる記号で、「かつ」という意味です。つまり両方の条件が成立しているかどうかを調べます。どちらか一方しか成立していない場合は、 { } の中を実行しません。
*** (5) rei0011.c [#aee80bc3]
 int a, b, c, d, e;
 printf("[げんきチェック]\n");
 a = inptInt("さいきんあさに はやおきできますか 1.できる 0.できない ? ");
 b = inptInt("ごはんはおいしいですか 1.おいしい 0.おいしくない ? ");
 c = inptInt("しんぱいごとがありますか 1.ない 0.ある ? ");
 d = inptInt("よくねむれますか 1.ねむれる 0.あまりねむれない ? ");
 e = a + b + c + d;
 if (e == 4) { printf("あなたはとてもげんきです"); }
 if (1 <= e && e <= 2) { printf("あなたはふつうです"); }
 if (e == 0) { printf("あなたはげんきがありません しんぱいです");
-こんなものも作れます。もう説明しなくても分かりますよね?
*** (6) まとめ [#u0aba8a7]
-ここまでの命令だけでも、何か役に立つものは作れると思います。いろいろ作ってみると、いい勉強になります。
--たぶん http://www.athuman.com/ha/ta/ みたいな、質問に答えていってそれを集計してメッセージを出すものも、がんばれば作れます。
-ifはとてもよく使う命令なので、慣れておくといいと思います。

« Prev