Day9 ウォームアップ(10分)
※10分の使い方は、「進め方(10分の使い方)」を参照
※生成AIは使いません
※全部できなくてOK
※昨日より1行多く書けたら成功です
今日の準備(ウォームアップの前に)
- Day9.cs を追加する(ソリューションエクスプローラーで、ソリューションの下にある プロジェクト「MiniPractice」を右クリック → 追加 → クラス → 名前を Day9.cs)
- Program.cs を開き、Main 内の
Day8.Run()をDay9.Run()にå書き換える
0) 開始30秒:骨格チェック(全員)
次の形になっているかだけ確認します。
internal class Day9
{
public static void Run()
{
// ここに書く
}
}
- 処理は必ず Run() の { } の中 に書く
🔹 今日のルール
今日は Day9.cs を追加します。Day9.cs はソリューション内の 9つ目のファイル(クラス) になります。 その Run メソッドの { } の中に、すべてのコードを書いてください。
- Run 以外のメソッドは作りません
- 今は「形を揃える」時間です。中身より形を優先します
🔹 Day8 の振り返り(1分)
itemとitems…item.Lengthは各要素の文字数。items.Lengthは配列の要素数。条件判定にはitem.Lengthを使う- 合計の形 …
int sum = 0;をループの前に置き、ループ内でsum += numbers[i];と足す。ループの中身を空にしない - 問題3と発展の区別 … 問題3は「全合計」、発展は「条件を満たすものの合計」。それぞれ別々に計算して表示する
- foreach で合計 …
foreach (int n in numbers)ならsum += nとする。sum += numbers[n]は誤り(n はインデックスではない)
進め方(10分の使い方)
- 最初の5分:教科書もノートも見ずに、自分の力だけで書いてみましょう。止まっても構いません。思い出そうとすることが大切です。
- 後半5分:教科書・ノートを見てOKです。「どこを見ればよいか」「どう直せばよいか」を考えながら、完成に近づけましょう。
提出ルール(重要)
- 提出A(最低ライン):問題1だけ動けばOK
- 提出B(標準):問題1・2まで
- 提出C(到達):問題1・2・3(余裕があれば発展)
※今日は「全部できる」より「動く形に戻す」が目的です。
- 提出方法:GitHub Desktop で Commit → Push してください。講師は GitHub でコードを確認します。
- Slack:「Day9 完了しました」と一言送ってください(講師が確認のタイミングを把握するため)。
■ 問題1(基礎)
次の配列があります。
string[] months = { "1月", "2月", "3月", "4月", "5月", "6月" };
この配列の要素を、foreach を使って1つずつ表示してください。
※Day1〜8と同じ形です。形を思い出しましょう。
■ 問題2(配列+条件の組み合わせ)
次の配列があります。
string[] fruits = { "りんご", "ぶどう", "いちご", "メロン", "スイカ", "パイナップル", "キウイ" };
名前が 4文字以上 かつ 5文字以下 のものだけを表示してください。
ヒント:if (fruit.Length >= 4 && fruit.Length <= 5) のように、2つの条件を && でつなぎます。fruit.Length を使う(配列名の fruits.Length ではない)。
■ 問題3(少し思考)
次の配列があります。
int[] scores = { 70, 85, 90, 65, 80 };
この配列の 合計 を求めて表示してください。
ヒント:Day7・8と同じ形です。int sum = 0; をループの前に置き、ループ内で sum += scores[i]; のように足していきます。ループの中身を空にしないこと。
■ 発展(余裕がある人)
上の scores 配列の 平均 を求めて表示してください。
ヒント:合計を求めた後、(double)sum / scores.Length で平均を計算します。int 同士の割り算は切り捨てになるため、(double) でキャストします。結果は Console.WriteLine(平均の変数); で1回だけ表示。
⚠️ よくある誤り(Day9 で想定)
fruitとfruitsの混同 … 条件で使うのはfruit.Length(各要素の文字数)。fruits.Lengthは配列の要素数(7)- ループの中身が空 …
forを書いたら、中にsum += scores[i];を必ず入れる sumをループ内で宣言 … ループ内だと毎回リセットされる。ループの前で宣言する- 平均の切り捨て …
sum / scores.Lengthだけだと整数除算で切り捨て。(double)sum / scores.Lengthとする
🎯 今日の目的
- foreach の形を思い出せる
itemとitemsを混同しない(各要素の Length を使う)- 合計の形(sum の位置、ループ内で足す)を確実に書ける
- 発展:平均の計算(キャスト)に挑戦できる



ディスカッション
コメント一覧
まだ、コメントがありません