鱼C论坛

 找回密码
 立即注册
查看: 3034|回复: 1

[已解决]连续最多次正面 和 连续最多次反面总是不对,求大神解答

[复制链接]
发表于 2023-1-16 23:30:47 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 dukai 于 2023-1-17 10:35 编辑

import random
answer = input("请输入数字")
answer = int(answer)
heads = 0
tails = 0
con_heads = 0
con_tails = 0
max_heads = 0
max_tails = 0
last = 0

if answer <= 100:
    while answer > 0:
        face = random.randint(1,2)

        if face == 1:
            print("正")
            heads = heads + 1
            
            if last == 1:
                con_heads = con_heads + 1
                max_heads = max_heads + 1

                if con_heads > max_heads:
                    max_heads = con_heads

            else:
                con_heads = 1

            last =  1
            
        else:
            print("反")
            tails = tails + 1
               
            if last == 2:
                con_tails = con_tails + 1
                max_tails = max_tails + 1

                if con_tails > max_tails:
                        max_tails = con_tails

            else:
                    con_tails = 1

            last = 2

            
            
            
        answer = answer - 1

               




#请忽略下面一段,还没来得及写
else:
    while answer > 0:
        face = random.randint(1,2)

        if face == 1:
            heads = heads + 1
        else:
            tails = tails + 1
        answer = answer - 1
print("一共", heads, "次正面",tails, "次反面")
print("连续最多次正面为", max_heads, "次")
print("连续最多次反面为", max_tails, "次")
最佳答案
2023-1-17 10:57:31
本帖最后由 jackz007 于 2023-1-17 11:01 编辑
import random

heads , tails , con_heads , con_tails , max_heads , max_tails , last = 0 , 0 , 0 , 0 , 0 , 0 , 0

answer = int(input("请输入数字:"))
k = 1 if answer <= 100 else 0
x = answer
while x > 0:
    face = random . randint(1 , 2)
    if k:
        print("正") if face == 1 else print("反")
    if face == 1:
        if face != last:
            if con_tails > max_tails : max_tails = con_tails
            con_tails = 0
        heads , con_heads = heads + 1 , con_heads + 1
    else:
        if face != last :
            if con_heads > max_heads : max_heads = con_heads
            con_heads = 0
        tails , con_tails = tails + 1 , con_tails + 1 
    last = face
    x -= 1
print("一共抛币", answer , "次")
print("其中", heads, "次正面",tails, "次反面")
print("连续最多次正面为", max_heads, "次")
print("连续最多次反面为", max_tails, "次")
        运行实况:
D:\[00.Exercise]\[Python]>python x.py
请输入数字:50
正
反
正
正
反
正
正
反
正
反
正
反
反
正
反
反
正
正
反
反
正
正
反
正
反
正
反
反
正
反
正
反
正
正
正
正
反
反
正
反
反
反
反
反
反
反
反
正
反
正
一共抛币 50 次
其中 23 次正面 27 次反面
连续最多次正面为 4 次
连续最多次反面为 8 次

D:\[00.Exercise]\[Python]>python x.py
请输入数字:5000
一共抛币 5000 次
其中 2474 次正面 2526 次反面
连续最多次正面为 11 次
连续最多次反面为 11 次

D:\[00.Exercise]\[Python]>
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-1-17 10:57:31 | 显示全部楼层    本楼为最佳答案   
本帖最后由 jackz007 于 2023-1-17 11:01 编辑
import random

heads , tails , con_heads , con_tails , max_heads , max_tails , last = 0 , 0 , 0 , 0 , 0 , 0 , 0

answer = int(input("请输入数字:"))
k = 1 if answer <= 100 else 0
x = answer
while x > 0:
    face = random . randint(1 , 2)
    if k:
        print("正") if face == 1 else print("反")
    if face == 1:
        if face != last:
            if con_tails > max_tails : max_tails = con_tails
            con_tails = 0
        heads , con_heads = heads + 1 , con_heads + 1
    else:
        if face != last :
            if con_heads > max_heads : max_heads = con_heads
            con_heads = 0
        tails , con_tails = tails + 1 , con_tails + 1 
    last = face
    x -= 1
print("一共抛币", answer , "次")
print("其中", heads, "次正面",tails, "次反面")
print("连续最多次正面为", max_heads, "次")
print("连续最多次反面为", max_tails, "次")
        运行实况:
D:\[00.Exercise]\[Python]>python x.py
请输入数字:50
正
反
正
正
反
正
正
反
正
反
正
反
反
正
反
反
正
正
反
反
正
正
反
正
反
正
反
反
正
反
正
反
正
正
正
正
反
反
正
反
反
反
反
反
反
反
反
正
反
正
一共抛币 50 次
其中 23 次正面 27 次反面
连续最多次正面为 4 次
连续最多次反面为 8 次

D:\[00.Exercise]\[Python]>python x.py
请输入数字:5000
一共抛币 5000 次
其中 2474 次正面 2526 次反面
连续最多次正面为 11 次
连续最多次反面为 11 次

D:\[00.Exercise]\[Python]>
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-24 21:26

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表