zoukankan      html  css  js  c++  java
  • 算法笔记_161:算法提高 十进制数转八进制数(Java)

    目录

    1 问题描述

    2 解决方案

     


    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]);
        }
    }
  • 相关阅读:
    VUE 脚手架模板搭建
    defineProperty
    理解JS中的call、apply、bind方法
    Two-phase Termination模式
    打印样式设计
    浏览器内部工作原理
    Immutable Object模式
    怎么跳出MySQL的10个大坑
    控制台console
    整理的Java资源
  • 原文地址:https://www.cnblogs.com/liuzhen1995/p/6785558.html
Copyright © 2011-2022 走看看