作业内容 10点満点のテストの点数が50人分あるとして点数別の人数の度数分布図直方图histogramを表示してください。 【例】: 5 1 1 8 4 9 8 ・・・ 5 ←0〜10の乱数を50個並べてリストにする 0点 1点 2点 10点 【ヒント】 テストの点数はリストで持つ for文を使い50人分の点数を0〜10の乱数で
問題1の回答:
runfile('C:/Users/.../作业.py', wdir='C:/Users/...')
0点: ***
1点: ****
2点: *****
3点: ********
4点: *****************
5点: ************************
6点: ********************
7点: *************
8点: *****************
9点: *******
10点: ****
問題2の回答:
# 作业内容
# 10点満点のテストの点数が50人分あるとして,点数別の人数の度数分布図(直方図,histogram)を表示してください。
# 【例】: [5, 1, 1, 8, 4, 9, 8, ・・・, 5] ←0〜10の乱数を50個並べてリストにする
# 0点: *
# 1点: ***
# 2点: ****
# ...
# 10点: ***
# 【ヒント】
# テストの点数はリストで持つ
# for文を使い,50人分の点数を0〜10の乱数で発生させ,点数のリストに追加する
# 0点から10点の計11個の度数(点数別の人数)もリストで持つ
# 乱数発生により点数が得られたときに,度数もカウントアップする
import random
# テストの点数を格納するリストを作成
scores = []
# 50人分の点数を0〜10の乱数で発生させ,リストに追加する
for _ in range(50):
score = random.randint(0, 10)
scores.append(score)
# 点数別の人数の度数分布を格納するリストを作成
frequency = [0] * 11
# 点数ごとに度数をカウントアップする
for score in scores:
frequency[score] += 1
# 度数分布図(直方図)を表示する
for i in range(11):
print(f"{i}点: {'*' * frequency[i]}")
``
原文地址: http://www.cveoy.top/t/topic/i1S8 著作权归作者所有。请勿转载和采集!