2012-03-09 4 views
-5

私はの基本を行うことさえできません。私は間違って何をしていますか?JAVA:/ Else/Forメソッドの場合何?

  1. は星(*)で構成された "X" を描く:

    は私がする必要があります。私は星のXの幅を求める必要があります。

この割り当てのための私の要件は次のとおりです。
1 - Xの大きさを求めるプロンプト
4 - 星(星の黒四角を描くことができた場合に+2を受け取る)

私は」のドローX mを使用してEclipseところで!

import java.util.Scanner; 

/* 
* 
* 
* Description: Draws a X. 
*/ 

public class Tutorial1 
{ 
    public static void main(String[] args) 
    { 
     Scanner sc = new Scanner(System.in); 
     int i,j; 
     System.out.print("Enter size of box: 4 "); 
     int size = sc.nextInt(); 

     for (i=0; i < size; i++) 
     { 
      for (j=0; j < size; j++) 
      { 
       if ((i == 0) // First row 
        || (i == size-1) // Last row 
        || (j == 0) // First column 
        || (j == size-1))  // Last column 
        System.out.print("*"); // Draw star 
       else 
        System.out.print(" "); // Draw space 
      } 
      System.out.println(); 
     } 
    } 
} // 
+3

正確にあなたを混乱させるものを詳しく教えてください。 –

+3

あなたはどのような問題を抱えていますか?どのようなエラーが表示されますか?質問の冒頭にある不要なテキストの一部を削除し、実際に回答するのに役立つ情報に置き換えてください。 –

+0

@Vienne Sung at stackoverflow多くの人が質問をしたいだけです。あなたのコーディングの問題については、ほとんどの場合気にすることはありません。このようにすれば、人々を幸せに保つことができます。 – MoonKnight

答えて

2

プログラムによって正しくボックスが描画されます。

Enter size of box: 4 7 
******* 
*  * 
*  * 
*  * 
*  * 
*  * 
******* 

代わりに十字を描画するようにコードを変更する必要があります。コードは実際には4つではなく2つの行だけで簡単です。

私は混乱してプロンプトから4を削除します。

Enter size of box: 7 
*  * 
* * 
    * * 
    * 
    * * 
* * 
*  * 
2

あなたはすでにを知っていますあなたは問題です。あなたは自分自身でそれを述べました: "私は基礎を行うことさえできません"。

次に基本を学びます。道はありませんTHATです。

このサイトは「私にXのコードを書いてください」というサイトではありません。人々は特定の問題に関する特定の質問だけであなたを助けます。あなたの仕事は実際にはかなり簡単な初心者のものですあなたは基本的な概念を把握しました。それでも問題が解決された方法を理解していないので、の解決策は役に立たないでしょう。さらに悪いことに、あなたの教えはあなたがそれをあなた自身で書かなかったことを、かなり早く気付くでしょう。それはあなたが二重にねじます - あなたは不正行為の罪を犯し、まだ学んだことはありません何か

1

ここに必要な骨格があります。 forループはテーブルを反復します。難しい部分は、どの文字を印刷するかを決めるアルゴリズムが登場しています。

public class Tutorial1 
{ 
    public static void main(String[] args) 
    { 
     Scanner sc = new Scanner(System.in); 
     int i,j; 
     System.out.print("Enter size of box: "); 
     size = sc.nextInt(); 

     Tutorial1 t = new Tutorial1(); 
     t.printX(size); 
    } 

    private int _size = 0; 

    public void printX(int size) {  
     _size = size; 
     for(int row = 0; row < _size;row++) { 
      for(int col = 0; col< _size;col++) { 
       System.out.print(getChar(row,col)); 
      } 
      System.out.println(); 
     } 
    } 

    private String getChar(int row, int col) { 
     //TODO: create char algorithm 
     //As a pointer, think about the lines of the X independently and 
     //how they increment/decrement with the rows 
    } 
} 
関連する問題