小学生・中学生向けのICT教室/
イフキッズプログラミング日暮里

03-6806-6861
(平日10:00~18:30)

小学生・中学生向けのICT教室/
イフキッズプログラミング日暮里

03-6806-6861
(平日10:00~18:30)TOPへ戻る
メニュー
最近のブログ一覧




最近の生徒様の声


お知らせ一覧




タグ

【火2】エラーの原因は?

2024/09.26

こんにちは!
キッズプログラミング教室「イフキッズアカデミー」
あさみ先生です!


※クラス分け
【火1】・・・火曜日16:00〜17:30
【火2】・・・火曜日17:40〜19:10
【木1】・・・木曜日16:00〜17:30
【木2】・・・木曜日17:40〜19:10
【土】・・・土曜日10:00〜11:30
【日】・・・日曜日10:00〜11:30


今回は火曜後半のレッスンを報告します!

生徒はHちゃん(中3)でした。
それでは、レポートスタートです。

Hちゃんは前回に引き続き、Visual Studioで『分岐処理』の学習に取り組んでもらいました。

今回も集中して取り組んでくれていましたが、

H「先生。」
あ「はい。」
H「エラーが何個か出ていて、原因がわからないです。」
あ「まず、前回先生がエラーについて言ったこと覚えてる?」
H「…。(首をかしげる)」
あ「エラーが出たまま次の処理を書いていかずに、エラーが出たらそのエラーを解決してから次に進むんだよっていう話をした。」
H「あっ。はい。」
あ「まず、どこまでの処理はエラーに影響していないか分かってる?」
H「わからないです。」
あ「実際には赤波線が出ているところとは違う部分の影響で、出てるものもあるから放置したまま進めていくと、原因がわかりずらくなるからね!」
H「はい。」

まず、1つ目の原因は「if~else if~else」構文の処理の区切り(ブロック)を示す、{}の記載が適切でないことでした。
正しくは下記ですが、Hちゃんは分岐条件までを含めて{}で囲っていました。
——————
if(条件式1)
条件式1を満たしているときの処理}
else if(条件式2)
条件式1を満たさず、条件式2を満たしているときの処理}
else
条件式1,2を満たしていないときの処理}
——————
テキストの構文と見比べてもらい、{の開始位置を修正し1つ目は完了しました。

2つ目の原因は、複数の条件を1つの分岐条件に指定する方法でした。
Hちゃんが作っていた条件は、来店回数が2~3回の場合にサービスチケット2枚と表示するものでした。

Hちゃんは下記のように記載していたのですが、これでは正しくありません。
else if (2 <= time <= 3)

あ「分岐の条件の満たしているかどうかって、比較条件の結果がtrueかfalseかだったよね?」
H(うなずく)
あ「今書いてる条件って、trueかfalseかの判断を2回する2つの条件のはず。timeが2以上かで1つ、3以下かで1つだよね。2以上は満たしてるけど、3以下は満たさない場合とかもある。まとめることは出来ないから、それぞれ別の条件として書いて、”かつ”か”または”を使って複数の条件の組み合わせを考えないといけない。スクラッチでもそれぞれを組み合わせてたよね?」
H「はい。」

かつ(&&)とまたは(||)の書き方をホワイトボードに書き出し、Hちゃんにもメモを取ってもらいました。

あとは「;」のありなしによるエラーでした。

エラー以外のわからない処理、曖昧な処理などはしっかりと確認や質問をしてくれていました。
今回は、2つの課題が終了し時間となりました。

エラーはその都度解決!
次回以降、意識していきましょうね。


次回のレポートもお楽しみに!

無料体験授業実施中!
毎週火曜日 16:00~17:30、17:40~19:10
毎週木曜日 16:00~17:30、17:40~19:10
毎週土曜日 10:00~11:30、11:40~13:10
※日曜日も臨時で実施していることがあります
 お気軽にお問い合わせください

お申し込み・お問い合わせは、こちら



お電話でも受け付けております。
03-6806-6861
(平日10:00~18:00)

イフキッズLINE@お友だち募集中!
新着授業レポートの通知、無料説明会やイベントの案内など、
耳よりな情報を配信中です。
加えて、お友だち登録されている方には、
イベント参加費の割引、
入会の際の割引、プレゼントなどの特典も!


友だち追加
   お問い合わせボタン|プログラミングスクール・習い事のイフキッズプログラミング(IF Kids Programming) お問い合わせボタン|プログラミングスクール・習い事のイフキッズプログラミング(IF Kids Programming)