import math
import random
rank = 1
avg = 0
class student():
def __init__(self):
self.value = [int(random.random()*30), int(random.random()*40),
int(random.random()*20), int(random.random()*10)] # 중간, 기말, 과제, 출석
# if self.value[3] <=6: # 4번 이상 미출결시
# self.value = [0,0,0,0]
self.value.append((self.value[0]+self.value[1]+self.value[2]+self.value[3])/4)
def returnValue(self):
return self.value
class school():
def __init__(self):
self.member = []
print('Sch')
class subject(): # 과목 생성
def __init__(self):
self.sub = ['C' , 'C++', 'JAVA' , 'ANDROID', 'PYTHON', 'C#', 'JAVASCRIPT'
, 'SCP', 'NODE.JS', 'WEB']
self.choice=[]
v = []
while True:
v = []
number = random.randint(0, 999)
v.append(number // 100)
v.append(number // 10 % 10)
v.append(number % 10)
if v[0] != v[1] and v[1] != v[2] and v[2] != v[0]:
break
for i in range(3):
self.choice.append([self.sub[v[i]], self.getScore()])
def getScore(self):
self.value = [int(random.random()*30), int(random.random()*40),
int(random.random()*20), int(random.random()*10)] # 중간, 기말, 과제, 출석
# if self.value[3] <=6: # 4번 이상 미출결시
# self.value = [0,0,0,0]
self.value.append((self.value[0]+self.value[1]+self.value[2]+self.value[3])/4)
return self.value
def choose(self):
return(self.choice)
# for i in range(3):
# ran_num = random.randint(0, 9)
# self.choice = [self.sub[ran_num]] # 단순 랜덤 반복을 하게 되면 같은 과목이 나올 수 있음. 중복처리
# while self.sub in self.choice:
# ran_num = random.randint(0, 9)
# self.choice = [self.sub[ran_num]] #단순 랜덤 반복을 하게 되면 같은 과목이 나올 수 있음. 중복처리
# #self.choice.append(self.sub[ran_num])
# 학생이름, [과목 수 3개], 과목별[중간, 기말, 과제, 출석, 평균]x3, [학점, 등수]
k = int(input('학생 수: '))
xp = school()
for i in range(k):
name = input('이름 입력: ')
subj = subject()
data = student()
xp.member.append([name,subj.choose(),1])
# member에 subj.choose() 가 for 문을 통해서 과목이 3개가 나오면, data.returnValue의 값도 3번 출력이 되야하는데..
# xp.member.append(1)
# for i in range(len(xp.member)):
# for j in range(len(xp.member)):
# if xp.member[i][2][4] < xp.member[j][2][4] and i != j:
# xp.member[i][3] += 1
print(xp.member)
# for i in range(len(xp.member)):
# for j in range(len(xp.member[i])):
# print(xp)
# print()
#
# for i in range(len(xp.member)):
# print(xp.member[i][0], end=': ')
# # if (xp.member[i][1][3] > avg):
# # print(xp.member[i][0], end=': ')
# # avg = xp.member[i][1][3]
# # elif (avg > xp.member[i][1][3]):
# # print(xp.member[i][0], end='(2): ')
# # tmp=xp.member[i]
# # elif (tmp[1][3] > xp.member[i][1][3]):
# # print(xp.member[i][0], end='(3): ')
# avg = xp.member[i][1][3]
# if(avg<xp.member[i][1][3]):
# xp.member[i][1][4]+=1
#
# for j in range(len(xp.member[i][1])-1):
# print('%.2f' %(xp.member[i][1][j] ), end=' ')
# print()
top of page
실제 작동 상태를 확인하려면 라이브 사이트로 이동하세요.
220126
220126
댓글 0개
좋아요
댓글(0)
bottom of page