2013-04-23 3 views
-5

«жизнь» начинается с 12, а «randomNumberhit» - случайное число 1,2 или 3; «randomNumberhit» убирается из «жизни», но когда я пытаюсь признать, что «жизнь» равна 0, -1 или -2, это не работает.Как исправить недостающее 'if'

int life = 12; 
... 
Random randomhit = new Random(); 
int randomNumberhit = randomhit.Next(1, 4); 
... 
life = life - randomNumberhit; 
Console.WriteLine(life); 
if (life == 0) 
{ 
Console.Writeline("end 0"); 
} 
if (life == -1) 
{ 
Console.Writeline("end -1"); 
} 
if (life == -2) 
{ 
Console.Writeline("end -2"); 
} 

Даже когда «жизнь» является 0, -1 или -2 не следовать по пути, любая помощь будет оценена.

ответ

0

Я бы использовал if/else, если, как и комментарий выше. Но не могли бы вы просто использовать;

if (life <= 0) 
1

Какая ценность randomNumberhit? Кажется, что это число от 1 до 4. Предположим, у вас есть максимальное случайное значение, которое равно 3. 12 - 3> 0, поэтому ваши if-утверждения никогда не будут оцениваться как истинные.

Кроме того, читайте MSDN: Random.Next.

Смежные вопросы