欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java輸出鏤空金字塔實現(xiàn)案例

 更新時間:2021年09月16日 11:13:10   作者:MFDouble_G  
小編最近接到領(lǐng)導(dǎo)安排,要求根據(jù)用戶輸入,打印出相應(yīng)層數(shù)的鏤空金字塔效果,本文分步驟通過實例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧

根據(jù)用戶輸入,打印出相應(yīng)層數(shù)的鏤空金字塔 

1.第一步,打印出金字塔(非鏤空)

import java.util.Scanner;
public class test{
	public static void main(String[] args) {
		System.out.println("請輸入金字塔的層數(shù)");
		Scanner sc = new Scanner(System.in);
		int towerLevel = sc.nextInt();
		/*
			輸入層數(shù)為5
				*			1層 1個*		1=1*2-1  空格數(shù)4
			   ***			2層 3個*		3=2*2-1	 空格數(shù)3
			  *****			3層	5個*		5=3*2-1	 空格數(shù)2
			 *******	 	4層	7個*		7=4*2-1  空格數(shù)1
			*********		5層 9個*   	    9=5*2-1  空格數(shù)0
			 				可以得出 *為  層數(shù)*2-1  空格數(shù)為總層數(shù)-本層數(shù)
		 */
		for(int i = 1; i <= towerLevel; i++){          //打印每一層,i代表當(dāng)前層
			for(int k = 1; k <= towerLevel - i; k++){  //打印當(dāng)前層的空格,空格數(shù)為總層數(shù)-本層數(shù)
				System.out.print(" ");
			}
			for(int j = 1; j <= i * 2 - 1; j++){       //打印當(dāng)前層的*,j為當(dāng)前要打印*在本行中的位置,每行的第一個位置是 j = 1, 最后一個位置是 j=i*2-1
					System.out.print("*");
			}
			System.out.println();
		}
	}
}

用戶輸入5以后,結(jié)果為:

2.分析如何打印出鏤空金字塔

根據(jù)鏤空金字塔的圖形來看,如果當(dāng)前層不在最底層,其余層都是只在本行的第一個位置和最后一個位置打印了*,其余位置都為空格,所以打印*的語句前可以加一個if判斷條件:當(dāng)前位置是當(dāng)前層的第一個 或者 當(dāng)前位置是當(dāng)前層的最后一個 或者 當(dāng)前層是最后一層,用代碼體現(xiàn)就是if(j == 1 || j == 2 * i - 1 || i == towerLevel)。

import java.util.Scanner;
public class test{
	public static void main(String[] args) {
		System.out.println("請輸入金字塔的層數(shù)");
		Scanner sc = new Scanner(System.in);
		int towerLevel = sc.nextInt();
		/*
			輸入層數(shù)為5
				*			1層 1個*		1=1*2-1  空格數(shù)4
			   ***			2層 3個*		3=2*2-1	 空格數(shù)3
			  *****			3層	5個*		5=3*2-1	 空格數(shù)2
			 *******	 	4層	7個*		7=4*2-1  空格數(shù)1
			*********		5層 9個*   	    9=5*2-1  空格數(shù)0
			 				可以得出 *為  層數(shù)*2-1  空格數(shù)為總層數(shù)-本層數(shù)
		 */
		for(int i = 1; i <= towerLevel; i++){          //打印每一層,i代表當(dāng)前層
			for(int k = 1; k <= towerLevel - i; k++){  //打印當(dāng)前層的空格,空格數(shù)為總層數(shù)-本層數(shù)
				System.out.print(" ");
			}
			for(int j = 1; j <= i * 2 - 1; j++){       //打印當(dāng)前層的*,j為當(dāng)前要打印*在本行中的位置,每行的第一個位置是 j = 1, 最后一個位置是 j=i*2-1
				if(j == 1 || j == 2 * i - 1 || i == towerLevel){
					System.out.print("*");
				} else{
					System.out.print(" ");
				}
			}
			System.out.println();
		}
	}
}

用戶輸入5以后結(jié)果為:

這樣就打印出了鏤空金字塔。

