[英]How to change a string from a user input to a integer in c#?
For my mini-project, I can't convert the string .ReadLine
input to the integer needed for guessing int number = 5;
对于我的小项目,我无法将字符串
.ReadLine
输入转换为猜测int number = 5;
所需的整数int number = 5;
int user = Convert.ToInt32(Console.ReadLine);
if (user == number){
Console.WriteLine("You a Genius boe!!!");
}
else if ( user == (number - 1) ){
Console.WriteLine("A bit Higher!");
}
else if ( user == (number + 1) ){
Console.WriteLine("A bit Lower!");
}
else{
Console.WriteLine("U Serious Bruh???");
}
I think you were nearly there with your code.我认为你的代码几乎就在那里。 All you needed was a loop to encapsulate the code asking the user to keep guessing.
您所需要的只是一个循环来封装要求用户继续猜测的代码。
int guess = 5;
while (true)
{
int user;
Console.WriteLine("Guess a number boe???");
string input = Console.ReadLine();
if (Int32.TryParse(input, out user))
{
if (user == guess)
{
Console.WriteLine("You a Genius boe!!!");
Console.ReadLine();
return;
}
else if (user == (guess - 1))
{
Console.WriteLine("A bit Higher!");
}
else if (user == (guess + 1))
{
Console.WriteLine("A bit Lower!");
}
else
{
Console.WriteLine("U Serious Bruh???");
}
}
else
{
Console.WriteLine("You didnt entered a correct value try again!!!");
}
}
As pointed out Console.ReadLine() is a method, you were missing the brackets.正如所指出的 Console.ReadLine() 是一种方法,您缺少括号。
you can do something like this你可以做这样的事情
bool Valid = false;
int Number;
while(Valid == false){
string Input = Console.Readline();
if(int.TryParse(Input, out Number){
Valid = true;
if (Number == number){
Console.WriteLine("You a Genius boe!!!");
}
else if ( Number == (number - 1) ){
Console.WriteLine("A bit Higher!");
}
else if ( Number == (number + 1) ){
Console.WriteLine("A bit Lower!");
}
else{
Console.WriteLine("U Serious Bruh???");
}
}
else{
Console.Writeline("Not an integer, please try again.")
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.