我是编程新手,正在从事这个项目,在那里我编写了一个代码,该代码读取一个整数,并使用星号,一个填充的空心正方形显示并彼此相邻显示,但我遇到了一个问题
这些是我的代码,我知道它们是分开的,但是我想将它们合并以并排打印图案。
integer=int(input("Enter an integer:"))
for i in range(integer):
for j in range(integer+integer):
print("*",end="")
print()
print("*"*integer)
for i in range(integer-2):
print("*"+" "*(integer-2)+"*")
print("*"*integer)
预期输出:
***** *****
***** * *
***** * *
***** * *
***** *****
实际输出:
*****
*****
*****
*****
*****
*****
* *
* *
* *
*****
答案 0 :(得分:0)
你在这里。
integer=int(input("Enter an integer:"))
print("*"*integer + " " + "*"*integer)
for i in range(integer-2):
print("*"*integer + " " + "*" + " "*(integer-2) + "*")
print("*"*integer + " " + "*"*integer)
输出:
Enter an integer: 5
***** *****
***** * *
***** * *
***** * *
***** *****
或者,这是一个更容易理解的东西:
integer=int(input("Enter an integer:"))
full = "*"*integer
cap = full + " " + full
hollow = "*" + " "*(integer-2) + "*"
print(cap)
for i in range(integer-2):
print(full + " " + hollow)
print(cap)
产生相同的输出
答案 1 :(得分:0)
此代码通过分隔两条唯一的行来工作:
integer=int(input("Enter an integer:"))
print("*"*integer + " " + "*"*integer)
for i in range(integer-2):
print("*"*integer + " " + "*" + " "*(integer-2) + "*")
print("*"*integer + " " + "*"*integer)