随意输入一个正整数n, 在输入转化的进制数,将转化后的序列输出,并判断某一个数字的个数,这里给的是二进制的例子

来源:互联网 发布:昆山入学积分怎么算法 编辑:程序博客网 时间:2024/06/10 00:22
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace ConsoleApplication1{    class Program    {        //判断总共有多少个0和1        static int hex0, hex1;        static List<int> hexStr = new List<int>();        static void Main(string[] args)        {            //十进制的正整数,进制数            int num, hexNum;            Console.Write("请输入一个十进制的正整数,点击回车键完成输入: ");            num = int.Parse(Console.ReadLine());            Console.Write("请输入需要转换的进制,点击回车键完成输入: ");            hexNum = int.Parse(Console.ReadLine());            //递归调用函数            Change(num, hexNum);            //输出转换后的01序列            for (int i = 0; i < hexStr.Count; i++)            {                Console.Write(hexStr[i] + " ");            }            Console.WriteLine();            Console.WriteLine("将10进制转化后为" + hexNum + "后,包含" + hex0 + "个0,和" + hex1 + "个1");            Console.ReadKey();        }        public static void Change(int n, int b)        {            if (n == 0)            {                return;            }            Change(n / b, b);            hexStr.Add(n % b);            if (n % b == 0)                hex0++;            else                hex1++;        }    }}

0 0
原创粉丝点击