`
mandyyang
  • 浏览: 5937 次
  • 性别: Icon_minigender_2
  • 来自: 大同
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

求一个正整数的N进制表示

 
阅读更多
package A;

import java.util.LinkedList;
import java.util.Scanner;

class StringStack {
private LinkedList<String> linkedList;
public LinkedList<String> getLinkedList() {
return linkedList;
}

public void setLinkedList(LinkedList<String> linkedList) {
this.linkedList = linkedList;
}

public StringStack()
{
   linkedList=new LinkedList<String>();
}
  
public void push(String name)
{
   //add element into list's head
   linkedList.addFirst(name);
}

public String top()
{//get the first element of this list
   if(linkedList.isEmpty())
   return null;
return linkedList.getFirst();
}

public String pop()
{
   //remove the first element from this list
if(linkedList.isEmpty())
   return null;
   return linkedList.removeFirst();
}

public boolean isEmpty()
{
         //is this list empty
   return linkedList.isEmpty();
}
}

public class nHEX {
private static String IntegerTonHEX(int num,int mod){
StringStack result=new StringStack();
int quotient=num;
int remainder;
while(quotient>mod||quotient==mod){
remainder=quotient%mod;
quotient=quotient/mod;
result.push(Integer.toString(remainder));
}
result.push(Integer.toString(quotient));
StringBuilder sb=new StringBuilder();
while(!result.isEmpty()){
sb.append(result.pop());
sb.append("");
}

return sb.toString();
}
public  static  void main(String[] args)throws Exception{
Scanner scanner = new Scanner(System.in);
System.out.println("Please enter the number to be transformed:");
int num=new Integer(scanner.nextLine());
System.out.println("Please enter the number of n-hex:");
int mod=new Integer(scanner.nextLine());


System.out.println("num:"+num);
System.out.println("mod:"+mod);
System.out.println(num+"的"+mod+"进制是:");
System.out.println(IntegerTonHEX(num,mod));

}

}
分享到:
评论

相关推荐

    进制转换:输入一个十进制数n,把它转化为r进制数输出

    输入一个十进制数n,把它转化为r进制数输出。输入数据包含多个测试实例,每个测试实例包含两个整数n和r

    (android demo)算法实现:计算十进制数N的二进制形式中包含数字1的个数

    在Android开发中,我们经常会遇到各种算法挑战,其中之一就是如何计算一个十进制数N的二进制表示中“1”的个数。这个任务看似简单,但其实涉及到计算机科学的基础知识,包括二进制转换、位操作以及算法设计。下面...

    Binary-Gap-solution-[removed]正整数N内的二进制间隙是连续零的任何最大序列,在N的二进制表示形式中,两端均被1包围。

    二进制间隙解决方案Javascript 正整数N内的二进制间隙是连续零的任何最大序列,在N的二进制表示形式的两端都被一个1包围。 例如,数字9的二进制表示形式1001并包含长度2的二进制间隙。数字529的二进制表示形式...

    C++中几种将整数转换成二进制输出的方法总结

    首先,我们可以使用递归的方式来输出整数的二进制表示。如`BinaryRecursion`函数所示,通过不断将数字右移并取模2,可以得到每一位的二进制值,直到数字变为0。这种方法简洁明了,但效率可能较低,因为涉及多次函数...

    C++计算一个数字的二进制中0或1的个数原理及代码

    本篇文章将详细探讨如何使用C++来计算一个整数在二进制表示中0或1的个数,并深入分析其背后的原理。 #### 核心知识点概述 1. **位操作**:通过位操作符对二进制位进行直接操作,如位“与”(`&`)、位“或”(`|`)等...

    C程序 十进制整数转化成二进制数,easiest

    - 初始化一个空的字符数组来存储二进制表示。 - 将输入的十进制数不断除以2,获取余数,将余数添加到字符数组的前面。 - 每次除法后,将商继续作为新的数进行处理,直到商为0。 - 最后,字符数组的元素顺序需要...

    c语言编程题:从键盘输入一个十进制数,将其转换为二进制、八进制和十六进制数,并同时输出。

    在计算机科学中,我们经常接触到不同的进制表示方法,主要包括: - **十进制**:日常生活中最常用的计数系统,基数为10,采用0~9十个数字进行计数。 - **二进制**:计算机内部处理数据时所使用的进制,基数为2,只...

    C++编写的各种基数、进制下的转换

    例如,`std::bitset(10)`会创建一个表示数字10的32位二进制位集,你可以使用`.to_string()`方法获取二进制表示。 2. **十进制到其他进制**:将十进制转换为其他进制(如八进制或十六进制),可以使用内置函数`std::...

    正整数无序分拆算法设计及论证

    正整数无序分拆算法设计及论证,如果错误请指正。

    R进制转换R进制转换R进制转换

    输入共一行,包含两个整数N(32位正整数)和R(2, R&lt;&gt;10)。 输出: 输出转换后的数,输出占一行。如果R大于10,则对应的数字规则参考16进制(比如,10-16分别用A-F表示,等等)。 输入样例: 23 12 6687 16 ...

    将十进制数N转换为r进制的数(Java)代码

    `StringBuilder`用于构建结果字符串,每次得到的余数被追加到末尾,最后通过反转字符串得到正确的r进制表示。 当运行上述代码,输出将是:“十进制数 3456 转换为 8 进制是:4710”。这是因为在8进制下,3456等于4*...

    整数的二进制编码(实验)

    三、二进制表示正整数 对于非负整数,其二进制表示遵循“逢二进一”的规则。例如,十进制数5在二进制下为101,因为5 = 4 + 1,4是2的2次幂,1是2的0次幂。如果要将一个较大的非负整数转换为二进制,可以使用除2取...

    输出n个整数的所有子集

    在C++编程中,"输出n个整数的所有子集"是一个常见的数据结构与算法问题。这个问题涉及到集合论和位运算,是理解计算机科学中基本概念的一个好练习。在这个实验一中,我们的目标是设计一个程序,它能够接收n个整数...

    c语言实现八进制转十进制

    2. 转换过程:遍历输入字符串,用指针`p`指向当前字符,初始化一个整型变量`n`用于存储转换后的十进制值。在循环中,`n`乘以8(对应八进制的权重),再加上当前字符表示的八进制值(通过`*p-'0'`获取,因为字符'0'到...

    Java进制转换,十六进制、十进制、二进制

    Java进制转换 正整数的十进制转换二进制 将一个十进制数除以二,得到的商再...二进制转十进制的转换原理:从二进制的右边第一个数开始,每一个乘以2的n次方,n从0开始,每次递增1。然后得出来的每个数相加即是十进制数

    西南交大-算法设计与分析-作业7-参考(代码+报告)

    (1)对于给定的正整数集合S={w_1,w2,……,wn}和正...(3)给定一个自然数N,0\leN\le4999和M各不同的十进制数字X1,X2,……,XM, 找出由这些数字所构成的正整数中N的倍数最小的正整数,设该正整数不超过232-1。 (4)

    顺序栈、链栈将10进制转为2、8、16进制源码

    例如,对于2进制转换,我们可以将10进制数除以2的余数依次压入栈,然后依次弹出并组合得到2进制表示。8进制和16进制转换类似,只是除数分别变为8和16。 在C++中,实现这些转换可以定义一个通用的函数,接受基数作为...

    基于malab中simulink的模N进制的绝对码相对码互转.rar

    - 模N进制是一种非十进制的计数系统,其中N是任意正整数。在这种系统中,任何数值都是0到N-1之间的整数。 - 它广泛应用于数字信号处理、编码理论、计算机科学等领域,因为它可以有效地减少计算复杂性和存储需求。 ...

    二进制算法问题与解答方案

    程序需读取数据集,每个数据集包含一个正整数n(1 &lt;= n ^6),然后输出这个数在二进制表示下的1的位数,且输出的数字应按升序排列。 解题策略分为以下几步: 2.1 **算法设计**:这个问题可以通过简单的位操作或...

    把一个数分解成2的次幂

    2的次幂指的是2的任意正整数次方,如2^0、2^1、2^2等。次幂运算在计算机科学中无处不在,尤其是在计算和数据结构中。数的拆分则是指将一个数分解为更小的部分,这里特指分解为2的次幂。 在实际编程中,实现这个功能...

Global site tag (gtag.js) - Google Analytics