w3resource

PHP for loop Exercises: Using nested for loop, construct a specific pattern

PHP for loop: Exercise-4 with Solution

Create a script to construct the following pattern, using a nested for loop.

* 
* * 
* * * 
* * * * 
* * * * * 
* * * * * 
* * * * 
* * * 
* * 
* 

Visual Presentation:

PHP for loop Exercises: Using nested for loop, construct a specific pattern

Sample Solution:

PHP Code:

<?php
// Define the number of rows
$n = 5;

// Loop to print the upper half of the diamond
for($i=1; $i<=$n; $i++)
{
    // Loop to print the spaces and stars for each row
    for($j=1; $j<=$i; $j++)
    {
        // Print a star surrounded by spaces
        echo ' * ';
    }
    // Move to the next line after printing each row
    echo '\n';
}

// Loop to print the lower half of the diamond
for($i=$n; $i>=1; $i--)
{
    // Loop to print the spaces and stars for each row
    for($j=1; $j<=$i; $j++)
    {
        // Print a star surrounded by spaces
        echo ' * ';
    }
    // Move to the next line after printing each row
    echo '\n ';
}
?>

Output:

 *                                                          
 *  *                                                       
 *  *  *                                                    
 *  *  *  *                                                 
 *  *  *  *  *                                              
 *  *  *  *  *                                              
 *  *  *  *                                                 
 *  *  *                                                    
 *  *                                                       
 * 

Explanation:

In the exercise above,

  • The code starts with a PHP opening tag <?php.
  • It defines a variable '$n' and sets its value to 5, which represents the number of rows in the diamond pattern.
  • The code then enters a loop to print the upper half of the diamond. This loop iterates from 1 to the value of '$n'.
  • Inside the loop, there's another loop responsible for printing the spaces and stars for each row. It iterates from 1 to the current row number.
  • Within this inner loop, a star surrounded by spaces (' * ') is echoed for each iteration.
  • After printing all the spaces and stars for a row, a newline character (\n) is echoed to move to the next line.
  • Once the upper half of the diamond is printed, the code enters another loop to print the lower half. This loop iterates from the value of '$n' down to 1.
  • Inside this loop, the same process repeats: printing spaces and stars for each row, followed by moving to the next line.
  • However, notice that extra space is printed after each line in the lower half of the diamond (echo '\n ';). This might be a typo or unintended behavior, as it seems to introduce additional space at the end of each line.
  • Finally, PHP code ends with a closing tag ?>.

Flowchart :

Flowchart: Using nested for loop, construct a specific pattern

PHP Code Editor:

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Create a script to construct the specific pattern, using nested for loop.
Next: Write a program to calculate and print the factorial of a number using a for loop. The factorial of a number is the product of all integers up to and including that number, so the factorial of 4 is 4*3*2*1= 24.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Become a Patron!

Follow us on Facebook and Twitter for latest update.

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://w3resource.com/php-exercises/php-for-loop-exercise-4.php