In [ ]:
练习 1:写函数,求n个随机整数均值的平方根,整数范围在m与k之间(n,m,k由用户输入)。
In [5]:
import random,math
def square_root(n,m,k):
total=0
i=0
while i<=n:
num=random.randint(m,k)
i+=1
total=total+num
average=total/n
square_root=math.sqrt(average)
return square_root
n=int(input('请输入大于0的整数,作为随机整数的个数,回车结束。'))
m=int(input('请输入一个整数,作为整数范围的起点,回车结束。'))
k=int(input('请输入一个整数,作为整数范围的终点,回车结束。'))
print(square_root(n,m,k))
In [ ]:
练习 2:写函数,共n个随机整数,整数范围在m与k之间,(n,m,k由用户输入)。求1:西格玛log(随机整数),2:西格玛1/log(随机整数)
In [2]:
import random,math
n=int(input('请输入随机整数的个数,回车结束。'))
m=int(input('请输入随机整数的下界,回车结束。'))
k=int(input('请输入随机整数的上界,回车结束。'))
i=0
while i<n:
i+=1
print('西格玛log(随机整数)是:',math.log(random.randint(m,k)))
print('西格玛1/log(随机整数)是:',1/(math.log(random.randint(m,k))))
In [ ]:
挑战性练习:仿照task5,将猜数游戏改成由用户随便选择一个整数,让计算机来猜测的猜数游戏,要求和task5中人猜测的方法类似,但是人机角色对换,由人来判断猜测是大、小还是相等,请写出完整的猜数游戏。
In [2]:
import random,math
def menu():
print('''=====游戏菜单=====
1. 游戏说明
2. 开始游戏
3. 退出游戏
4. 制作团队
=====游戏菜单=====''')
def win():
print(
'''
======恭喜你,你赢了=======
."". ."",
| | / /
| | / /
| | / /
| |/ ;-._
} ` _/ / ;
| /` ) / /
| / /_/\_/\
|/ / |
( ' \ '- |
\ `. /
| |
| |
======恭喜你,你赢了=======
'''
)
def lose():
print(
'''
======YOU LOSE=======
.-" "-.
/ \
| |
|, .-. .-. ,|
| )(__/ \__)( |
|/ /\ \|
(@_ (_ ^^ _)
_ ) \_______\__|IIIIII|__/__________________________
(_)@8@8{}<________|-\IIIIII/-|___________________________>
)_/ \ /
(@ `--------`
======YOU LOSE=======
'''
)
def show_instruction():
print('请玩家随便选择一个整数,由计算机来猜测,如果计算机在规定次数内猜中,则玩家输,反之,玩家赢。')
def guess_game():
n = int(input('请输入一个大于0的整数,作为神秘整数的上界,回车结束。'))
number =int(input('请在1-1000内输入一个整数,作为计算机要猜测的整数,回车结束。'))
max_times = math.ceil(math.log2(n))
guess_times = 0
while guess_times <= max_times:
guess_times += 1
print('一共可以猜', max_times, '次')
print('计算机已经猜了', guess_times, '次')
computer_guess=random.randint(1,n)
if computer_guess==number:
lose()
elif computer_guess>number:
print('你猜大了!')
else:
print('你猜小了!')
else:
win()
print('计算机没能在规定次数内猜出来,恭喜玩家,你赢了!')
def game_over():
print(
'''
======GAME OVER=======
_________
/ ======= \
/ __________\
| ___________ |
| | - | |
| | | |
| |_________| |________________
\=____________/ )
/ """"""""""" \ /
/ ::::::::::::: \ =D-'
(_________________)
======GAME OVER=======
'''
)
def show_team():
print('北京语言大学16本地化')
def main():
while True:
menu()
choice = int(input('请输入你的选择,回车结束。'))
if choice == 1:
show_instruction()
elif choice == 2:
guess_game()
elif choice == 3:
game_over()
break
else:
show_team()
main()