Python Topics
- Python Intro
- Python String Methods
- Python Interview Programs
- Python Star Pattern
- Python Number Pattern
- Number Pattern 1
- Number Pattern 2
- Number Pattern 3
- Number Pattern 4
- Number Pattern 5
- Number Pattern 6
- Number Pattern 7
- Number Pattern 8
- Number Pattern 9
- Number Pattern 10
- Number Pattern 11
- Number Pattern 12
- Number Pattern 13
- Number Pattern 14
- Number Pattern 15
- Number Pattern 16
- Number Pattern 17
- Number Pattern 18
- Number Pattern 19
- Number Pattern 20
- Number Pattern 21
- Number Pattern 22
- Number Pattern 23
- Number Pattern 24
- Number Pattern 25
- Number Pattern 26
- Number Pattern 27
- Number Pattern 28
- Number Pattern 29
- Number Pattern 30
- Number Pattern 31
- Number Pattern 32
- Number Pattern 33
- Number Pattern 34
- Number Pattern 35
- Number Pattern 36
- Number Pattern 37
- Number Pattern 38
- Number Pattern 39
- Number Pattern 40
- Number Pattern 41
- Number Pattern 42
- Number Pattern 43
- Number Pattern 44
- Number Pattern 45
- Number Pattern 46
- Number Pattern 47
- Number Pattern 48
- Number Pattern 49
- Number Pattern 50
- Number Pattern 51
- Number Pattern 52
- Number Pattern 53
- Number Pattern 54
- Number Pattern 55
- Number Pattern 56
- Number Pattern 57
- Number Pattern 58
- Number Pattern 59
- Number Pattern 60
- Number Pattern 61
- Number Pattern 62
- Python Alphabet Pattern
Python Number Pattern 62
Photo Credit to CodeToFun
Python Number Pattern 62
Here`s a program that prints the above number pattern using Python Programming:
low = 0
high = 9
n = 1
arr = [[None]*10 for _ in range(10)]
for i in range(0, 5):
for j in range(low, high+1):
arr[i][j] = n
n += 1
for j in range(low+1, high+1):
arr[j][high] = n
n += 1
for j in range(high-1, low-1, -1):
arr[high][j] = n
n += 1
for j in range(high-1, low, -1):
arr[j][low] = n
n += 1
low += 1
high -= 1
print("Perfect Square Spiral\n")
for i in range(0, 10):
for j in range(0, 10):
print("%3d" % (arr[i][j]), end=" ")
print()
💻 Testing the Program
When you run the above program, it will print the following output:
1 2 3 4 5 6 7 8 9 10 36 37 38 39 40 41 42 43 44 11 35 64 65 66 67 68 69 70 45 12 34 63 84 85 86 87 88 71 46 13 33 62 83 96 97 98 89 72 47 14 32 61 82 95 100 99 90 73 48 15 31 60 81 94 93 92 91 74 49 16 30 59 80 79 78 77 76 75 50 17 29 58 57 56 55 54 53 52 51 18 28 27 26 25 24 23 22 21 20 19
🧠 How the Program Works
Let's break down the logic behind the code:
- Initialize variables:
- low = 0: This variable represents the starting index of the row and column for the current layer of the spiral.
- high = 9: This variable represents the ending index of the row and column for the current layer of the spiral.
- n = 1: This variable is used to assign values to the cells in the spiral pattern.
- arr = [[None]*10 for _ in range(10)]: This creates a 10x10 grid (list of lists) initialized with None.
- Nested loops for creating the spiral:
- The program uses a series of nested loops to fill in values in the grid in a spiral pattern.
- The outer loop (for i in range(0, 5)) runs five times, corresponding to five layers of the spiral pattern.
- For each layer, the program fills in values along the top row, right column, bottom row, and left column, incrementing the value of n each time.
- Filling values along the top row:
- for j in range(low, high+1): This loop fills values in the current layer's top row from left to right.
- arr[i][j] = n: Assigns the value of n to the cell at position (i, j) in the grid.
- Increment n.
- Filling values along the right column:
- for j in range(low+1, high+1): This loop fills values in the current layer's right column from top to bottom (excluding the top element).
- arr[j][high] = n: Assigns the value of n to the cell at position (j, high) in the grid.
- Increment n.
- Filling values along the bottom row:
- for j in range(high-1, low-1, -1): This loop fills values in the current layer's bottom row from right to left (excluding the rightmost element).
- arr[high][j] = n: Assigns the value of n to the cell at position (high, j) in the grid.
- Increment n.
- Filling values along the left column:
- for j in range(high-1, low, -1): This loop fills values in the current layer's left column from bottom to top (excluding the bottom element).
- arr[j][low] = n: Assigns the value of n to the cell at position (j, low) in the grid.
- Increment n.
- Update low and high:
- low += 1: Increment the starting index of the next layer.
- high -= 1: Decrement the ending index of the next layer.
- Print the spiral pattern:
- After filling in all the values, the program prints the generated spiral pattern by iterating through the arr grid.
- The nested loops iterate through each row and column, printing the values with a width of 3 characters ("%3d" % (arr[i][j])).
- Output:
- The program prints the perfect square spiral pattern of numbers in a 10x10 grid.
💯 Tips for Enhancement:
Explore the versatility of this pattern by adjusting its parameters. Whether you increase or decrease the size, tweak the spacing, or modify the characters used, each change opens up a world of possibilities, allowing you to customize and create your unique visual effects.
✔ Conclusion:
Creating visually appealing patterns is not only a fun endeavour but also a great way to enhance your programming or design skills. We hope this tutorial has inspired you to explore the world of creative coding. Share your creations with us, and let your imagination run wild!
🤗 Closing Call-to-Action:
We'd love to see your unique interpretations of the number pattern. Share your creations in the comments below, and don't hesitate to reach out if you have any questions or suggestions for future tutorials. Happy coding!
👨💻 Join our Community:
Author
For over eight years, I worked as a full-stack web developer. Now, I have chosen my profession as a full-time blogger at codetofun.com.
Buy me a coffee to make codetofun.com free for everyone.
Buy me a Coffee
If you have any doubts regarding this article (Python Number Pattern 62), please comment here. I will help you immediately.