打印Floyd的三角形的Swift程序
Floyd的三角形是一個直角三角形,以Rober Floyd命名。愛掏網 - it200.com它是由從左上角開始的自然數創建的,然后在指定的行中填充連續的數字。愛掏網 - it200.com
示例演示
輸入
4
輸出
1
2 3
4 5 6
7 8 9 10
這里,弗洛伊德的三角形尺寸為4。愛掏網 - it200.com因此它會打印出4行的弗洛伊德三角形。愛掏網 - it200.com
在Swift中,我們可以使用以下方法打印出弗洛伊德三角形:
- 使用for?in循環
-
使用while循環
-
使用遞歸函數
算法
步驟1 - 創建一個用戶定義的函數,該函數以總行數作為參數。愛掏網 - it200.com
步驟2 - 這個函數包含一個”myNum”變量,它包含三角形中的起始數字。愛掏網 - it200.com
步驟3 - 然后它運行一個嵌套循環來顯示弗洛伊德三角形的所有行和列。愛掏網 - it200.com
步驟4 - 定義一個變量來存儲弗洛伊德三角形的尺寸。愛掏網 - it200.com
步驟5 - 調用該函數并將尺寸作為參數傳遞。愛掏網 - it200.com
步驟6 - 顯示輸出。愛掏網 - it200.com
方法1:使用for?in循環打印弗洛伊德三角形
在這個方法中,我們將使用for?in循環來顯示弗洛伊德三角形。愛掏網 - it200.com這里我們運行兩個for?in循環來顯示弗洛伊德三角形的行和列。愛掏網 - it200.com
例子
在下面的Swift程序中,我們將打印弗洛伊德三角形。愛掏網 - it200.com所以為了實現這個目的,我們將創建一個函數,它只接受一個參數,即三角形的尺寸。愛掏網 - it200.com這個函數有一個名為myNum的變量,它跟蹤要在三角形中打印的數字,然后運行嵌套的for?in循環來顯示弗洛伊德三角形的行。愛掏網 - it200.com
import Foundation
import Glibc
// Function to print Floyd's Triangle
func displayFloydsTriangle(totalRows: Int) {
var myNum = 1
for x in 1...totalRows {
for _ in 1...x {
print(myNum, terminator: " ")
myNum += 1
}
// Move to the next line
print()
}
}
let sizeOfRows = 6
// Calling function
displayFloydsTriangle(totalRows: sizeOfRows)
輸出
1
2 3
4 5 6
7 8 9 10
11 12 13 14 15
16 17 18 19 20 21
方法2:使用while循環打印弗洛伊德三角形
在這種方法中,我們將使用while循環來顯示弗洛伊德三角形。愛掏網 - it200.com這里我們使用兩個while循環來顯示弗洛伊德三角形的行和列。愛掏網 - it200.com
示例
在下面的Swift程序中,我們將打印弗洛伊德三角形。愛掏網 - it200.com為此,我們將創建一個函數,它只接受一個參數,即三角形的大小。愛掏網 - it200.com該函數具有myNum變量,用于跟蹤要在三角形中打印的數字,以及cRow變量,用于跟蹤當前行。愛掏網 - it200.com然后,它使用嵌套的while循環來顯示形成弗洛伊德三角形的行和列中的數字。愛掏網 - it200.com
import Foundation
import Glibc
// Function to print Floyd's Triangle
func displayFloydsTriangle(totalRows: Int) {
var myNum = 1
var cRow = 1
while cRow <= totalRows {
var col = 1
while col <= cRow {
print(myNum, terminator: " ")
myNum += 1
col += 1
}
print()
cRow += 1
}
}
let sizeOfRows = 7
// Calling function
displayFloydsTriangle(totalRows: sizeOfRows)
輸出結果
1
2 3
4 5 6
7 8 9 10
11 12 13 14 15
16 17 18 19 20 21
22 23 24 25 26 27 28
第三種方法:使用遞歸進行Floyd三角形的打印
在這種方法中,我們將使用遞歸來顯示Floyd三角形。愛掏網 - it200.com遞歸是一種函數調用自身來完成任務的過程。愛掏網 - it200.com在這里,我們將遞歸調用該函數來顯示Floyd三角形。愛掏網 - it200.com
例子
在下面的Swift程序中,我們將使用遞歸打印Floyd三角形。愛掏網 - it200.com為此,我們將創建一個名為displayFloydsTriangle()的遞歸函數。愛掏網 - it200.com它接受三個參數:總行數、起始數字和當前行。愛掏網 - it200.com它使用for-in循環打印每一行,然后使用更新的參數調用自身以打印下一行。愛掏網 - it200.com最后,我們使用指定的行數調用fTriangle()函數來開始打印Floyd三角形。愛掏網 - it200.com
import Foundation
import Glibc
// Function to print Floyds triangle
func displayFloydsTriangle(totalrows: Int, num: Int, cRow: Int) {
var x = num
if cRow > totalrows {
return
}
for _ in 1...cRow {
print(x, terminator: " ")
x += 1
}
print()
// Calling function recursively
displayFloydsTriangle(totalrows: totalrows, num: x, cRow: cRow + 1)
}
func fTriangle(rows: Int) {
displayFloydsTriangle(totalrows:rows, num: 1, cRow: 1)
}
let triangleSize = 7
fTriangle(rows: triangleSize)
輸出
1
2 3
4 5 6
7 8 9 10
11 12 13 14 15
16 17 18 19 20 21
22 23 24 25 26 27 28
真實用途
Floyd三角形的真實用途是:
- 用于教育目的,教授嵌套循環、模式打印、遞歸等。愛掏網 - it200.com
-
也用于分析數學和計算機科學中的模式。愛掏網 - it200.com
-
也用于數學和謎題中。愛掏網 - it200.com
-
也用于藝術和設計。愛掏網 - it200.com
結論
這就是我們如何打印Floyd三角形。愛掏網 - it200.com它是理解嵌套循環(如for-in循環、while循環)和遞歸工作方式的好方法。愛掏網 - it200.com我們還可以使用循環和遞歸創建一個反向的Floyd三角形。愛掏網 - it200.com此外,使用上述方法,我們還可以通過對代碼進行一些小改動來創建任何類型的Floyd三角形,如星形三角形等。愛掏網 - it200.com