●相手の名前を聞いて挨拶するプログラムを拡張して自分に対してだけ特別の挨拶をするようにします。入力された名前によって判断させます。
SET ECHO "OFF" LET aisatsu$ = "こんにちは" LET san$ = "さん" INPUT aite$ IF aite$ = "自分の名前" THEN LET bun$ = aisatsu$ & "おまちしておりました。" ELSE LET bun$ = aisatsu$ & aite$ & san$ END IF PRINT bun$ END
●もちろん "自分の名前" はこのまま入れずに自分の名前に変えます。
●赤の部分が書き加えられた部分です。IF aite$="自分の名前" THEN という部分で入力されたのが自分の名前かどうか調べています。
●あるいは、LET jibun$="自分の名前" をあらかじめやっておいて、IF aite$=jibun$ THEN としてもかまいません。
●ここの = は "代入" ではなく "等しい" という意味になります。
●調べた結果条件が成立していた場合には ELSE までに書かれた内容を実行します。その後は、ELSE 以下をとばして END IF の後の命令に進みます。
●条件が成立していないときは、ELSE までをとばして、ELSE から END IF の間に書かれた内容を実行します。もちろんその後は END IF の後の命令に進みます。
IF 条件 THEN 条件が成立したときにおこなうこと ELSE 条件が成立しなかったときにおこなうこと END IF
●相手の名前を聞いて挨拶するプログラムを拡張して自分の名前に対してだけ特別の挨拶をするようにしなさい。確認は自分の名前を入れたときとそうでないときの最低2つのテストをします。
??
結果は、
こんにちはおまちしておりました。 (自分の名前のとき) こんにちは〜〜さん (他人の名前のとき)
●結果が同じであればプログラムは細部まで同じである必要はありません。おなじ内容を話すのにいろいろな話のもっていきかたがあるのと同じです。次のようにしても結果は同じです。
SET ECHO "OFF" LET aisatsu$ = "こんにちは" LET san$ = "さん" INPUT aite$ IF aite$ = "自分の名前" THEN PRINT aisatsu$ ; "おまちしておりました。" ELSE PRINT aisatsu$ ; aite$ ; san$ END IF END
●話し方に上手下手があるように、わかりやすい話し方や回りくどい話し方があるようにプログラムも目的に応じて結果が同じでもよい・わるいの違いはあります。昔は「効率がよい」のが大切にされましたが、今は「わかりやすい」=「プログラムの間違いがおこりにくい・修正しやすい」ことが大切にされています。
●プログラムは将来的に機能を拡張していくことがあります。そのときのやりやすさも大切ですが、どのような拡張がされるかはそのときにならないとわからないことも多く、難しいところです。
●INPUT aite$ が INPUT suuchi となり、aite$="名前" が suuchi=4 などとなるだけです。文字変数にだけ $ がつきます。文字変数への代入だけ " で囲むことが必要です。
●1〜9までの数字を入力して、あらかじめ決めてある秘密の数字と一致したら「あたり」、そうでなければ「はずれ」を表示するプログラムを作りなさい。
himitsu = 4 と IF x = himitsu THEN というのを使いましょう もちろん 4 は好みの数字にしてかまいません
結果は、
あたり! (同じ時) はずれ! (ちがう時)