亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python中怎么實現一個等腰三角形

發布時間:2021-06-22 16:59:05 來源:億速云 閱讀:2701 作者:Leah 欄目:編程語言

今天就跟大家聊聊有關Python中怎么實現一個等腰三角形,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

1. 先用1,2,3,...的自然數拼一個足夠長的串

2. 用這個串填充三角形的三條邊。從上方頂點開始,逆時針填充。

比如,當三角形高度是8時:

       1

      2 1

     3   8

    4     1

   5       7

  6         1

 7           6

891011121314151

要求:空格一律用"."代替。

輸入格式:

一個正整數n(3<n<300),表示三角形的高度

輸出格式:

用數字填充的等腰三角形。

輸入樣例:

5

輸出樣例:

....1

...2.1

..3...2

.4.....1

567891011

輸入樣例:

10

輸出樣例:

.........1

........2.2

.......3...2

......4.....2

.....5.......1

....6.........2

...7...........0

..8.............2

.9...............9

1011121314151617181

解決方案

(1)確定三角形拼接的范圍:因為三角形是一個自然數拼接成的串,所以我們先確定不同層數對應到的自然數,觀察兩個案例(從上到左下到右再到上)可知:5層到13,10層到23(均未到最后一個自然數的最后一個值是因為第一層只有一個自然數)。所以n層則會從1拼接到2n+3。

(2)每一行第一個數字前的空格數:觀察題目給出的兩個輸出案例可以發現每一行第一個數前面的空格數為輸出三角形的高(n) - 第幾層。

(3)每一行的第一個數剛好和層數相等。

(4)第2到第n層兩個數之間的空格數:從第二層開始所以有i-2,每一層增加兩個即(i-2)* 2,又因起始數量為1,所以規律是(i-2)* 2 – 1。

(5)第2到第n層第二個數的確定:因為從上到下的第二個數字是拼接的串的逆序且第一層只有一個數字,所以第n層的第二個數字為拼接串的倒數第n個數字。

(6)最后一層即為拼接串的第n個數到倒數第n個數。

解決代碼

n = int(input())

lis1 = "".join(str(i) for i in range(1, 2 * n + 4))

print("." * (n - 1) + lis1[0])  # 第一層

for i in range(2, n):  # 第2到n-1層

    print("." * (n - i) + lis1[i-1] + "." * ((i - 2) * 2 + 1) + lis1[-i])

print(lis1[n - 1: -n+1])  # 最后一層

運行實例

Python中怎么實現一個等腰三角形

Python中怎么實現一個等腰三角形

看完上述內容,你們對Python中怎么實現一個等腰三角形有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

沙坪坝区| 阜宁县| 昭通市| 金湖县| 宁波市| 区。| 井冈山市| 珲春市| 多伦县| 营山县| 容城县| 沂水县| 四川省| 蓬溪县| 桃园县| 鄂尔多斯市| 自治县| 民丰县| 沁源县| 长宁区| 缙云县| 长乐市| 阳高县| 临洮县| 潜江市| 抚顺市| 伽师县| 西平县| 宣化县| 留坝县| 寻乌县| 兰州市| 鲁山县| 奎屯市| 全椒县| 新化县| 德昌县| 广西| 西乌珠穆沁旗| 礼泉县| 西藏|