十进制数转换为二进制,八进制,十六进制数的算法
来源:互联网 发布:共享需要输入网络密码 编辑:程序博客网 时间:2024/04/26 20:27
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace ExDtoB
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
//十进制转二制
public string DtoB(int d)
{
string b = "";
//判断该数如果小于2,则直接输出
if (d < 2)
{
b = d.ToString();
}
else
{
int c;
int s = 0;
int n = d;
while (n >= 2)
{
s++;
n = n / 2;
}
int[] m = new int[s];
int i = 0;
do
{
c = d / 2;
m[i++] = d % 2;
d = c;
} while (c >= 2);
b = d.ToString();
for (int j = m.Length - 1; j >=0; j--)
{
b += m[j].ToString ();
}
}
return b;
}
//十进制转八进制
public string DtoO(int d)
{
string o = "";
if (d < 8)
{
o = d.ToString();
}
else
{
int c;
int s=0;
int n=d;
int temp = d;
while (n >= 8)
{
s++;
n = n / 8;
}
int[] m = new int[s];
int i = 0;
do
{
c = d / 8;
m[i++] = d % 8;
d = c;
} while (c >= 8);
o = d.ToString();
for (int j = m.Length - 1; j >= 0; j--)
{
o += m[j];
}
}
return o;
}
//十进制转十六进制
public string DtoX(int d)
{
string x = "";
if (d < 16)
{
x = chang(d);
}
else
{
int c;
int s = 0;
int n = d;
int temp = d;
while (n >= 16)
{
s++;
n = n / 16;
}
string [] m = new string[s];
int i = 0;
do
{
c = d / 16;
m[i++] = chang(d % 16);//判断是否大于10,如果大于10,则转换为A~F的格式
d = c;
} while (c >= 16);
x = chang(d);
for (int j = m.Length - 1; j >= 0; j--)
{
x += m[j];
}
}
return x;
}
//判断是否为10~15之间的数,如果是则进行转换
public string chang(int d)
{
string x = "";
switch (d)
{
case 10:
x = "A";
break;
case 11:
x = "B";
break;
case 12:
x = "C";
break;
case 13:
x = "D";
break;
case 14:
x = "E";
break;
case 15:
x = "F";
break;
default:
x = d.ToString();
break;
}
return x;
}
private void button1_Click(object sender, EventArgs e)
{
textBox2.Text = DtoB(Convert.ToInt32(textBox1.Text));//十转二进制
}
private void button2_Click(object sender, EventArgs e)
{
textBox2.Text = DtoO(Convert.ToInt32(textBox1.Text));//十转八进制
}
private void button3_Click(object sender, EventArgs e)
{
textBox2.Text = DtoX(Convert.ToInt32(textBox1.Text));//十转十六进制
}
}
}
- 二进制,八进制,十六进制数转换为十进制数的算法
- 十进制数转换为二进制,八进制,十六进制数的算法
- 十进制数转换为二进制,八进制,十六进制数的算法
- 十进制数转换为二进制,八进制,十六进制数的算法
- 常用算法(C#): 二进制,八进制,十六进制数转换为十进制数的算法
- 二进制数转换为八进制, 十六进制数的算法
- 十进制转换为二进制数、八进制数和十六进制
- 快速实现二进制/八进制/十六进制/十进制数之间的转换
- 十进制数与二进制, 八进制, 十六进制之间的转换
- 算法:十进制转换为十六进制,二进制,八进制
- 栈的应用--数制转换(十进制数转换为二进制、八进制、十六进制)
- 二进制数 八进制数 十进制数 十六进制数 之间的相互转换!!!!
- 十进制数转换为八进制数/十六进制数
- pycharm环境下进制转换-将十进制数转换为二进制、八进制、十六进制
- 十进制转换为八进制、十六进制、十进制数输出
- 十六进制,八进制,十进制数转为二进制数显示的函数
- 十进制转换成二进制数(可扩展到八进制和十六进制)
- 黑马程序员—操作数组的练习:十进制数转换二进制、八进制、十六进制数。
- 第一篇
- 终端快捷方式
- 招聘会
- 二进制,八进制,十六进制数转换为十进制数的算法
- QQ找茬辅助工具的制作
- 十进制数转换为二进制,八进制,十六进制数的算法
- 猴子选大王问题
- 约瑟夫环问题
- 用回溯法找出 n 个自然数中取 r 个数的全排列
- .net程序员技术资源
- WCDMA
- 八皇后问题
- 歌德巴赫猜想的算法
- 判断一个数是否完数