(a,b,c):РC=0.5*(a+b+c)Рarea=(C*(C-a)*(C-b)*(C-c))**0.5 return areaРdef main():Рa,b,c=input("enter three lengths:")Рprint TriangleArea(a,b,c)Рmain()РР6、思考题.豆堆Р堆里有16颗豆子,有两个玩家(假设一个玩家是电脑)。每个玩家都可以从堆中的16颗豆子中取出Р1颗,2颗或者3颗豆子。每个玩家在每回合中必须从堆中取出一定数目的豆子。 玩家轮流取出豆子, 取到最后一颗豆子的玩家是输家。Р思路:Р写一个人取豆子的函数Р帮电脑设计一个算法,实现取豆子的函数Р在主程序中进行输流调用,谁最后拿到?1粒豆子谁就输Рimport randomРdef pp(n):Рwhile True:Рnum=input("Pick some beans, only 1,2 or 3:")Рif num<1 or num>3:Рprint "Wrong, try again."РcontinueРreturn n-numРdef cp(n):Рif n==4:Рreturn 3Рif n==3:Рreturn 2Рif n==2:Рreturn 1Рelse:Рi=random.randint(1,3)Рreturn iРdef main():Рtotal=16Рwhile True:Рppickrest=pp(total)Рcpick=cp(ppickrest)Рtotal=ppickrest-cpickРif ppickrest==1:Рprint "people win"РbreakРprint "comp=%d, rest=%d”%(cpick,total)Рif total==1:Рprint "computer win"РbreakРmain()