Given a positive integer n print matrix containing an X as in the example below
Example:
Input: n = 5 Output: x---x -x-x- --x-- -x-x- x---x Explanation: Each line contains exactly n = 5 characters and two 'x's. Each diagonal contains 'x'
Hints:
Notice that on each line there will be exactly two
x and the other characters are all -. The only exception is the middle line which will have only one x.
How can we use this info?
We can print the matrix line by line. For each line we need to know the two columns where we should print
x.
How can we know these two columns for every line?
We'll store the columns' indices in two variables
firstX and secondX, initially equal to 1 and n respectively for the first line. How should these variables change from line to line?
firstX should get incremented and secondX should get decremented. Now for each line, you now the 'special' columns. How will you print that line?
We'll use a
for loop to iterate through every column index from 1 to n. What should we do inside the loop?
We should use an
if - else statement and check if the current index is firstX or secondX and if so, print x. Otherwise, print -.
Free plan: 30 tutor messages. Premium is unlimited.
Saved
Ctrl + Enter to check