本文給大家介紹一個(gè)比較好玩的PHP實(shí)現(xiàn),首先大家知道什么是Floyd三角形嗎?
不知道這個(gè)名詞也沒有關(guān)系,我們直接看下圖,就一目了然了:
Floyd三角形又叫弗洛伊德三角形是一系列的數(shù)字,如上圖所示,這些數(shù)字按順序分布在一系列的行上;第一行包含一個(gè)1,第二行包含2和3;下一行包含4、5和6…這些數(shù)字以這種模式無限延續(xù)產(chǎn)生一個(gè)直角三角形,并且數(shù)字以偶數(shù)間隔隔開。
下面我們就來編寫一個(gè)PHP程序,用來生成并顯示弗洛伊德三角形的前n行,也就是前幾行。
廢話不多說,代碼如下:
<?php $n = 6; echo "n = " . $n . "<br>"; $count = 1; for ($i = $n; $i > 0; $i--) { for ($j = $i; $j < $n + 1; $j++) { printf("%4s", $count); $count++; } echo "<br>"; }
生成結(jié)果是:
大家可以直接復(fù)制以上代碼在本地測試。
其實(shí)正確地編碼弗洛伊德三角形就是需要精通循環(huán)知識(shí),這里主要運(yùn)用到PHP中的for循環(huán),for 循環(huán)用于你預(yù)先知道腳本需要運(yùn)行的次數(shù)的情況,其語法是:
for (初始值; 條件; 增量){ 要執(zhí)行的代碼;}
參數(shù)分別表示:
初始值:主要是初始化一個(gè)變量值,用于設(shè)置一個(gè)計(jì)數(shù)器(但可以是任何在循環(huán)的開始被執(zhí)行一次的代碼)。 條件:循環(huán)執(zhí)行的限制條件。如果為 TRUE,則循環(huán)繼續(xù)。如果為 FALSE,則循環(huán)結(jié)束。 增量:主要用于遞增計(jì)數(shù)器(但可以是任何在循環(huán)的結(jié)束被執(zhí)行的代碼)。
關(guān)于for循環(huán)的詳細(xì)介紹,大家可以閱讀PHP手冊中《PHP For 循環(huán)》章節(jié)。
最后給大家推薦一個(gè)咱們平臺(tái)的最新免費(fèi)課程《從0開始進(jìn)入PHP的世界》~快來學(xué)習(xí)吧!