winfrom——计算机进制转换



namespace 进制转换

{ public partial class Form1 : Form

{ public Form1()

        {

            InitializeComponent();

        }

public string Shizhuaner(int a, int jinzhi) //十转二
{

            string jieguo = ""; while (true)

{

              string s = (a % jinzhi).ToString(); //s的值为a%2后的数,因为进制是2。
                jieguo = s + jieguo; //s在前面是为了让结果倒序输出
                a = a / jinzhi;

                if (a == 0)

{

                    break;

                }

}

            return jieguo;

}

private void button1_Click(object sender, EventArgs e) //十转二
{

            string x = Shizhuanba(int.Parse(textBox1.Text), 2);

            textBox2.Text = x;

        }

public string Shizhuanba(int a, int jinzhi) //十转八
{

            string jieguo = "";

            while (true)

{

string s = (a % jinzhi).ToString();

jieguo = s + jieguo; a = a / jinzhi;

if (a == 0)

                {

                    break;

}

}

return jieguo;

}

private void button2_Click(object sender, EventArgs e) //十转八
{

            string x = Shizhuanba(int.Parse(textBox1.Text), 8);

textBox3.Text = x;

        }

public string Shizhuanshiliu(int a,int jinzhi) //十转十六
{

            string jieguo = "";

                while (true)

                {

int yushu = a % jinzhi;

string s = "";

if(yushu==10)

                    {

                        s = "A";

                    }

else if (yushu == 11)

{

s = "B";

}

else if (yushu == 12)

{

                        s = "C";

}

else if (yushu == 13)

                    {

s = "D";

}

else if (yushu == 14)

                    {

s = "E";

}

                    else if (yushu == 15)

                    {

s = "F";

}

else

{

s = yushu.ToString();

                    }

jieguo = s + jieguo;

a = a / jinzhi;

if (a == 0)

{ break;

}

}

return jieguo;

        }

private void button3_Click(object sender, EventArgs e) //十转十六
{

            string x = Shizhuanshiliu(int.Parse(textBox1.Text), 16);

textBox4.Text = x;

}

private void button7_Click(object sender, EventArgs e) //清空键
{

            textBox1.Text = "";

            textBox2.Text = "";

textBox3.Text = "";

            textBox4.Text = "";

textBox5.Text = "";

textBox6.Text = "";

textBox7.Text = "";

}

public string Erzhuanshi(string a)  //二转十
{

            string jieguo = "";

            int length=a.Length;

            int Sum = 0;

            int n = 0;

while (true)

{

  double y = int.Parse(a.Substring(length - 1, 1)) *Math.Pow(2,n);

  length--;

                n++;

int y1 = (int)y;

                Sum =Sum+y1 ;

                jieguo = Sum.ToString();

  if(length==0)

{

break;

}

}

  return jieguo;

}

private void button6_Click(object sender, EventArgs e) //二转十
{

string s = Erzhuanshi(textBox2.Text);

textBox5.Text = s;

}

public string Bazhuanshi(string a)  //八转十
{

string jieguo = "";

            int length = a.Length;

int Sum = 0;

int n = 0;

while (true)

{

                double y = int.Parse(a.Substring(length - 1, 1)) * Math.Pow(8, n);

length--;

n++;

int y1 = (int)y;

Sum = Sum + y1;

                jieguo = Sum.ToString();

if (length == 0)

                { break;

                }

}

            return jieguo;

        }

private void button5_Click(object sender, EventArgs e) //八转十
{

            string s = Bazhuanshi(textBox3.Text);

textBox6.Text = s;

}

public string shiliuzhuanshi(string a)  //十六转十
{

            string jieguo = "";

            int length = a.Length;

int Sum = 0;

            int n = 0;

while (true)

{ /* A代表10 B代表11 C代表12 D代表13 E代表14 F代表15 */
                string z = a.Substring(length - 1, 1);

if(z=="A")

                {

z = "10";

}

else if (z == "B")

                {

z = "11";

}

else if (z == "C")

                {

z = "12";

                }

else if (z == "D")

{

z = "13";

                }

                else if (z == "E")

                {

z = "14";

}

                else if (z == "F")

                {

z = "15";

}

else

{

  }

double y = double.Parse(z) * Math.Pow(16, n);

length--;

n++;

int y1 = (int)y;

Sum = Sum + y1;

jieguo = Sum.ToString();

if (length == 0)

                {

break;

}

}

return jieguo;

}

private void button4_Click(object sender, EventArgs e) //十六转十
{

            string s = shiliuzhuanshi(textBox4.Text);

textBox7.Text = s;

}

}

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值