最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

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

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

import java.util.Scanner;
public class test{
	public static void main(String[] args) {
		System.out.println("請(qǐng)輸入金字塔的層數(shù)");
		Scanner sc = new Scanner(System.in);
		int towerLevel = sc.nextInt();
		/*
			輸入層數(shù)為5
				*			1層 1個(gè)*		1=1*2-1  空格數(shù)4
			   ***			2層 3個(gè)*		3=2*2-1	 空格數(shù)3
			  *****			3層	5個(gè)*		5=3*2-1	 空格數(shù)2
			 *******	 	4層	7個(gè)*		7=4*2-1  空格數(shù)1
			*********		5層 9個(gè)*   	    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)前要打印*在本行中的位置,每行的第一個(gè)位置是 j = 1, 最后一個(gè)位置是 j=i*2-1
					System.out.print("*");
			}
			System.out.println();
		}
	}
}

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

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

根據(jù)鏤空金字塔的圖形來(lái)看,如果當(dāng)前層不在最底層,其余層都是只在本行的第一個(gè)位置和最后一個(gè)位置打印了*,其余位置都為空格,所以打印*的語(yǔ)句前可以加一個(gè)if判斷條件:當(dāng)前位置是當(dāng)前層的第一個(gè) 或者 當(dāng)前位置是當(dāng)前層的最后一個(gè) 或者 當(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("請(qǐng)輸入金字塔的層數(shù)");
		Scanner sc = new Scanner(System.in);
		int towerLevel = sc.nextInt();
		/*
			輸入層數(shù)為5
				*			1層 1個(gè)*		1=1*2-1  空格數(shù)4
			   ***			2層 3個(gè)*		3=2*2-1	 空格數(shù)3
			  *****			3層	5個(gè)*		5=3*2-1	 空格數(shù)2
			 *******	 	4層	7個(gè)*		7=4*2-1  空格數(shù)1
			*********		5層 9個(gè)*   	    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)前要打印*在本行中的位置,每行的第一個(gè)位置是 j = 1, 最后一個(gè)位置是 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輸出鏤空金字塔實(shí)現(xiàn)案例的文章就介紹到這了,更多相關(guān)java鏤空金字塔內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SpringBoot實(shí)現(xiàn)圖片識(shí)別文字的四種方式小結(jié)

    SpringBoot實(shí)現(xiàn)圖片識(shí)別文字的四種方式小結(jié)

    本文主要介紹了SpringBoot實(shí)現(xiàn)圖片識(shí)別文字的四種方式,包括Tess4J,百度智能云,阿里云,騰訊云這四種,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-02-02
  • Java編程二項(xiàng)分布的遞歸和非遞歸實(shí)現(xiàn)代碼實(shí)例

    Java編程二項(xiàng)分布的遞歸和非遞歸實(shí)現(xiàn)代碼實(shí)例

    這篇文章主要介紹了Java編程二項(xiàng)分布的遞歸和非遞歸實(shí)現(xiàn)代碼實(shí)例,小編覺(jué)得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-01-01
  • java中MVC模式與三層架構(gòu)

    java中MVC模式與三層架構(gòu)

    這篇文章主要讓我們理解MVC模式和三層架構(gòu)的基礎(chǔ)知識(shí),有興趣的同學(xué)可以閱讀,借鑒參考一下
    2023-03-03
  • Java計(jì)時(shí)新姿勢(shì)StopWatch的使用方法詳解

    Java計(jì)時(shí)新姿勢(shì)StopWatch的使用方法詳解

    這篇文章主要給大家介紹了關(guān)于Java計(jì)時(shí)新姿勢(shì)StopWatch的相關(guān)資料,以及java 中使用StopWatch來(lái)計(jì)算時(shí)間差的方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2022-01-01
  • Java計(jì)算交集,差集,并集的方法示例

    Java計(jì)算交集,差集,并集的方法示例

    這篇文章主要介紹了Java計(jì)算交集,差集,并集的方法,結(jié)合實(shí)例形式簡(jiǎn)單分析了java集合運(yùn)算的簡(jiǎn)單操作技巧,需要的朋友可以參考下
    2017-10-10
  • Java-IO流實(shí)驗(yàn)

    Java-IO流實(shí)驗(yàn)

    流是一種抽象概念,它代表了數(shù)據(jù)的無(wú)結(jié)構(gòu)化傳遞。。用來(lái)進(jìn)行輸入輸出操作的流就稱為IO流。換句話說(shuō),IO流就是以流的方式進(jìn)行輸入輸出,希望能給您帶來(lái)幫助
    2021-06-06
  • Spring Boot 集成Shiro的多realm配置過(guò)程

    Spring Boot 集成Shiro的多realm配置過(guò)程

    這篇文章主要介紹了Spring Boot 集成Shiro的多realm配置,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-10-10
  • SpringBoot整合mybatis常見(jiàn)問(wèn)題(小結(jié))

    SpringBoot整合mybatis常見(jiàn)問(wèn)題(小結(jié))

    這篇文章主要介紹了SpringBoot整合mybatis常見(jiàn)問(wèn)題(小結(jié)),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • JAVA通過(guò)HttpClient發(fā)送HTTP請(qǐng)求的方法示例

    JAVA通過(guò)HttpClient發(fā)送HTTP請(qǐng)求的方法示例

    本篇文章主要介紹了JAVA通過(guò)HttpClient發(fā)送HTTP請(qǐng)求的方法示例,詳細(xì)的介紹了HttpClient使用,具有一定的參考價(jià)值,有興趣的可以了解一下
    2017-09-09
  • 使用Java實(shí)現(xiàn)先查詢緩存再查詢數(shù)據(jù)庫(kù)

    使用Java實(shí)現(xiàn)先查詢緩存再查詢數(shù)據(jù)庫(kù)

    這篇文章主要介紹了使用Java實(shí)現(xiàn)先查詢緩存再查詢數(shù)據(jù)庫(kù),文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-07-07

最新評(píng)論

乐昌市| 江华| 邳州市| 淮滨县| 鹤岗市| 武邑县| 剑阁县| 福建省| 华坪县| 明水县| 松原市| 张家港市| 常宁市| 车致| 保定市| 浠水县| 威信县| 遂溪县| 凯里市| 独山县| 娄底市| 瓦房店市| 台前县| 凌云县| 金昌市| 修武县| 嘉义市| 伽师县| 姜堰市| 达孜县| 罗江县| 万年县| 怀宁县| 海林市| 农安县| 广昌县| 盐津县| 斗六市| 天全县| 报价| 易门县|