You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何给PowerShell猜数字游戏添加3次错误猜测后退出的功能?

实现PowerShell猜数字游戏的次数限制功能

嘿,这个需求很容易实现!核心就是通过一个计数器追踪用户的猜测次数,当次数达到你设定的上限时,直接终止程序就行。我给你写一个完整的示例脚本,再拆解一下关键逻辑:

完整示例脚本

# 生成1到10之间的随机数
$targetNumber = Get-Random -Minimum 1 -Maximum 11
# 设置最大允许猜测次数
$maxAttempts = 3
# 初始化猜测次数计数器
$attempts = 0

Write-Host "欢迎来到猜数字游戏!我已经生成了一个1-10之间的数字,你有$maxAttempts次机会。"

while ($true) {
    # 接收用户输入
    $userGuess = Read-Host "请输入你的猜测"
    
    # 验证输入是否为有效数字
    if (-not [int]::TryParse($userGuess, [ref]$null)) {
        Write-Host "请输入有效的数字!"
        continue
    }
    $userGuess = [int]$userGuess

    # 猜测次数加1
    $attempts++

    # 判断猜测结果
    if ($userGuess -eq $targetNumber) {
        Write-Host "恭喜你!猜对了!"
        exit
    } elseif ($userGuess -lt $targetNumber) {
        Write-Host "猜小了!"
    } else {
        Write-Host "猜大了!"
    }

    # 检查是否达到最大次数
    if ($attempts -ge $maxAttempts) {
        Write-Host "很遗憾,你已经用完了所有$maxAttempts次机会!正确数字是$targetNumber。游戏结束。"
        exit
    }

    # 提示剩余次数
    $remainingAttempts = $maxAttempts - $attempts
    Write-Host "你还剩$remainingAttempts次机会。"
}

关键逻辑解释

  • 次数追踪:用$attempts变量记录用户已经猜了多少次,每次输入有效数字后就执行$attempts++来递增计数。
  • 次数判断:在每次猜错后,检查$attempts是否大于等于设定的$maxAttempts,如果是就提示正确答案并通过exit命令退出程序。
  • 输入验证:加入[int]::TryParse确保用户输入的是有效数字,避免非数字输入导致脚本报错,提升整体体验。

这样修改后,用户一旦猜错3次,程序就会自动终止,完全符合你的需求。

内容的提问来源于stack exchange,提问作者Masum Billah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 10:34:58