算法笔记_161:算法提高 十进制数转八进制数(Java)
Posted 舞动的心
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了算法笔记_161:算法提高 十进制数转八进制数(Java)相关的知识,希望对你有一定的参考价值。
目录
1 问题描述
编写函数,其功能为把一个十进制数转换为其对应的八进制数。程序读入一个十进制数,调用该函数实现数制转换后,输出对应的八进制数。
样例输入
9274
样例输出
22072 样例输入
18
样例输出
22
2 解决方案
具体代码如下:
import java.util.ArrayList; import java.util.Scanner; public class Main { public static void main(String[] args) { ArrayList<Long> list = new ArrayList<Long>(); Scanner in = new Scanner(System.in); long n = in.nextLong(); while(n > 0) { long temp = n % 2; n = n / 2; list.add(temp); } int len = list.size(); if(len % 3 == 1) { list.add(0L); list.add(0L); } else if(len % 3 == 2) { list.add(0L); } len = list.size() / 3; long[] result = new long[len]; int count = 0; for(int i = list.size() - 1;i >= 0;i = i - 3) { long a = list.get(i) * 2 * 2; long b = list.get(i - 1) * 2; long c = list.get(i - 2); result[count++] = a + b + c; } for(int i = 0;i < result.length;i++) System.out.print(result[i]); } }
以上是关于算法笔记_161:算法提高 十进制数转八进制数(Java)的主要内容,如果未能解决你的问题,请参考以下文章