プログラミング入門I 実習課題 2024.11.11

Back to text page


解答例は後日アップしますので,それまでお待ちください.

  1. 値の並べ替え
  2. 4桁の正の整数を2つ発生させ,それらを小さい順に表示するプログラムを作成しましょう.

    2 numbers with 4 digits: 5525, 6477
    

    解答例1

    解答例2 (sorted 関数使用)

  3. 3つの値の比較
  4. 1から3の整数のどれかを乱数により3回発生させ,2つ同じものが出たら One pair と,3つが全部同じ数だったら Miracle! と表示するプログラムを作成しましょう.

    Random numbers: 3 3 3
    Miracle!
    

    Random numbers: 2 1 1
    One pair
    

    Random numbers: 2 3 1
    

    解答例

  5. さいころ野球ゲーム
  6. サイコロ2つで遊ぶ野球ゲームの基礎的な部分を作ってみましょう.以下の表のようにサイコロの目に従って安打か凡打が決まるとするとき,バッター一人分の打席を以下のように表現するプログラムを作成しましょう.

    1 2 3 4 5 6
    1 Home run! Out Out Out Out Single hit!
    2 Out Three base hit! Out Out Single hit! Out
    3 Out Out Two base hit! Single hit! Out Out
    4 Out Out Single hit! Two base hit! Out Out
    5 Out Single hit! Out Out Two base hit! Out
    6 Single hit! Out Out Out Out Single hit!

    Dices: 6 1
    Result: Single hit!
    

    なるべく条件が簡単になるように規則性を見つける工夫をしてください.

    解答例

  7. トランプのカード
  8. トランプ (Playing cards) は52枚のカードと1枚の Joker で構成されています.以下のように番号とカードを組み合わせるとしたとき,乱数により 0 から 52 までの整数を一つ発生させ,何のカードかを答えるプログラムを作成しましょう.

    乱数 0123456789101112 絵 (suite)
    札 (Mark) Ace2345678910JackQueenKing spades
    乱数 13141516171819202122232425 絵 (suite)
    札 (Mark) Ace2345678910JackQueenKing diamonds
    乱数 26272829303132333435363738 絵 (suite)
    札 (Mark) Ace2345678910JackQueenKing hearts
    乱数 39404142434445464748495051 絵 (suite)
    札 (Mark) Ace2345678910JackQueenKing clubs
    乱数52Joker

    Random number: 51
    King of clubs
    
    通常の札のとき

    Random number: 52
    Joker
    
    Jokerのとき

    剰余と除算をうまく利用して,できるだけ少ない条件分岐で処理を考えましょう.決め手は13という数字です.

    解答例

  9. サッカーの試合結果
  10. サンフレッチェ広島とリバプールの夢の対戦が実現しました.ということで,以下のように前半と後半の得点を表示して,結果も最後に表示するプログラムを作成しましょう.発生させる乱数は0から3の範囲とします.

             Liverpool   Sanfrecce
    1st half         3 - 1
    2nd half         1 - 2
    ---------------------------------
    Total            4 - 3
    
    Liverpool won!
    
             Liverpool   Sanfrecce
    1st half         1 - 3
    2nd half         2 - 1
    ---------------------------------
    Total            3 - 4
    
    Sanfrecce won!
    
             Liverpool   Sanfrecce
    1st half         1 - 2
    2nd half         1 - 0
    ---------------------------------
    Total            2 - 2
    
    Draw
    
    リバプール勝利 サンフレッチェ勝利 引き分け

    合計得点を保存するための変数が必要です.また,ちょっと先取りになりますが,教科書の p.92 で紹介されている類纂代入演算子の += を使うと簡単になります.

    解答例


Back to text page