uj5u.com熱心網友回復:
送你了,以前的作業。分數給我吧
class IntResponder:
"""
整數處理機
"""
def __init__(self, num):
self.num = num
def get_type(self):
""" 取得當前待處理的數字型別 """
return type(self.num)
def is_prime(self):
""" 是質數回傳 True,不是質數回傳False """
return not (True in [self.num % i == 0 for i in range(2, self.num)])
def add_up(self):
""" 累加到self.num """
return sum([x for x in range(1, self.num+1)])
def multiply_to(self):
""" 累乘到self.num """
mul = 1
for i in range(2, self.num):
mul *= i
return mul
def is_odd(self):
return ('偶數' if self.num & 1 == 0 else "奇數")
def is_num(receive):
""" 不是整數回傳False """
return type(receive) in [int]
def help_():
name_dict = {
'1': '數字型別',
'2': '是否質數',
'3': '從1累加該數字的和',
'4': '從1累乘到該數字的和',
'5': '奇數還是偶數',
'6': '幫助'
}
return ('\n'.join(list(item[0]+' '+item[1] for item in name_dict.items())))
def controller():
""" 流程控制器 """
recv = eval(input('滴滴,整數答復機已啟動>>>'))
if not is_num(recv):
return '不是整數搗什么亂'
res = IntResponder(recv)
recv2 = input('檢測到數字{} 請輸入操作\n{}\n>>>'.format(recv, help_()))
if recv2 not in [str(i) for i in range(1, 7)]:
return '輸入錯誤'
ctl_dict = {
'1': res.get_type,
'2': res.is_prime,
'3': res.add_up,
'4': res.multiply_to,
'5': res.is_odd,
'6': help_
}
print(ctl_dict[recv2]())
if __name__ == '__main__':
controller()
uj5u.com熱心網友回復:
參考 1 樓 庸了個白的回復: 送你了,以前的作業。分數給我吧
class IntResponder:
"""
整數處理機
"""
def __init__(self, num):
self.num = num
def get_type(self):
""" 取得當前待處理的數字型別 """
return type(self.num)
def is_prime(self):
""" 是質數回傳 True,不是質數回傳False """
return not (True in [self.num % i == 0 for i in range(2, self.num)])
def add_up(self):
""" 累加到self.num """
return sum([x for x in range(1, self.num+1)])
def multiply_to(self):
""" 累乘到self.num """
mul = 1
for i in range(2, self.num):
mul *= i
return mul
def is_odd(self):
return ('偶數' if self.num & 1 == 0 else "奇數")
def is_num(receive):
""" 不是整數回傳False """
return type(receive) in [int]
def help_():
name_dict = {
'1': '數字型別',
'2': '是否質數',
'3': '從1累加該數字的和',
'4': '從1累乘到該數字的和',
'5': '奇數還是偶數',
'6': '幫助'
}
return ('\n'.join(list(item[0]+' '+item[1] for item in name_dict.items())))
def controller():
""" 流程控制器 """
recv = eval(input('滴滴,整數答復機已啟動>>>'))
if not is_num(recv):
return '不是整數搗什么亂'
res = IntResponder(recv)
recv2 = input('檢測到數字{} 請輸入操作\n{}\n>>>'.format(recv, help_()))
if recv2 not in [str(i) for i in range(1, 7)]:
return '輸入錯誤'
ctl_dict = {
'1': res.get_type,
'2': res.is_prime,
'3': res.add_up,
'4': res.multiply_to,
'5': res.is_odd,
'6': help_
}
print(ctl_dict[recv2]())
if __name__ == '__main__':
controller()
謝謝~請問怎么哥哥分數啊?????
uj5u.com熱心網友回復:
參考 1 樓 庸了個白的回復: 送你了,以前的作業。分數給我吧
class IntResponder:
"""
整數處理機
"""
def __init__(self, num):
self.num = num
def get_type(self):
""" 取得當前待處理的數字型別 """
return type(self.num)
def is_prime(self):
""" 是質數回傳 True,不是質數回傳False """
return not (True in [self.num % i == 0 for i in range(2, self.num)])
def add_up(self):
""" 累加到self.num """
return sum([x for x in range(1, self.num+1)])
def multiply_to(self):
""" 累乘到self.num """
mul = 1
for i in range(2, self.num):
mul *= i
return mul
def is_odd(self):
return ('偶數' if self.num & 1 == 0 else "奇數")
def is_num(receive):
""" 不是整數回傳False """
return type(receive) in [int]
def help_():
name_dict = {
'1': '數字型別',
'2': '是否質數',
'3': '從1累加該數字的和',
'4': '從1累乘到該數字的和',
'5': '奇數還是偶數',
'6': '幫助'
}
return ('\n'.join(list(item[0]+' '+item[1] for item in name_dict.items())))
def controller():
""" 流程控制器 """
recv = eval(input('滴滴,整數答復機已啟動>>>'))
if not is_num(recv):
return '不是整數搗什么亂'
res = IntResponder(recv)
recv2 = input('檢測到數字{} 請輸入操作\n{}\n>>>'.format(recv, help_()))
if recv2 not in [str(i) for i in range(1, 7)]:
return '輸入錯誤'
ctl_dict = {
'1': res.get_type,
'2': res.is_prime,
'3': res.add_up,
'4': res.multiply_to,
'5': res.is_odd,
'6': help_
}
print(ctl_dict[recv2]())
if __name__ == '__main__':
controller()
打錯了,是怎么給分數?
uj5u.com熱心網友回復:
結貼就可以了
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/177192.html
標籤:腳本語言(Perl/Python)
上一篇:如何用python獲取onClick彈窗的檔案
下一篇:【求助】Excel如何提取上標或下標的文字內容