Mã của tôi cho bạn biết số đoán của bạn là cao hơn hoặc thấp hơn so với một số được tạo ngẫu nhiên, nhưng nó dường như chỉ so sánh các chữ số đầu tiên của số khi một trong số họ là dưới 10.Tại sao các số nguyên trong PowerShell so sánh bằng các chữ số?
[int]$GeneratedNum = Get-Random -min 1 -max 101
Write-Debug $GeneratedNum
$isQuitting = $false
Do{
[int]$Input = Read-Host "Take a guess!"
If($Input -lt $GeneratedNum){Write-Output "Too Low"}
If($Input -gt $GeneratedNum){Write-Output "Too High"}
If($Input -eq $GeneratedNum){Write-Output "Good Job!"; $isQuitting = $true}
} Until($isQuitting -eq $true)
Ví dụ, khi số $GeneratedNum = 56
và $Input = 7
, trả về "Too High"
Giá trị đọc từ 'Read-Host' là một chuỗi không phải là một số nguyên . Điểm đánh dấu biến của bạn không phải là một diễn viên. Sử dụng một diễn viên ở phía bên phải của nhiệm vụ và nó có vẻ hoạt động chính xác. –
Cảm ơn bạn! Điều đó làm việc hoàn hảo – iasanator