用python输入数字打印图形 样例输入:5 样例输出: ***** * * * * * * *****
时间: 2023-08-29 17:05:30 浏览: 91
下面是一个简单的实现,可以打印出指定大小的矩形:
```python
n = int(input())
for i in range(n):
for j in range(n):
if i == 0 or i == n-1 or j == 0 or j == n-1:
print("*", end="")
else:
print(" ", end="")
print()
```
如果要打印出上述的样例输出,可以稍微修改一下:
```python
n = 5
for i in range(n):
for j in range(n):
if i == 0 or i == n-1 or j == 0 or j == n-1:
print("*", end="")
else:
print(" ", end="")
print()
```
输出:
```
*****
* *
* *
* *
*****
```
相关问题
用python输入函数打印图形 样例输入:5 样例输出: ***** * * * * * * *****
以下是一个实现样例输出的函数:
```python
def print_shape(n):
print('*' * (n+1))
for i in range(n-1):
print('*' + ' ' * n + '*')
print('*' * (n+1))
```
调用 `print_shape(5)` 将输出:
```
*****
* *
* *
* *
*****
```
编程输入字符X,输出由字符X构成的以下样式的字符图形。 输入样例: * 输出样例: * *** ***** ******* ***** *** * 输入样例: A 输出样例: A AAA AAAAA AAAAAAA AAAAA AAA A 代码长度限制 16 KB 时间限制 400 ms 内存限制 64 MB
以下是 Python3 的代码实现:
```python
ch = input() # 输入字符
n = ord(ch) - ord('A') + 1 # 计算字符在字母表中的位置
for i in range(n):
# 输出每一行的字符
for j in range(2 * (n - i - 1)):
print(' ', end='')
for j in range(2 * i + 1):
print(ch, end='')
print()
for i in range(n - 2, -1, -1):
# 输出每一行的字符
for j in range(2 * (n - i - 1)):
print(' ', end='')
for j in range(2 * i + 1):
print(ch, end='')
print()
```
首先读入一个字符,然后计算出该字符在字母表中的位置(例如,如果输入的是'A',则位置为1)。接下来分别输出上半部分和下半部分的字符图形,每一行分别输出空格和字符。具体来说,每一行的空格数量为 $2\times(n-i-1)$,字符数量为 $2\times i+1$,其中 $i$ 为当前行的行号。上半部分的行号从 $0$ 到 $n-1$,下半部分的行号从 $n-2$ 到 $0$。
阅读全文