吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1295|回复: 13
收起左侧

[求助] python记时判断

[复制链接]
songsec 发表于 2022-10-27 14:16
编写程序实现在规定时间内(比如60秒)计算机连续出两位数的加法题,你给出每一题的答案,时间一到,输出一共出了几道题,你做对了几题,做错了几题。
例如:
一共出了10道题,你做对了8题,做错了2题
提示:通过time库中的perf_counter()函数实现记时功能,程序计时函数perf_counter() 返回一个CPU级别的精确时间计数值,单位为秒

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

chenlongjs 发表于 2022-10-27 15:11
这个感觉好难哦,我听着都有些听不懂。
wkdxz 发表于 2022-10-27 15:29
本帖最后由 wkdxz 于 2022-10-27 15:41 编辑

有个小问题,如果一直不答题的话,超时不会退出

[Python] 纯文本查看 复制代码
from time import perf_counter
from random import randint
from os import system


def chuti():
    x = randint(10, 50)
    y = randint(10, 50)
    return f'{x} + {y} = ', x + y


system('title 一分钟计时做题')
dui = 0
cuo = 0
n = 1

start = perf_counter() + 60

while start > perf_counter() and n <= 10:

    system('cls')
    print(f'第{n}题  - 当前答对 {dui} ,答错 {cuo}\n----------------------------\n\n')

    ti, res = chuti()
    #print(ti, res)
    q = input(f'请回答:{ti}')

    if int(q) == res:
        print('答对了')
        dui += 1
    else:
        print('答错了')
        cuo += 1

    n += 1

system('cls')
print('答题结束!\n\n')
print(f'答题结果:当前答对 {dui} ,答错 {cuo}')
zzuruichao 发表于 2022-10-27 16:11
emptynullnill 发表于 2022-10-27 16:11
wkdxz 发表于 2022-10-27 15:29
有个小问题,如果一直不答题的话,超时不会退出

[mw_shl_code=python,true]from time import perf_count ...

应该是超时答题结束,直接判负才对
zohoChou 发表于 2022-10-27 16:22
看到题第一反应是多线程……然后第二反应是为啥不加括号显式注明优先级……
miller_xue 发表于 2022-10-27 16:33
wkdxz 发表于 2022-10-27 15:29
有个小问题,如果一直不答题的话,超时不会退出

[mw_shl_code=python,true]from time import perf_count ...

那得,开个线程来跑,这个我没用py弄过
Oo88oO 发表于 2022-10-27 16:37
厉害&#128077;学习
hrpzcf 发表于 2022-10-27 18:16
主线程计时,子线程答题,子线程设置为守护线程,时间一到直接打印相关汇总并结束主线程。
lusily1 发表于 2022-10-27 20:48
学习一下
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 07:53

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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