我真的不確定如何在標題中解釋我的問題;圖形將是最好的。控制檯在中間打印一個縮放方塊
我已經把這個問題當作了在課堂上玩耍的東西,到目前爲止只有一個人設法實現了一個解決方案,而且這是一個非常複雜的問題。 雖然我已經和他說過了(我們可以管理的最好的,他的英語不是很好),但我想提出自己的解決方案,但是我需要一些指導,或者至少有新的想法..
問題是這樣的:
n=5
0 3 5 5 3 0
3 5 5 3
5 5
5 5
3 5 5 3
0 3 5 5 3 0
爲 'N' 時的輸入值。
到目前爲止,我已經得到了這個;
#!/usr/bin/env python3
while True:
n = int(input("Enter a size : "))
z = "+"
for i in range(n*2): # ROWS
for j in range(n*2): # COLUMNS
if i == 0 or j == 0 or i == n*2 - 1 or j == n*2 - 1: # OUTLINE
print(z, end=" ")
elif j < n-i: # TOP LEFT
print(z, end=" ")
elif j >= n+i or i >= n+j: # TOP RIGHT + BOTTOM LEFT
print(z, end=" ")
elif j >= n*2-i+n-1 and i >= n*2-j+n-1: # BOTTOM RIGHT
print(z, end=" ")
else:
print(" ", end=" ")
print()
Whitch output this;
Enter a size : 5
+ + + + + + + + + +
+ + + + + + + +
+ + + + + +
+ + + +
+ +
+ +
+ + + +
+ + + + + +
+ + + + + + + +
+ + + + + + + + + +
下一步是用我猜測的方框中的位置替換「z」。但我不知道從哪裏開始(而我的數學是有點生疏)
您的示例和輸出對於'n = 5'的輸入不一致。這對Stack Overflow來說也不太適合。你到目前爲止嘗試了什麼(替換'z')?數字遵循什麼樣的模式? – grovesNL 2015-04-02 02:29:19
對不起,我不確定在哪裏問。我知道例子不匹配。 – 2015-04-02 03:22:44