gpt4 book ai didi

java - 将 10 进制数转换为 3 进制数

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:13:02 24 4
gpt4 key购买 nike

如何使用方法 int converter(int num) 将 10 进制数转换为 3 进制数。

import java.util.Scanner;

public class BaseConverter {
int answer;
int cvt = 0;
while (num >= 0) {
int i = num / 3;
int j = num % 3;
String strj = Integer.toString(j);
String strcvt = Integer.toString(cvt);
strcvt = strj + strcvt;
num = i;
break;
}
answer = Integer.parseInt("strcvt");
return answer;
}

public static void main(String[] agrs) {
Scanner in = new Scanner(System.in);
System.out.println("Enter a number: ");
int number = in.nextInt();
System.out.print(converter(number));
in.close();
}

编译完成。但是当我尝试运行它并输入一个数字时,它显示java.lang.NumberFormatException:对于输入字符串:“strcvt”我不知道如何解决它。如何在不使用字符串的情况下执行此操作?

最佳答案

您根本不需要使用 String。

试试这个

public static long asBase3(int num) {
long ret = 0, factor = 1;
while (num > 0) {
ret += num % 3 * factor;
num /= 3;
factor *= 10;
}
return ret;
}

注意:计算机中的数字只有 N 位,即 32 位或 64 位,即它们是二进制的。但是,您可以创建一个数字,当以 10 为基数打印时,该数字实际上显示为以 3 为基数的数字。

关于java - 将 10 进制数转换为 3 进制数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28361742/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com