Skip to content

3 图形输出 3题

sy65: 等腰直角三角形 简单

https://sunnywhy.com/sfbj/3/3/65

绘制一个使用符号"*"进行填充的实心等腰直角三角形,其中直角顶点在左下角,两条直角边的长度均为n(直角边的长度指*的个数)。

输入描述

一个正整数n(2n50)。

输出描述

输出一个实心的等腰直角三角形。注意行末不要有多余的空格。

样例1

输入

3

输出

*
**
***

样例2

输入

5

输出

*
**
***
****
*****
python
n = int(input())
for i in range(n):
    print('*'*(i+1))

sy66: 等腰直角三角形II 简单

https://sunnywhy.com/sfbj/3/3/66

绘制一个空心的等腰直角三角形(使用符号"*"来表示三角形的边,三角形内部用空格填充),其中直角顶点在左下角,两条直角边的长度均为(直角边的长度指*的个数)。

输入描述

一个正整数n(2n100)。

输出描述

输出一个空心的等腰直角三角形。注意行末不要有多余的空格。

样例1

输入

3

输出

*
**
***

样例2

输入

5

输出

*
**
* *
*  *
*****
python
n = int(input())
print('*')
for i in range(1, n-1):
    print('*' + ' ' * (i - 1) + '*')

print('*' * n)

sy67: 画X 简单

https://sunnywhy.com/sfbj/3/3/67

绘制一个X(用*号表示线),其中长、宽、对角线的长度(即可容纳的*号个数)均为同一个奇数n。

输入描述

一个正奇数n(3n99)。

输出描述

输出一个X。注意行末不要有多余的空格。

样例1

输入

3

输出

* *
 *
* *

样例2

输入

5

输出

*   *
 * *
  *
 * *
*   *

注意行末不要有多余的空格。

python
n = int(input())
mx = [[' ']*n for _ in range(n)]
for r in range(n):
    mx[r][r] = '*'
    mx[r][~r] = '*'

for row in mx:
    print(''.join(row).rstrip())