#
# data = [0] * 1000000
# def f(a):
# for i in range(3,n+1):
#
# data[i] = data[data[i-1]] + data[i-data[i-1]]
# return data[i]
# data[1] = data[2] = 1
# n=int(input())
# if n==1 or n==2:
# print(1)
# print(f(n))
# class student:
# def __init__(self): # init
# print('Here is Initialized Area(Function)')
# x = 10
# self.y = 200
# print(x)
#
# def show(self):
# print('Here is Show Function')
# print(self.y)
#
# def __del__(self):
# print('Here is Destroyed Area(Function)')
#
# x = student()
# x.show()
#
# classroom = []
# classroom.append(x)
#
# classroom[0].show()
import random
max=-1
min=0
class student:
def __init__(self, name, height, kor, math, eng):
self.name = name
self.height = height
self.kor = kor
self.math = math
self.eng = eng
self.rank = 0
self.avg = (self.kor + self.eng + self.math) / 3
# def f(self):
# for i in range(30):
# s=0
# s += self.avg
# if s >=max:
# max=s
# elif s <= min:
# s = min
def info(self):
print('My Name is', self.name,'My height is', self.height, 'average is ', self.avg)
def getAvg(self):
return self.avg
classroom = []
for i in range(30):
x = student(str(i), random.randint(150, 180), random.randint(0, 101), random.randint(0, 101), random.randint(0, 101))
classroom.append(x)
for i in range(30):
for j in range(30):
if classroom[i].getAvg() > classroom[j].getAvg():
classroom[i].rank -= 1
elif classroom[i].getAvg() < classroom[j].getAvg():
classroom[i].rank += 1
한 반의 랭킹을 작성하시오.
1. 학생은 이름, 키, 국어, 수학, 영어 점수를 랜덤(random.Randint(a, b))으로 받슙니당
2. 각 학생은 받은 세 점수를 이용해 각각 평균을 구합니다.
3. 이렇게 구해진 평균을 이용해 랭크를 정합니다(개인 순위):
4. 총 인원은 30명이며, 각각 1등과 30등의 평균을 출력하는 프로그램을 작성하세요.
(단, 반복되는 기능을 최소화 하면서 진행해야 합니다)