我做了一个骰子“游戏”,随机选择一个数字然后“滚动”以查看获得相同数字需要多少卷。我遇到的问题是如何让用户输入pyöräytys
。
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();
}
}
}
我尝试将pyöräytys = noppa.Next(1,7);
更改为可以读取已按下但无法找到任何内容的键的内容。
编辑: 感谢WhileTrueSleep解决方案,我在上面的代码中更新了它。另一件事,现在我可以输入一个超过6的数字,它会进行无限循环。我怎么做到这个数字必须在1-6之间。
答案 0 :(得分:5)
int.TryParse(Console.ReadLine(), out pyöräytys);
修改:将此行替换为pyöräytys = noppa.Next(1, 7);
用户现在可以在控制台中输入值。如果输入无效,则pyöräytys
将保留其默认值(0)。
答案 1 :(得分:-2)
Console.ReadLine()
会返回一个字符串,您可以try to parse into an int找到该字符串,然后可以在for loop中使用该字符串。