我只是在编写一个程序来将十进制数改为另一个基数(2 <= radix&lt; = 16)。
运行程序并打印正确的答案后,我遇到一个错误,上面写着:“程序已停止工作”。你能不能看看我的代码,找到它悬挂的地方??? !!!我真的很困惑。
这是我的代码:
public App()
{
InitializeComponent();
MainPage = new CustomNavigationPage(new MainPage());
}
...
// In MainPage
private async void Button_Clicked(object sender, EventArgs e)
{
await Navigation.PushAsync(new TestPage());
}
我认为这个问题是因为“temp = decimal / pow”,但我该怎么办呢?
答案 0 :(得分:2)
在pow
循环结束时计算temp = decimal / pow;
时,检查while
是否为0
pow /= radix;
if (pow > 0)
{
temp = decimal / pow;
}