c#斐波那契计算器问题
c# Fibonacci calculator issue
我正在尝试获得一个有效的斐波那契计算器,但我遇到了一些问题。据我所知,我的代码运行良好,尽管当我输入一个词时它崩溃了。我不确定我怎样才能让它为我工作,所以它只接受数字。提前致谢 :D
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void Button_Click1(object sender, RoutedEventArgs e)
{
//Fibonacci
string output = String.Empty;
double result;
double z = 0;
double x = 1;
double y = double.Parse(FibonacciAsText.Text);
if (double.TryParse(FibonacciAsText.Text, out result))
{
if (y == 1)
output = 1.ToString();
}
else if (y == 0)
{
output = 0.ToString();
}
for (double w = 0; w < y - 1; w++)
{
result = z;
z = x;
x = result + x;
output = x.ToString();
}
Fibonacci.Text = output;
}
这将退出方法并且不允许代码完成:
double y;
if (!double.TryParse(FibonacciAsText.Text, out y))
{
Fibonacci.Text = "N/A";
return;
}
基本上,它会检查您的号码是否有效。如果是这样,它会将其设置为 y(类似于 Parse)。如果它没有成功,它将在 "return".
处退出该方法
您需要验证输入 first.If 您正在使用文本框..应该有一个设置只接受数字。
或
在后端..您可以使用以下代码检查输入是否为数字
int n;
bool isNumeric = int.TryParse(FibonacciAsText.Text, out n);
if(isNumeric)
{
Your calculator code
}
我正在尝试获得一个有效的斐波那契计算器,但我遇到了一些问题。据我所知,我的代码运行良好,尽管当我输入一个词时它崩溃了。我不确定我怎样才能让它为我工作,所以它只接受数字。提前致谢 :D
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void Button_Click1(object sender, RoutedEventArgs e)
{
//Fibonacci
string output = String.Empty;
double result;
double z = 0;
double x = 1;
double y = double.Parse(FibonacciAsText.Text);
if (double.TryParse(FibonacciAsText.Text, out result))
{
if (y == 1)
output = 1.ToString();
}
else if (y == 0)
{
output = 0.ToString();
}
for (double w = 0; w < y - 1; w++)
{
result = z;
z = x;
x = result + x;
output = x.ToString();
}
Fibonacci.Text = output;
}
这将退出方法并且不允许代码完成:
double y;
if (!double.TryParse(FibonacciAsText.Text, out y))
{
Fibonacci.Text = "N/A";
return;
}
基本上,它会检查您的号码是否有效。如果是这样,它会将其设置为 y(类似于 Parse)。如果它没有成功,它将在 "return".
处退出该方法您需要验证输入 first.If 您正在使用文本框..应该有一个设置只接受数字。
或
在后端..您可以使用以下代码检查输入是否为数字
int n;
bool isNumeric = int.TryParse(FibonacciAsText.Text, out n);
if(isNumeric)
{
Your calculator code
}