gpt4 book ai didi

java - 适合新手的 Java self 描述数字程序

转载 作者:行者123 更新时间:2023-12-02 03:55:27 24 4
gpt4 key购买 nike

我正在尝试编写一个程序,搜索 4 位数字并尝试识别两个 self 描述的数字(第一个数字等于整个数字中零的数量,下一个数字等于整数中的个数等等),我写了一个do-loop:

import java.io.*;
import java.util.*;
import java.text.*;

public class Numbers
{
int integers = 0;
do
{
integer++;
}
while (integer <= 3210);
}

它将遍历可能包含我正在寻找的输出类型的所有 4 位数字。

我想找到一种方法来确定“整数”是否是一个 self 描述的数字。

(我最近才开始编程,所以不太擅长)

最佳答案

 while (integer <= 3210) {
char firstDigit = (integer.toString()).charAt(0);
char secondDigit = '0';
char thirdDigit = '0';
char fourthDigit = '0';
if ((integer.toString().length()) > 1) {
secondDigit = (integer.toString()).charAt(1);
if ((integer.toString().length()) > 2) {
thirdDigit = (integer.toString()).charAt(2);
if ((integer.toString().length()) > 3) {
fourthDigit = (integer.toString()).charAt(3);
}
}
}
int numOfZeroes = 0;
int numberOfOnes = 0;
int numberOfTwos = 0;
int numberOfThrees = 0;
int i = 0;
while (i < (integer.toString()).length()) {
if ((integer.toString()).charAt(i) == '0') {
numOfZeroes++;
} else if ((integer.toString()).charAt(i) == '1') {
numberOfOnes++;
} else if ((integer.toString()).charAt(i) == '2') {
numberOfTwos++;
} else if ((integer.toString()).charAt(i) == '3') {
numberOfThrees++;
i++;
}
if (firstDigit == numOfZeroes + '0' && secondDigit == numberOfOnes + '0'
&& thirdDigit == numberOfTwos + '0' && fourthDigit == numberOfThrees + '0') {
System.out.println(integer);
}
integer++;
}
}

这将按照您想要的方式工作,并且仅适用于这个特定的数字范围。但是,没有任何输出,但我仅使用您提到的前两个条件进行了测试,并且工作正常。

我认为会有更好的方法来做到这一点。这有点多余。

关于java - 适合新手的 Java self 描述数字程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35512927/

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