作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我在用 C# 的二进制公式输出公式时遇到问题
static void Main(string[] args)
{
Console.Write("Input number : ");
int num = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("The Formula : ");
int accommodate = 0;
for (int i = num; i > 0; i /= 2)
{
if (num % i == 0)
{
accommodate++;
if (accommodate == 2)
{
Console.WriteLine(i + "/2 = 0");
}
else
{
Console.WriteLine(i + "/2 = 1" );
}
}
}
Console.ReadKey();
}
输出是
输入数字:12
公式:
12/2 = 1 "(X) 这是错误的,应该是0"
6/2 = 0
3/2 = 1
1/2 = 1
最佳答案
将你的代码改成这样
accommodate % 2
而不是 accommodate % i
在 for 循环中设置 accommodate = i/= 2
而不是 accommodate++
Console.Write("Input number : ");
int num = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("The Formula : ");
int accommodate = 0;
for (int i = num; i > 0; accommodate = i /= 2)
{
if (accommodate % 2 == 0)
{
Console.WriteLine(i + "/2 = 0");
}
else
{
Console.WriteLine(i + "/2 = 1");
}
}
Console.ReadKey();
关于c# - 如何在 C# 中为 "decimal to binary"修复此代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55935842/
我是一名优秀的程序员,十分优秀!