Intermediate · Nested loops · 119 of 264
Hollow square
Print an n by n square of # with only the border filled; the inside is spaces.
Input: n (at least 2). Output: n lines of n characters.
Examples
Input
4
Output
#### # # # # ####
Input
2
Output
## ##
One more test checks other inputs when you press Check.
Stuck? The idea behind nested loops
A loop inside a loop: for each turn of the outer loop, the inner one runs all the way through. Good for rows and columns.
print(..., end="") stays on the same line; an empty print() after the inner loop moves to the next row.
for row in range(1, 4):
line = []
for col in range(1, 4):
line.append(str(row * col))
print(" ".join(line))Watch for: print(x, end=" ") leaves a space at the end of every line, and the tests see it. Build each line as a list and print " ".join(line): spaces only between.