winfrom——计算机进制转换

原创 2015年07月10日 18:46:40


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;

}

}

}

计算机各进制之间的转换

今天翻了一本计算机基础的书籍,其中十进制、二进制、八进制、十六进制之间的转换挺有意思的,也容易犯糊涂,特温故而知新。   十进制数制系统          十进制数制系统包括 10 ...
  • erlian1992
  • erlian1992
  • 2016年05月15日 19:32
  • 5350

计算机组成原理:十进制、原码、反码、补码的转换关系

原码、反码、补码的第一位都是是符号位,0为正数,1为负数,不论小数整数都是如此。 eg:0.2(2)是个负数,1.2(2)是个正数,11112(2)是个负数,01112(2)是个正数。 十进制->...
  • ytrewq121
  • ytrewq121
  • 2017年04月23日 22:25
  • 302

java语言基础(5)——进制,进制转换以及不同进制的数据的书写方式

进制概述: 进制就是进位制,是人们规定的一种进位方法,对于任何一种进制,比如X进制,就表示第一位置上的数运算时逢X进一位。二进制就是逢2进一,依此类推。 进制之间的关系: 计算机的电子元件只能表示...
  • wang740209668
  • wang740209668
  • 2017年02月24日 22:12
  • 572

java进制转换

一、进制 进制的由来:任何数据在计算机中都是以二进制的形式存在的。二进制早期由电信号开关演变而来。 计算机为什么要采用二进制呢? 因为二进制具有运算简单,易实现且可靠,为逻辑设计提供了有利的途径、节省...
  • qqhao01
  • qqhao01
  • 2013年09月15日 17:58
  • 1530

Java基本语法-----java进制的转换

进制: 进制是一种记数方式 ,可以用有限的数字符号代表所有的数值。由特定的数值组成。 1整型的表现形式 1.十进制: 都是以0-9这九个数字组成,不能以0开头。 2.二进制: 由0和1两...
  • duruiqi_fx
  • duruiqi_fx
  • 2016年07月21日 00:06
  • 9482

顺序栈的定义以及应用:十进制与八进制的转换、十进制与十六进制的转换

利用栈的顺序存储结构,设计一组输入数据(假定为一组整数),能够对顺序栈进行如下操作: 初始化一个空栈,分配一段连续的存储空间,且设定好栈顶和栈底; 完成一个元素的入栈操作,修改栈顶...
  • qq_34803572
  • qq_34803572
  • 2016年10月18日 22:50
  • 2486

计算机系统的数位与进制

计算机系统的数制 1、数制是用一组固定的符号和统一的规则来表示数值的方法。 2、计算机底层使用的是数制是二进制。 3、用java编程使用的是十进制。java底层仍使用二进制。 4、计算机常用的...
  • wangqingqi20005
  • wangqingqi20005
  • 2016年04月27日 20:46
  • 654

计算机各进制之间的转换

今天翻了一本计算机基础的书籍,其中十进制、二进制、八进制、十六进制之间的转换挺有意思的,也容易犯糊涂,特温故而知新。   十进制数制系统          十进制数制系统包括 10 ...
  • u010929604
  • u010929604
  • 2014年09月14日 10:47
  • 2701

计算机进制之间的转换

十进制数制系统          十进制数制系统包括 10 个数字:0、1、2、3、4、5、6、7、8、9          基为:10        逢十进一,如3+7=10,20+80...
  • ShiHe_
  • ShiHe_
  • 2017年08月04日 20:54
  • 197

计算机当中的进制转换

//十进制转十六进制,十进制转二进制,在整个全的,二八十六进制的万能查表 package test; //获取一个整数的16进制表现形式 /*   * 分析:  * 二进制转成十六进制,其实...
  • hiberatejss
  • hiberatejss
  • 2014年04月08日 22:57
  • 639
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:winfrom——计算机进制转换
举报原因:
原因补充:

(最多只允许输入30个字)