Python Exercise: N x N square consisting only of the integer N
Python Basic - 1: Exercise-149 with Solution
Write a Python program that takes a positive integer and creates an N x N square filled with the integer N. Display the N x N square.
Sample Data:
(2) -> [[2, 2], [2, 2]]
(5) -> [[5, 5, 5, 5, 5], [5, 5, 5, 5, 5], [5, 5, 5, 5, 5], [5, 5, 5, 5, 5], [5, 5, 5, 5, 5]]
(-6) -> []
Sample Solution-1:
Python Code:
# Function to create a 2D list filled with the value N.
def test(N):
# Initialize an empty list to store the rows.
result = []
# Iterate N times to create N rows.
for i in range(N):
# Append a row with N elements, each having the value N.
result.append([N] * N)
# Return the resulting 2D list.
return result
# Take user input for the value of N.
N = int(input("Input an integer: "))
# Call the test function with the user-input value of N and print the result.
print(test(N))
Sample Output:
Input an integer : 4 [[4, 4, 4, 4], [4, 4, 4, 4], [4, 4, 4, 4], [4, 4, 4, 4]] Input an integer : -4 []
Explanation:
Here is a breakdown of the above Python code:
- Function definition:
- def test(N):: Defines a function named "test()" that takes an integer 'N' as input.
- Initializing an empty list:
- result = []: Initializes an empty list named 'result' to store the rows of the 2D list.
- Loop to create rows:
- for i in range(N):: Iterates 'N' times to create 'N' rows.
- Appending rows:
- result.append([N] * N): Appends a row to the 'result' list. Each row is a list with N elements, and each element has the value 'N'.
- Return result:
- return result: Returns the resulting 2D list.
- User input:
- N = int(input("Input an integer: ")): Takes user input for the value of 'N'.
- Function Call and Print:
- print(test(N)): Calls the "test()" function with the user-input value of 'N' and prints the resulting 2D list.
Flowchart:
Sample Solution-2:
Python Code:
# Function to create a 2D list filled with the value N.
def test(N):
# Create a 2D list with N rows, where each row is a list with N elements, each having the value N.
result = [[N] * N] * N
# Return the resulting 2D list.
return result
# Take user input for the value of N.
N = int(input("Input an integer: "))
# Call the test function with the user-input value of N and print the result.
print(test(N))
Sample Output:
Input an integer : 4 [[4, 4, 4, 4], [4, 4, 4, 4], [4, 4, 4, 4], [4, 4, 4, 4]]
Explanation:
Here is a breakdown of the above Python code:
- Function definition:
- def test(N):: Defines a function named "test()" that takes an integer 'N' as input.
- Creating a 2D List:
- result = [[N] N] N: Creates a 2D list with 'N' rows. Each row is a list with 'N' elements, and each element has the value 'N'.
- Note: This method of creating a 2D list using [...]*N can have unexpected behavior due to the way lists are referenced in Python. It creates references to the same inner list, leading to issues if you modify one row.
- Return result:
- return result: Returns the resulting 2D list.
- User input:
- N = int(input("Input an integer: ")): Takes user input for the value of 'N'.
- Function call and print:
- print(test(N)): Calls the "test()" function with the user-input value of 'N' and prints the resulting 2D list.
Flowchart:
Python Code Editor:
Have another way to solve this solution? Contribute your code (and comments) through Disqus.
Previous: Check the numbers that are higher than the previous
Next: Iterated Cube Root.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.
https://198.211.115.131/python-exercises/basic/python-basic-1-exercise-149.php
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics