2019年9月23日割り当て1

デザインのアイデア:

  1. 分析と題した分析の要件が回文特性数は、前面から背面に読み込まれ、バックフロントには同じから読み出され、回文。たとえば、次のようにabccba。入力文字の長さが1または0である場合に加えて、システムは、回文と判定する。(専用ケース)
  2. 先生は、私たちが最初の再帰関数は、条件を停止している必要があり、再帰関数を使用するように求め、つまり、いくつかの特別な場合または0または1再帰ストップ運転の下で、加えて、一般的なもあります。
  3. 特定の符号化および一般条件分類、および再帰を適切な位置で停止されたか否かを判定する

プログラムのソースコード:

1  インポートjava.util.Scanner;
 2  
。3  パブリック クラスTestPalindrome {
 4      
。5      パブリック 静的スキャナSC = NULL ;
 6      静的 int型 B = 0 ;
 7      / ** 
8       *再帰的にはパリンドロームはパリンドロームであるか否かを判定する:AAA AAAの前後に読み取りまたは前後に同じから読み取られる
 。9       * @param 10      * @paramのB
 11      * @return 12れる* / 13はある公共の静的文字列ジャッジ(文字列、int型B){
 14  
      
               
15          IF(a.length()== 0 || a.length()== || 1(a.length()/ 2)|| B == == B(a.length()+ 1)/ 2 ){ 
 16              リターン "!パリンドローム" ;
 17          }
 18である         {
 19          // a.charAt(。)0からカウントし、最大ビットa.length() - 1 
20は          IF(a.charAt(B) != a.charAt(a.length() - 1- B))
 21は          、{
 22が              戻り "パリンドロームではない!" ;
 23である           } {
 24               B ++ ;
 25              リターン  ジャッジ(A、B);
 26である          }    
 27      }
 28 }
 29      
30      
31れる     パブリック 静的 ボイドメイン(文字列[]引数){
 32          のSystem.out.println( "文字列を入力してください" );
 33は、          SC = 新しい新しいスキャナ(System.in);
 34である          文字列C = sc.next( );
 35          B = 0 ;
 36         のSystem.out.println(ジャッジ(C、B));
 37  
38である     }
 39  
40 }

テストを実行します。

 

 

 

 

プログラミングの概要分析:

 私は回文の考え方が間違っているので、理解して、このプログラムは、パリンドローム解析、プログラミングプロセスの数を決定するためのものである、ことができないプログラミングが生じ、これが最大の問題です。プログラミングのために、私はまた、作った場合でも、まず、解決すべき問題を理解しておく必要があり、実際に読むために、それを理解して、プログラミングに行くのではなく、それを達成するためのコードと、少しの知識の場合にプログラムしていきますので、これは、要件を満たしていません。

方法は、例えば、コンパイルプロセスでStringクラスを使用する:のcharAt()メソッドは、指定されたインデックスのchar値を返します。つまり、char型を返します。長さ()関数は、文字列の長さを返します。

 

おすすめ

転載: www.cnblogs.com/cxy0210/p/11583881.html