1. 程式人生 > >java利用for迴圈列印三角形

java利用for迴圈列印三角形

自己的基礎一直很薄弱。今天看了韓順平老師的講座視訊補充了很多。

把用for迴圈列印左半邊三角形、右半邊三角形、實心、空心三角形做了一個整理。

和視訊中的程式碼略微有些區別,我是以i=0開始定義陣列。所以邏輯表示式也有不同的地方。

不過令i=1更容易理解,邏輯也比較容易推理。但其實陣列的下標都是從零開始的。

public class demo {
	public static void main(String[]args)
	{
		int lay=4;
	    halfRight(lay);
	    System.out.println();
	    halfLeft(lay);
	    System.out.println();
	    doublePrint(lay);
	    System.out.println();
	    emptyPrint(lay);
		
	}

  public static void halfRight(int lay) {
	  for(int i=0;i<lay;i++) {
		for(int j=0;j<=i;j++){
			System.out.print("*");
		}
		System.out.println();
	}
   }
  public static void halfLeft(int lay) {
	  for(int i=0;i<lay;i++) {
		  for(int k=0;k<lay-1-i;k++) {
			  System.out.print(" ");
		  }
		  for(int j=0;j<=i;j++){
				System.out.print("*");
			}
			System.out.println();	  
	  }  
   }
  public static void doublePrint(int lay) {
	  for(int i=0;i<lay;i++) {
		  for(int k=0;k<lay-1-i;k++) {
			  System.out.print(" ");
		  }
		  for(int j=0;j<2*i+1;j++) {
			  System.out.print("*");
		  }
		  System.out.println();
		  }
	  }

 public static void emptyPrint(int lay) {
	 for(int i=1;i<=lay;i++) {
		  for(int k=1;k<=lay-i;k++) {
			  System.out.print(" ");
		  }
		  //考慮星號時,先忽略空格打法,目標如下:
		 // *
		 // *  *
		 // *    *
		 // *******
		  for(int j=1;j<=(2*i-1);j++) {
			 if(i==1 || i==lay) System.out.print("*");
			 //第一行和最後一行打滿
			 else {
				 if(j==1||j==2*i-1) {
					 System.out.print("*");
					 //第一列或者最後一列再打星號
				 }
				 else {
					 System.out.print(" ");
					 //其他列都打空格
				 }
			 }
		  }
		  System.out.println();
		  }

   

	

 }
}
執行結果:


相關推薦

java利用for迴圈列印三角形

自己的基礎一直很薄弱。今天看了韓順平老師的講座視訊補充了很多。 把用for迴圈列印左半邊三角形、右半邊三角形、實心、空心三角形做了一個整理。 和視訊中的程式碼略微有些區別,我是以i=0開始定義陣列。所以邏輯表示式也有不同的地方。 不過令i=1更容易理解,邏輯也比較容易推理。

java 使用for迴圈列印楊輝三角形

首先需要說明的問題: 什麼是楊輝三角形?   如圖所示:楊輝三角形由數字排列,基本的特點是兩側的數值均為1,其它位置的數值是基正上方的數值與其左上方的數值之和. 程式碼實現: package test; import java.io.File; import ja

Java利用for迴圈產生20個隨機數(在一定範圍內)

解決思路: 要產生隨機數,就需要用到Random()函式,Random()函式的作用是產生隨機數。而在你使用Random()函式產生隨機數時,編譯器會匯入包成員,位置在程式開頭。包成員在另外一個部落格(新手初入Java)中有簡單描述; 博主使用的編譯器是JetBrains公司的IDEA。

利用for迴圈三角形( 空心菱形)

空心菱形 * * *    *   *   *     *  *       * *         *  *       *   *     *    *   *     * *      *      for (var i = 0;

利用for迴圈三角形(倒立反方向直角三角形 )

倒立反方向直角三角形 ******  *****   ****    ***     **      *   for (var i = 0; i < 6; i++) { for

利用for迴圈三角形(反方向正直立三角)

反方向正直立三角形      *     **    ***   ****  ***** ****** for (var i = 0; i < 6; i++) { for (var k = 5 - i; k > 0; k

利用for迴圈三角形(等腰三角形)

等腰三角形      *     ***    *****   *******  ********* *********** for (var i = 0; i < 6; i++) { for (var k = 5 - i; k &g

利用for迴圈三角形(倒立等腰三角形)

倒立等腰三角形 ***********  *********   *******    *****     ***      * for (var i = 0; i < 6; i++) { for (var k = 0;

java利用for迴圈輸出正三角新解

本人在重新學習Java的過程中,遇到一個作業,就是用迴圈輸出正三角,在完成作業之餘,查看了很多網上的答案,用了好幾次for迴圈,基本思路就是先拼接前面的空格,在去拼接後面的“*”符號。感覺有點捉急,自己想了一想新的辦法來更少的迴圈來得到答案。我利用一個if-else判斷

利用for迴圈三角形(等腰空心三角形 )

等腰空心三角形      *     * *    *   *   *     *  *       * *********** for (var i = 0; i < 6; i++) { for (var k = 5 -

javafor迴圈實現列印上下兩個正反三角形

程式碼如下: import java.util.*; public class Circle { public static void main(String args[]) { int n

java中使用for迴圈列印輸出正三角形

package test; public class Test {     public static void main(String[] args) {         System.out.pr

java寫以下小程式碼1. 使用for迴圈列印乘法口訣表 2. 遞迴實現20! 3. 使用陣列靜態初始化方式初始化一個大小為10的整型陣列並輸出。

1.九九乘法表 public class Test { public static void main(String[] args)  { int i; int j; for(i=1;i<10;i++) { for(j=1;j<=i;j++)

java基礎for迴圈巢狀,各種三角形

直角三角形(實心) System.out.println("直角三角形"); for(i=1;i<=9;i++){ for(j=1;j<=i;j++){ System.out.print("*"); } System.out.p

for迴圈列印輸出資料三角形圖形

用for列印輸出資料三角形 輸出實驗結果 JAVA程式碼: package NUM; import java.util.*; public class number {

Python使用for迴圈列印星號三角形例項

簡單的for迴圈列印三角形 1,for迴圈方法實現星星三角 * * * * * * * * * * * * 程式碼: for i in range(0,5): for j in range(i+1): if i == 4:

java 小技巧 利用for迴圈反轉字串

for迴圈倒著用  就可以實現字串的反轉 package com.heima.test; import java.util.Scanner; /** * 字串反轉 輸入abc 輸出cba *

c語言入門之專案3.6——利用for迴圈輸出一個直角三角形

編譯程式碼 /*********************** **專案【3.5】輸出一個直角三角形** **題目:利用for迴圈巢狀輸出用*號組成的直角三角形** **作者:李坤** ********

使用for迴圈列印等腰三角形

public class Test {public static void main(String[] args) {//控制行for (int i = 0; i < 7; i++) {//控制列for (int j = 6; j >i; j--) {//按列輸

使用javafor迴圈迴圈打印出五角星--

//5.0 輸出五角星        int touHigh = 6;        int jianHigh = 25 ;       &