重複の可能性:
対称的な単語を判別するためのJavaのプログラミング
ここでは新しいですが、単語の入力を判別し、最初の単語が単語の終わりと一致するかどうかを確認するコードを作成する方法を理解するのに苦労しています。あなたはabbaを入力して、それが均等に対称であり、abaが奇妙に対称であるという答えを得ることができます。
方法を教えてください:(
主なものは2つだけです。
まず、文字の量が奇数か均等かを知りたい(文字の数を2で割った値、0.5で終わる場合は奇妙な対称、整数の場合は均等に対称)。
次に、実行の主なアイデアとなる単語内の文字の位置(つまり、1 = n、2 = n-1,3 = n-2 ...)を取得したい。奇妙な対称の単語、最後の残りの文字を無視します。
ヘッドスタートやアイデアに感謝します:)ありがとう!
KDiTragliaに感謝します、私はコードを作成してコンパイルしました、そしてここに私が置いたものがあります。私はこれ以上得ていません。
報告された問題:
Exception in thread "main" java.lang.Error: Unresolved compilation problems: reverse cannot be resolved or is not a field reverse cannot be resolved or is not a field Syntax error, insert ") Statement" to complete IfStatement
これは私が得たものです、KDiTragliaの助け
public class WordSymmetric {
public static void main(String[] args) {
String word = "abccdccba";
if ( (word.length() % 2) == 1 ) {
System.out.println("They are oddly symmetric");
//odd
}
else {
System.out.println("They are evenly symmetric");
//even
}
int halfLength = word.length() / 2;
String firstHalf = word.substring(0, halfLength);
String secondHalf = word.substring(halfLength, word.length());
System.out.println(secondHalf.reverse());
if (firstHalf.equals(secondHalf.reverse()) {
System.out.println("They match");
//they match
}
} }