2013-05-19 22 views
-2

我想在java中繪製一條線。我將使用這些繪製三角形。我可以這樣做:在JAVA中用模式繪製一條線 - 初學者

1*** 
11** 
111* 
1111 

,我需要做到這一點:

1*** 
*1** 
**1* 
***1 

伊夫今天做了很多工作,我的腦海裏有真糊塗。

你能幫我嗎?非常感謝。

編輯:還我完美的答案應該是實現Bresenham直線繪製算法,但我在維基百科不明白。

編輯2:我的網代碼:

String [][] matrix = new String [50][50]; 
for (int row = 0; row < 50; row++){ 
    for (int column = 0; column < 50; column++){ 
    matrix [row][column] = "*"; 
    } 
} 
+0

您將需要使用「嵌套的for循環」 – greedybuddha

+0

我有一個50×50格的以「*」溢滿矩陣,我需要線矩陣,我寫像2.代碼有問題。但我做不到。 –

回答

1
public class Test 
{ 
    public static void main(String [] args) 
    { 
      int size=50; 
      String[][] matrix= new String [size][size]; 

      for (int i=0; i < size; i++) 
      { 
       for (int j=0; j < size; j++) 
       { 
       if (i != j) 
       matrix[i][j]="*"; 

       else 
       matrix[i][j]="1"; 
       } 
     } 

     for (int i=0; i < size; i++) 
     { 
      for (int j=0; j < size; j++) 
      { 
       System.out.print(matrix[i][j]); 
      }  

      System.out.println(); 
     } 

    } 
} 

編輯:如果它已經充滿了*只是讓matrix[i][j]="1";當我等於Ĵ,即if (i==j)

+0

沒關係。謝謝你的幫助。這是工作,但我需要所有的線繪圖算法包括; '*****' '*****' '11111' '*****' '*****' 我的意思是這條對角線就是我的例子。 再次感謝這個信息使我的頭腦更加明亮.. –

+0

沒有人會爲你做這件事。看起來你沒有做任何事情,除了創建一個*的矩陣,所以我認爲你很迷茫,因此提供了這個簡單的解決方案。至於實現他的算法,它應該是微不足道的,因爲到處都有僞代碼/實際代碼。 –

+0

編輯:不要試圖做人,但人們不會爲你做所有事情。我們在這裏提供幫助/指導,而不是完成作業/項目/工作。如果你不能理解僞代碼或者如何在java中實現它,也許你應該從一個稍微簡單的例子開始,然後繼續努力。 –

0
public class MulArray { 

    public static void main(String[] args) { 
     /* 
     * 1*** 1** 1* 1 
     */ 

     String[][] grid = new String[5][5]; 

     for (int row = 0; row < grid.length-1; row++) { 
      for (int column = 0; column < grid[row].length; column++) { 
       if (row == column) { 
        grid[row][column] = "1"; 
       } else { 
        grid[row][column] = "*"; 
       } 
      } 
     } 
     for (int row = 0; row < grid.length-1; row++) 
      for (int column = 0; column < grid[row].length; column++) { 
       if (column != 4) { 
        System.out.print(grid[row][column]); 
       } 
       else{ 
        System.out.print("\n"); 
       } 

      } 

    } 

} 
+1

歡迎來到Stack Overflow!您能否編輯您的答案,以包含有關此代碼如何工作以及如何解決問題的信息? – josliber