我正在尝试设计一个猜测数字的代码.我定义了在列表框中显示的数字范围.我开始写随机(1,10),但如果我输入11,它仍然写在我的列表框中.我怎样才能写出从我的范围中选择的数字,即1-10?
我在这里迷路了.有任何想法吗?
谢谢,这是我的代码的一部分:
private void btnOk_Click(object sender, EventArgs e)
{
string yourNumber;
yourNumber = textBox1.Text.Trim();
int returnNumber = RandomNumber(1, 10);
int.TryParse(textBox1.Text, out returnNumber);
listBox1.Items.Add(returnNumber);
}
Run Code Online (Sandbox Code Playgroud)
=========另外一个问题,如果我想显示一个数字范围,例如1-10,我怎么能这样做:例如,如果用户输入11,程序将不接受.
我做了这样的事情:
int returnNumber = RandomNumber(1, 10);
string yourNumber;
yourNumber = textBox1.Text.Trim();
if(Int32.TryParse(textBox1.Text>=1)) && (Int32.TryParse(textBox1.Text<=10));
{
listBox1.Items.Add(yourNumber);
textBox1.Text = string.Empty;
}
Run Code Online (Sandbox Code Playgroud)
程序中有问题
==============
你好,再次感谢纳撒尼尔的回复.但我试过这个:
int returnNumber=RandomNumber(1,10);
int counter=1;
int yourNumber;
Int32.TryParse(textBox1.Text.Trim(), out yourNumber);
if (yourNumber >=1 && yourNumber <= 10)
{
listBox1.Items.Add(yourNumber);
}
else
{
MessageBox.Show("Please enter a number between 1-10");
}
Run Code Online (Sandbox Code Playgroud)
我想做的是设计一个猜测数字的程序.所以这是第一部分.
====
嗨,再次,这是我的最终代码:如果你能提供反馈,我会很高兴我能做得更好.谢谢.我认为我接下来要做的就是限制用户输入输入的次数.这意味着,他们只能猜出正确的数字3次或5次.不知道在哪里实现它
namespace Guessing_Game
{
public partial class Form1 : Form
{
private static int randomNumber;
private const int rangeNumberMin = 1;
private const int rangeNumberMax = 10;
public Form1()
{
InitializeComponent();
randomNumber = GenerateNumber(rangeNumberMin, rangeNumberMax);
}
private int GenerateNumber(int min,int max)
{
Random random = new Random();
return random.Next(min, max);
}
private void btnOk_Click(object sender, EventArgs e)
{
int yourNumber = 0;
Int32.TryParse(textBox1.Text.Trim(), out yourNumber);
if (yourNumber>= rangeNumberMin && yourNumber<=rangeNumberMax)
{
listBox1.Items.Add(yourNumber);
if (yourNumber > randomNumber)
{
listBox2.Items.Add("No the Magic Number is lower than your number");
}
if (yourNumber < randomNumber)
{
listBox2.Items.Add("No, the Magic Number is higher than your number");
}
if(yourNumber==randomNumber)
{
listBox2.Items.Add("You guessed the Magic Number!");
btnRestart.Enabled = true;
}
}
else
{
MessageBox.Show("Please enter a number between " + rangeNumberMin + " to " + rangeNumberMax);
}
}
private void btnRestart_Click(object sender, EventArgs e)
{
listBox2.Items.Clear();
listBox1.Items.Clear();
textBox1.Text = null;
randomNumber = GenerateNumber(rangeNumberMin, rangeNumberMax);
btnRestart.Enabled = false;
}
}
Run Code Online (Sandbox Code Playgroud)
Nat*_*ath 10
这条线:
int returnNunmber = RandomNumber(1, 10);
Run Code Online (Sandbox Code Playgroud)
什么都不做,因为在下一行中,returnNumber用作输出变量,将是textBox1中的任何数字.除掉
int.TryParse(textBox1.Text, out returnNumber);
Run Code Online (Sandbox Code Playgroud)
行,它会将1到10的随机数添加到列表框中.
编辑::::要回答你的其他问题,请尝试:
private void btnOk_Click(object sender, EventArgs e)
{
string yourNumber;
yourNumber = textBox1.Text.Trim();
int returnNumber;
int.TryParse(textBox1.Text, out returnNumber);
if( returnNumber < 1 || returnNumber > 10) {
returnNumber = RandomNumber(1, 10);
}
listBox1.Items.Add(returnNumber);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2982 次 |
| 最近记录: |