This Python program reads an integer n between 1 and 80 and prints a square pattern of size n × n using asterisks (*).
The output highlights three specific parts of the square:
- The last row
- The last column
- All elements on and below the secondary diagonal (i + j ≥ n - 1)
# Read n from user
n = int(input("Enter a number between 1 and 80: "))
# Validate input
if 1 <= n <= 80:
for i in range(n):
row = ''
for j in range(n):
if i == n - 1 or j == n - 1 or i + j >= n - 1:
row += '* '
else:
row += ' '
print(row)
else:
print("The number must be between 1 and 80.")
* * * * *
* * * *
* * *
* *
*
- The user inputs a number n
- The program checks that n is between 1 and 80
- A nested loop prints each row and column
- A star is printed if the position is on:
— The last row (i == n - 1)
— The last column (j == n - 1)
— On or below the secondary diagonal (i + j ≥ n - 1)
- Otherwise, spaces are printed to maintain alignment