私はJavaで少し些細な回文クイズを作成しています。私はいくつかの点のチェックイン時にユーザのようなエラーメッセージが例えば「1011」又は「10」のように、多かれ少なかれ3桁の数よりも入力して表示する必要がある場合3桁の数字が回文かどうかを確認する方法は?
「が間違って入力されます。」私が代わりに文字列(String.length()
)で行うことができますしかし、私は、Javaでint.length()
と数の長さをチェックすることはできません。
どのように私はこの問題を解決するだろうか?
これは、文字列にあなたのint型をオンにし、長さ機能を使用できる場合、3桁のチェック
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
System.out.println("Please enter a three digit number number and I will check if it's a palindrome.");
// create scanner and input number
Scanner input = new Scanner(System.in);
int number = input.nextInt();
int digit1 = (int)(number/100);
int remaining = number % 100;
int digit3 = (int)(remaining % 10);
System.out.println(number + ((digit1 == digit3) ? " is a palindrome" : " is not a palindrome"));
}
}
チェック '番号<1000 &&数> = 100'場合。 :|さらに、あなたは 'numberAsString'をやっています。長さを取得するためにlength()を呼び出すことができます。 –
申し訳ありませんMridul!その行を削除するのを忘れました。今編集されました。 –
数値がintの場合は、これを使用できます: 'number <1000 && number> = 100'。しかし、私は回文のためにそれに反対するだろう。どうして?ユーザーが '010'を入力した場合はどうなりますか? int型の場合は10と見なされ、エラーが発生します。文字列としては、それはパリンドロームになります。ユーザーにどの結果を表示するかを決めるのはあなた次第です。したがって、その方法を使用してください。 –