2013-05-02 3 views
1

Ive는 무작위로 숫자를 선택한 다음 "롤"하여 같은 번호를 얻는 데 필요한 롤 수를 확인하는 주사위 "게임"을 만들었습니다. 문제는 어떻게 사용자가 입력 한 pyöräytys을 만들 수 있습니다. C# 주사위 게임, 이것을 사용자 입력으로 바꾸기

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 

namespace Noppapeli 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      int pyöräytys; 
      int satunnainen; 
      int luku = 0; 

      Random noppa = new Random((int)DateTime.Now.Ticks); 

      int.TryParse(Console.ReadLine(),out pyöräytys); 
      Console.WriteLine("Arvon numeron ja sitten koitan saada sen uudelleen"); 
      Console.WriteLine("Haettava numero on: " + pyöräytys); 
      Console.ReadLine(); 
      do 
      { 
       luku++; 
       satunnainen = noppa.Next(1, 7); 
       Console.WriteLine("numero on: " + satunnainen); 
       if (satunnainen == pyöräytys) 
       { 
        satunnainen = pyöräytys; 
       } 
      } while (pyöräytys != satunnainen); 

      Console.WriteLine("^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"); 
      Console.WriteLine("Haettu numero: " + pyöräytys); 
      Console.WriteLine("Pyöräytetty numero: " + satunnainen); 
      Console.Write("Kesti " + luku + " Nopan pyöräytystä saada tulos!"); 
      Console.ReadLine(); 
     } 
    } 
} 

내가 누를하지만 아무것도 찾을 수 couldnt는 한 키를 읽을 무언가에 pyöräytys = noppa.Next(1,7);을 변경했습니다.

편집 : 솔루션 주셔서 감사합니다. WhileTrueSleep, 위 코드에서 업데이트했습니다. 또 다른 것은 6을 넘는 숫자를 입력 할 수있게되었으므로 무한 루프가됩니다. 그 번호가 1-6 사이 여야합니다.

답변

5
int.TryParse(Console.ReadLine(), out pyöräytys); 

편집 : 콘솔에 값을 입력 할 수 있습니다 지금 pyöräytys = noppa.Next(1, 7); 사용자에 대해이 라인을 교체합니다. 입력이 유효하지 않으면 pyöräytys은 기본값 (0)으로 유지됩니다.

+1

왜 이것이 downvoted지고 있는지 모르겠다. – Romoku

+2

'knäckebröd = Console.ReadLine()'이라고했기 때문에, 이전에는'int'로 정의되었으므로 수행 할 수 없습니다. 이제는 해결되었지만 아직 설명이 포함되어 있지 않아서 좋은 대답은 아닙니다. – CodeCaster

+0

나는 이것을 사용하려고 노력하고 있지만 100 % 확신하지는 않는다. 제대로 작동하지 않는다. 나는 그것을했다. 그러나 나는 그것이 오류를 준다. 'System.Console'은 'ReadLine'에 대한 정의를 포함하고 있지 않다. – Fruktoosi