数値または文字列がJavaの回文であるかどうかを確認します
数値や文字列が回文かどうかを調べる方法は、よく聞かれる質問です。数値の逆数が404と同じである場合、数値は回文です。一方、412 は逆数が 214 であるため、非回文です。数値または文字列が回文であるかどうかを確認するには、まずJavaで数値または文字列を反転する方法を質問する必要があります。この問題は、API を使用するか、ループ、条件、変数、論理演算子などのプログラミングの基本のみを使用して解決できます。この単純な問題は、コーディングができる本物のプログラマと、皿の上ですべてを受け取る他のプログラマを示す可能性があるため、自分でプログラミングすることをお勧めします.
前述のように、優れたプログラマは常に 簡単そうに見える演習、特にJavaプログラミングを学び始めたばかりのJavaプログラミング初心者の練習
References:
フランス語の回文一覧
Stackoverflow: 回文
回文をチェックするJavaプログラム
整数が回文であるかどうかをチェックする
これは、数値が回文であるかどうかをチェックするJavaプログラムです。このプログラムはAPIを使用しませんが、除算とモジュロを使用して、整数が回文であるかどうかをテストします。このチェックは、メソッド reverse() および estPalinsrome(int number).public class Palindrome {このプログラムを実行すると、次の結果が得られます:
public static void main(String args[]){
int[] numbers = {0, 2, 113, 11, 1443, 1441, 1654, 19891};
for(int number: numbers){
System.out.println(number +"は回文ですか?"
+ est回文(数値));
}
}
private static boolean isPalindrome(int number) {
if(number == inverse(number)){
return true;
}
return false;
}
private static int inverse(int number){
int inverse = 0;
while(number != 0){
inverse = inverse*10 + number%10;
number = number/10;
}
逆戻り。
}
}
0 は回文ですか?trueこのJavaプログラムは、整数の配列を取り、数値が回文であるかどうかをチェックします。
2は回文ですか?true
113は回文ですか?false
11は回文ですか?true
1443は回文ですか?false
1441は回文ですか?true
1654は回文ですか?false
19891は回文ですか?true
文字列が回文であるかどうかを確認します
文字列が逆数に等しい場合、文字列は回文と呼ばれます。 たとえば、「レーダー」は回文であり、その逆は「レーダー」のままです。他の例: "ababa", "she", "anna".
Iterative palindrome
import java.util.Scanner;結果:
public class Palindrome_string {
public static void main(String args[])
{
文字列ワード, mot_inverse = "";
Scanner in = new Scanner(System.in);
System.out.println("単語を入力してください");
word = in.nextLine();
if (pal(mot)))
System.out.println("'"+mot + "' は回文です");
else
System.out.println("'"+word + "' は回文ではありません");
}
public static boolean pal(String mot){
int i=0, length=word.length()-1;
boolean equal=true;
/*最初の文字を最後の文字でテストします
*等しい場合、プログラムは続行します
*whileループをアンワインドし、テストします
*次の文字(長さ-(i+1)のi+1)
*iがlength/2,
に等しくなるまで*、そうでない場合は等しいブール値はfalse
を受け取ります *so, PAL 関数は false
*/
while(i) を返します<長さ/2 &&equals){
if(charAt.word(i)==charAt.word(i))
equals = true;
else
equals = false;
i++;
}
等しいリターン。
}
}
単語を入力
rotor
'rotor' is a palindrome
recursive palindrome
public class Palindrome_recursive {Result:
public static void main(String[] args) {
文字列[] strings = {"here", "rumor", "Leila",
"lol", "hi", "no"};
for(文字列文字列: strings){
if(estPalindrome(string))
System.out.println("'"+string + "' is a palindrome");
else
System.out.println("'"+string + "' は回文ではありません");
}
}
public static boolean isPalindrome(String s)
{
//長さが 0 または 1 の場合
//回文
if(s.length() == 0 || s.length() == 1)
true;
if(s.charAt(0) == s.charAt(s.length()-1))
/*
* 最初の最後の文字
* 同じ場合は、同じ処理を繰り返します
* 最初の文字と
* 最後の文字に達するまで最後の文字
* 最初の条件
*/
return isPalindrome(s.substring(1, s.length()-1));
/*
* if 条件が false の場合、
* false
*/
return false;
}
}
'here' is a palindromeBothコードで大文字と小文字が区別され、大文字の場合は、両方の文字列を小文字または大文字に変換することで、大文字を無視するように変更できます
'rumor' is not a palindrome
'Leila' is not a palindrome
'lol' is a palindrome
'hi' is not a palindrome
'no' is a palindrome
前述のように、優れたプログラマは常に 簡単そうに見える演習、特にJavaプログラミングを学び始めたばかりのJavaプログラミング初心者の練習
References:
フランス語の回文一覧
Stackoverflow: 回文
回文をチェックするJavaプログラム