91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

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

女性| 天祝| 北辰区| 大关县| 桐梓县| 广安市| 喜德县| 张家川| 武威市| 江西省| 澄城县| 天镇县| 宁都县| 太湖县| 武陟县| 施秉县| 苍溪县| 青川县| 德兴市| 雅江县| 湛江市| 吉林省| 花莲县| 会宁县| 永昌县| 玛多县| 招远市| 襄垣县| 长沙市| 赤城县| 漯河市| 文山县| 土默特左旗| 巴林右旗| 麦盖提县| 博白县| 肃宁县| 虞城县| 桐梓县| 甘德县| 峨山|