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

Back to text page


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

  1. 加算演算子による文字列の生成
  2. アルファベット小文字3文字からなる文字列を2つ乱数により生成し,アルファベット順で文字列を並べてみましょう.

    2 strings: hph, mkt
    Sorted:    hph, mkt
    
    2 strings: yiq, xkw
    Sorted:    xkw, yiq
    
    並べ替えなし並べ替えあり

    教科書 p.153 (旧版では p.151) の下の方にある chr 関数を使用すると,数値を文字に変換できます.

    解答例

  3. インデックスの操作
  4. アルファベット大文字を10個ランダムに並べた文字列を作成し,以下のように表示するプログラムを作成しましょう.

    JKHYYALFZA
     KHYYALFZAJ
      HYYALFZAJK
       YYALFZAJKH
        YALFZAJKHY
         ALFZAJKHYY
          LFZAJKHYYA
           FZAJKHYYAL
            ZAJKHYYALF
             AJKHYYALFZ
    

    反復処理のところでやった for 文で先頭の余白を出力する方法に加えて,文字列の積を使うもっと簡単な方法もあります.

    解答例1(反復処理による空白文字出力)

    解答例2(空白文字の積の利用)

  5. 文字探索
  6. 教科書の List 6-4 を参考に,アルファベットの大文字か小文字のどちらかをランダムに20回繰り返すことを10回行い,それぞれ大文字の A と小文字の a が何回出てきたかを数えるプログラムを作成しましょう.

    CpElctETWYyPyPmgVKKl  A: 0, a: 0
    COzlMaskwdkFBsKroMei  A: 0, a: 1
    VLWfikGfLXFGedwANCQV  A: 1, a: 0
    BjJOoSaNNLGMGnkTgufG  A: 0, a: 1
    iTYBShBGTWZFZKTcuJjN  A: 0, a: 0
    QokYiRDLDuApvSzASpxy  A: 2, a: 0
    aZnqLAkECUVjKzMbxlmK  A: 1, a: 1
    YEcSGRMCiPauQjftmIgB  A: 0, a: 1
    KYsKfQLjyxxxRZVclJon  A: 0, a: 0
    iFnePgMCbYMRPnLlTDYe  A: 0, a: 0
    

    解答例

  7. スライス練習
  8. アルファベットの小文字26文字で構成される文字列を作成します.次に,a から z までの文字をどれか2つランダムに発生させ,その範囲の文字列を抜き出した文字列を作り,表示するプログラムを作成しましょう.

    Alphabets from l to s
    lmnopqrs
    

    解答例

  9. スライス練習2
  10. アルファベットの小文字をランダムに50文字並べた文字列を作成します.次に a から z までの文字のどれか1つをランダムに発生させ,その文字を大文字に変更した文字列を作成して表示するプログラムを作成しましょう.

    Letters: ptrkcfrdsjaxnobecuaufcfobpdbyrhibxeeeutcwkxrtybrad
    Key letter: y -> Y
    Letters: ptrkcfrdsjaxnobecuaufcfobpdbYrhibxeeeutcwkxrtYbrad
    

    教科書の例 6-2 を参考にします.

    解答例1

    解答例2(upper メソッド使用)

  11. 文字列の一致
  12. a から e までのアルファベット3文字がランダムに並んだ文字列を用意します.続いて,同じように3文字の文字列を発生させますが,最初の文字列と一致するものが出るまで続ける処理を行うプログラムを作成しましょう.

    Initial string: ccb
    
    bad bab eae edb aee aec bda bdb bde edd aaa acb add bbe abe dac acb cec bde aea cde bdc dba dae ebb cae cec dcd bea bec acd bca daa dce dea aed eee daa eec ceb ead deb ddc eac adc caa acb bee acb cbb aae cdd dbd eae bda ecb eae ccb

    解答例

  13. インデックスの確認
  14. アルファベット大文字をランダムに40文字並べた文字列を作ります.続けて,アルファベットの大文字を1文字ランダムに発生させ,その文字が先ほどの文字列の何番目にあるかを答えるプログラムを作成しましょう.

    SXMHSSDNMEGPJLWGDQQBBILSMRUSAVNDJGJHYFXT
    
      1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
      S  X  M  H  S  S  D  N  M  E  G  P  J  L  W  G  D  Q  Q  B  B  I  L  S  M  R  U  S  A  V  N  D  J  G  J  H  Y  F  X  T
    A letter N appears at: 8 31 
    

    ターゲットとなる文字がなかった時には最後の行の順番を示す数値が表示されないままで構いません.

    解答例


Back to text page