fork download
  1. def generate_pattern(n):
  2. # Handle negative numbers by taking absolute value
  3. n = abs(n)
  4.  
  5. # Ensure n is an odd number greater than or equal to 3
  6. if n < 3 or n % 2 == 0:
  7. print("The input must be an odd number greater than or equal to 3.")
  8. return
  9.  
  10. # Initialize the matrix of size n x n
  11. matrix = [["e" for _ in range(n)] for _ in range(n)]
  12.  
  13. # Fill the vertical line (center column) with '*'
  14. center = n // 2
  15. for i in range(n):
  16. matrix[i][center] = "*"
  17.  
  18. # Fill the horizontal line (center row) with 'e'
  19. for i in range(n):
  20. matrix[center][i] = "e"
  21.  
  22. # Print the matrix
  23. for row in matrix:
  24. print(" ".join(row))
  25.  
  26. # Test cases
  27. generate_pattern(5)
  28. print()
  29. generate_pattern(7)
  30. print()
  31. generate_pattern(-9)
  32.  
Success #stdin #stdout 0.01s 7216KB
stdin
Standard input is empty
stdout
e e * e e
e e * e e
e e e e e
e e * e e
e e * e e
()
e e e * e e e
e e e * e e e
e e e * e e e
e e e e e e e
e e e * e e e
e e e * e e e
e e e * e e e
()
e e e e * e e e e
e e e e * e e e e
e e e e * e e e e
e e e e * e e e e
e e e e e e e e e
e e e e * e e e e
e e e e * e e e e
e e e e * e e e e
e e e e * e e e e