プログラミング入門I 宿題 2023.12.11

Back


1 から 5 までの整数を乱数により2個発生させ,それを xy 平面の点 P (x,y) の座標とします.以下のように点 P を表示するプログラムを作成しましょう.

Student number: s236099

Point P(2,4)
 y
6|            
5|            
4|   *        
3|            
2|            
1|            
0+------------ x
 0 1 2 3 4 5 6

------------------------

以下のようなステップに分けて考える必要があります.
  1. 乱数を発生させて,点 P の座標を表示
  2. y 表示
  3. 外側の反復処理により,縦軸の数値,| の表示,内側の反復処理による * の表示(あれば)
  4. x 軸の表示(反復処理の活用)
  5. 横軸の数値の表示(反復処理の活用)
解答用紙を使用する際には,学生番号と名前の記入も忘れないでください.さらに,解答用紙自体がPythonのプログラムとなっていますので,実行してエラーの無いことを確認してから提出してください.

指定の解答用紙を使用していない,実行時にエラーが出る,学生番号と名前が無い,というような答案は提出されても採点しません.注意してください.


解答例

# #############################
#
# プログラミング入門I 宿題 2023.12.11
# 学生番号:  s236099
# 氏名:     松江 花子
#
# #############################

import random

print('Student number: s236099')
print('')

px = random.randint(1, 5)
py = random.randint(1, 5)
print(f'Point P({px},{py})\n y')

for y in range(6, 0, -1):
    print(f'{y}|', end = '')

    for x in range(1, 7):
        if px == x and py == y:
            print(' *', end = '')
        else:
            print('  ', end = '')
    else:
        print()
else:
    print('0+', end = '')

    for x in range(1, 7):
        print('--', end = '')
    else:
        print(' x\n', end = '')

        for x in range(0, 7):
            print(f'{x:2}', end = '')
        else:
            print()


print('\n------------------------\n')


Back