PowerShell でハングマン ゲームを開発しようとしています。私のスクリプトではすべてうまくいきますが、ゲームには論理的なエラーがあります。ユーザーが同じ単語を2回入力したときにチェックを入れたい。簡単にエラーが発生します。例:「サッカー」という言葉。ユーザーが文字「F」を 1 回以上入力すると、エラー メッセージが表示されます。これが私のコードです:
$random = Get-Random -Minimum 0 -Maximum 5;
$names="America","Iran","Poland","Cat","PowerShell ";
$arrname= $names[$random];
$arrname.ToCharArray();
$ntp="0","1";
$arrlen = $arrname.Length;
clear;
Write-Host "---------Guess the word--------------";
Write-Host "Length is : " $arrname.Length;
$life=3;
do{
Write-Host "Lifes Remain " $life;
$rnd= Read-Host "Guess the word ";
if($flag2 -le 1)
{
$flag=0;
}
else
{
$life--;
}
for($i=0;$i -lt $arrname.Length; $i++)
{
if($rnd -eq $arrname[$i] )
{
$flag =1;
$arrlen --;
}
}
if($flag -eq 0 )
{
$life--;
}
if($arrlen -eq 0)
{
Write-Host $arrname;
Write-Host " ************ You WIN ********************";
break;
}
if($life -eq 0)
{
Write-Host " ------------- You LOST ------------"
break;
}
$p++;
}
while(1);