到此這篇關(guān)于java輸出鏤空金字塔實現(xiàn)案例的文章就介紹到這了,更多相關(guān)java鏤空金字塔內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java中Tuple的功能及使用詳解

    Java中Tuple的功能及使用詳解

    Java中的Tuple是一種非常有用的數(shù)據(jù)結(jié)構(gòu),它可以讓開發(fā)者在處理多個數(shù)據(jù)元素時更加方便和高效,通過Tuple,我們可以將多個變量打包成一個對象,從而減少了代碼量,提高了代碼可讀性,這篇文章主要介紹了Java中Tuple的功能及使用場景,需要的朋友可以參考下
    2024-01-01
  • Spring超詳細(xì)講解事務(wù)

    Spring超詳細(xì)講解事務(wù)

    Spring事務(wù)的本質(zhì)就是對數(shù)據(jù)庫事務(wù)的支持,沒有數(shù)據(jù)庫事務(wù),Spring是無法提供事務(wù)功能的。Spring只提供統(tǒng)一的事務(wù)管理接口,具體實現(xiàn)都是由數(shù)據(jù)庫自己實現(xiàn)的,Spring會在事務(wù)開始時,根據(jù)當(dāng)前設(shè)置的隔離級別,調(diào)整數(shù)據(jù)庫的隔離級別,由此保持一致
    2022-07-07
  • Spring與Dubbo搭建一個簡單的分布式詳情

    Spring與Dubbo搭建一個簡單的分布式詳情

    這篇文章主要介紹了Spring與Dubbo搭建一個簡單的分布式詳情,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-08-08
  • SpringBoot中的WebSocketSession原理詳解

    SpringBoot中的WebSocketSession原理詳解

    這篇文章主要介紹了SpringBoot中的WebSocketSession原理詳解,傳統(tǒng)的?HTTP?協(xié)議是無法支持實時通信的,因為它是一種無狀態(tài)協(xié)議,每次請求都是獨立的,無法保持連接。為了解決這個問題,WebSocket?協(xié)議被引入,需要的朋友可以參考下
    2023-07-07
  • mybatis-plus配置控制臺打印完整帶參數(shù)SQL語句的實現(xiàn)

    mybatis-plus配置控制臺打印完整帶參數(shù)SQL語句的實現(xiàn)

    這篇文章主要介紹了mybatis-plus配置控制臺打印完整帶參數(shù)SQL語句,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • IDEA?一直scanning?files?to?index的四種完美解決方法(VIP典藏版)

    IDEA?一直scanning?files?to?index的四種完美解決方法(VIP典藏版)

    這篇文章主要介紹了IDEA?一直scanning?files?to?index的四種完美解決方法(VIP典藏版),推薦第四種方法,第四種方法摸索研究后得出,親測好用,需要的朋友參考下吧
    2023-10-10
  • 詳解SpringBoot中的統(tǒng)一功能處理的實現(xiàn)

    詳解SpringBoot中的統(tǒng)一功能處理的實現(xiàn)

    這篇文章主要為大家詳細(xì)介紹了SpringBoot如何實現(xiàn)統(tǒng)一功能處理,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)或工作有一定借鑒價值,需要的可以參考一下
    2023-01-01
  • Java簡單實現(xiàn)約瑟夫環(huán)算法示例

    Java簡單實現(xiàn)約瑟夫環(huán)算法示例

    這篇文章主要介紹了Java簡單實現(xiàn)約瑟夫環(huán)算法,簡單描述了約瑟夫環(huán)問題,并結(jié)合實例形式分析了Java實現(xiàn)約瑟夫環(huán)的具體操作技巧,需要的朋友可以參考下
    2017-09-09
  • 關(guān)于Unsupported Media Type的解決方案

    關(guān)于Unsupported Media Type的解決方案

    在Web開發(fā)中,415錯誤表示服務(wù)器無法處理請求附帶的媒體格式,本文介紹了導(dǎo)致HTTP 415錯誤的原因以及解決該問題的兩種方法,首先,415錯誤通常是由于客戶端請求的內(nèi)容類型與服務(wù)器期望的不匹配引起的,例如,服務(wù)器可能期望JSON格式的數(shù)據(jù)
    2024-10-10
  • java自定義攔截器用法實例

    java自定義攔截器用法實例

    這篇文章主要介紹了java自定義攔截器用法,實例分析了java自定義攔截器的實現(xiàn)與使用技巧,需要的朋友可以參考下
    2015-06-06

最新評論