<pre name="code" class="java">/*** 十进制转三进制,只实现了整数部分* @author CaoChenMiao**/
public class TentoSan {private int TtS(int inNum, int index) throws Exception {if(inNum < index || index <= 1){throw new Exception("不支持的运算");}String outNum = "";int maxIndex = getMaxIndex(inNum, index, 0, 0);int[] result = new int[maxIndex];/*方法一:写的时候没有意识到余数就是所需要的值 ╮(╯▽╰)╭* for (int i = 0; i < maxIndex; i++) {int pow_ = (int)Math.pow(index, maxIndex-1-i);if(inNum - pow_ >= 0){result[i] = inNum/pow_;inNum -= pow_ * result[i];}else if(i != maxIndex-1){result[i] = 0;}else{result[i] = inNum;}}*///方法二: 简单,便捷for (int i = 0; i < maxIndex; i++) {  result[i] = inNum % index;  inNum = inNum / index;  }  for (int i = 0; i < result.length; i++) {outNum += result[i];}return Integer.parseInt(outNum);}/*** 计算最高位数* inNum:输入的数字* index:进制数* countNum:累积次数* total:累积和*/private int getMaxIndex(int inNum, int index, int countNum, int total){int countTotal = total;int count = countNum;int pow_ = (int)Math.pow(index, ++countTotal);while(inNum - pow_ >= 0){inNum-=pow_;count+=pow_;if(inNum - count < 0){break;}return getMaxIndex(inNum, index, count, countTotal);}return countTotal+1;}public static void main(String[] args) throws Exception {TentoSan ts = new TentoSan();System.out.println(ts.TtS(100,3));//输出结果:10201//小结:有返回值的递归函数注意return自身}
}

Java十进制转三进制相关推荐

  1. Excel十进制转三进制(遥控器编码)

    目录 一.生成编码 二.生成不受影响的数值 三.改变十进制的形式 附录 1.固化表格防止修改 2.单个十进制转三进制代码 3.三态拨码开关设定编码 -------------------------- ...

  2. Happy Number 十进制转特殊三进制

    题意 : 开心数仅由2,3,6组成,求第n个开心数是多少 思路 : 并非朴素十进制转三进制,2,3,6,22,23,26-,22在三进制中是00,23则是01,说明这里的三进制应该是0,1,2,00, ...

  3. 二进制转换为三进制 ——C++实现

    二进制转换为三进制 题目: 输入一个2进制的数,要求输出该2进制数的3进制表示. 在3进制的表示中,只有0,1,2三种符号 Input 第1行是测试数据的组数n,后面跟着n行输入.每组测试数据占1行, ...

  4. 农行笔试-火星三进制、离质心最近的点,京东-逆序五进制

    一.火星三进制 火星人用三进制数表示数据,用数字符号@.$.&表示0,1,2,现在输入一个十进制数,请把它用火星三进制表示 输入: num=123 输出: "$$$&@&qu ...

  5. XTU,C语言,平衡三进制

    题目描述 平衡三进制分别使用字符'-','0','1'表示-1,0,1.下表表示从0到10的十进制数对应的平衡三进制的值. 十进制 平衡三进制 0 0 1 1 2 1- 3 10 4 11 5 1-- ...

  6. 【PAT甲级 十进制转十三进制】1027 Colors in Mars (20 分) Java版 5/5通过

    题目 是个水题,一次通过. 这道题的大意就是:给你输入3个十进制的数,让你转换成3个十三进制数.在转换的时候,注意不足两位的要用0补全两位. 小坑 提交之前,想起来自查一下我的convert(int ...

  7. java、计算机进制转换,二进制 十进制 十六进制 的进制等等!

    2进制CPU使用,8进制很少见,10进制适合人类使用,16进制适合编译器和底层程序员使用,希望对你有所帮助! 以下文章是自己从别的地方复制粘贴过来, 总结了一下. 虽然看着有点乱, 但是想学 ,就能看 ...

  8. java中各进制之间的转换(十进制转十六进制、十进制转二进制、二进制转十进制、二进制转十六进制)...

    在java编辑中有没有遇到经常需要进行java中各进制之间的转换(十进制转十六进制.十进制转二进制.二进制转十进制.二进制转十六进制)的事情呢?下面我们就来分析一下各自是怎么转换的: [java] / ...

  9. java中的进制转换

    进制转换 首先是十进制转化为其他进制,如二进制,八进制,十六进制: 它们在java中都有专门的函数可供调用: 如:十进制转化为二进制时调用toBinaryString(); 十进制转化为八进制时调用t ...

最新文章

  1. Java面向对象:覆写与重载
  2. php 1 2 3 转arry_在PHP语言中使用JSON和将json还原成数组的方法
  3. php微信墙开发,Node.js如何开发微信墙
  4. 神马是代码简单的cmd模式,这就是!
  5. SQL数据库查询基础(主讲MySQL,必要时补充了SQLServer、Access兼容性说明)
  6. 中国十大科技进展2项,世界十大科技进展6项生物相关;相比工程,生物与国际差距还是较大...
  7. paip..net c# 调用JS JAVASCRIPT变量与方法
  8. css的基本定位机制
  9. 安装centos 6.5 在惠普 ...pro(有惠普增霸卡)上的诸些问题
  10. SheetJS中文文档-js导出Excel脚本库
  11. 修改alert提示框的css样式
  12. 单片机 架构 程序 经验总结_单片机学习心得体会_经验总结
  13. 用FlashFXP上传文件到SSH服务器,附FlashFXP显示中文乱码的解决方法
  14. 云呐|固定资产调拨流程(固定资产调拨需要哪些流程)
  15. 苏大计算机考研 操作系统常见易错知识点整理
  16. 019动物识别检测网页版
  17. 程序员要为了生活而工作,不要为了工作而生活。
  18. 计算机偏置,深度学习中偏置的作用
  19. CS61A Lab 10
  20. 【LRPP-GRR】Low-Rank Preserving Projection Via Graph Regularized Reconstruction

热门文章

  1. 【Python】出现SyntaxError: invalid syntax的原因总结
  2. 最新 全球 ip地址 归属地 字典表 (202108)
  3. 利用MatLab对数据进行插值计算(分段插值和三次样条插值)
  4. Java Swing JTree:树组件
  5. php预加载图片,图片预加载的一个简明例子
  6. ffmpeg缩放视频尺寸
  7. python 数据处理之使用get_dummies进行one-hot编码
  8. 预警神器来了,天翼大喇叭发出河道防汛强音
  9. paddlepaddle 27 支持任意维度数据的梯度平衡机制GHM Loss的实现(支持ignore_index、class_weight,支持反向传播训练,支持多分类)
  10. 003 大数据4V特征