w3resource

PHP for loop Exercises: Print alphabet pattern S


31. Alphabet Pattern 'S'

Write a PHP program to print alphabet pattern 'S'.

Visual Presentation:

PHP for loop Exercises: Print alphabet pattern S

Sample Solution:

PHP Code:

 <?php
// Loop for rows
for ($row=0; $row<7; $row++)
{
    // Loop for columns
    for ($column=0; $column<=7; $column++)
    {
        // Condition to determine whether to print '*' or ' '
        if ((($row == 0 or $row == 3 or $row == 6) and $column > 1 and $column < 5) or ($column == 1 and ($row == 1 or $row == 2 or $row == 6)) or ($column == 5 and ($row == 0 or $row == 4 or $row == 5)))
            echo "*";    // Print '*' if condition is met
        else  
            echo " ";    // Print ' ' if condition is not met
    }        
    echo "\n";    // Move to the next line after each row is printed
}
?>

Sample Output:

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

Explanation:

In the exercise above,

  • The code starts with a PHP opening tag <?php.
  • It utilizes a nested loop structure to iterate over rows and columns to create a specific pattern.
  • The outer loop (for ($row=0; $row<7; $row++)) controls the rows of the pattern, iterating from 0 to 6.
  • Inside the outer loop, there's another loop (for ($column=0; $column<=7; $column++)) that controls the columns, iterating from 0 to 7.
  • Within the inner loop, there's a conditional statement that determines whether to print an asterisk ('*') or a space ( ) based on the position of the current row and column indices.
  • The condition checks multiple cases:
    • If the row is at indices 0, 3, or 6 and the column is between indices 2 and 4.
    • If the column is at index 1 and the row is at indices 1, 2, or 6.
    • If the column is at index 5 and the row is at indices 0, 4, or 5.
  • If any of these conditions are met, an asterisk ('*') is echoed. Otherwise, a space ( ) is echoed.
  • After printing each row, the code moves to the next line by echoing a newline character ('\n').
  • Once all rows and columns are printed according to the pattern, the PHP code ends with a closing PHP tag ?>.

Flowchart :

Flowchart: Print alphabet pattern S

For more Practice: Solve these Related Problems:

  • Write a PHP script to generate the letter 'S' using loops, ensuring the top and bottom curves are symmetric.
  • Write a PHP function to create an 'S' pattern with dynamic curvature, adjusting for different heights.
  • Write a PHP program to print an 'S' where the upper and lower parts are separated by a middle transition line.
  • Write a PHP script to output an 'S' pattern that uses nested loops to manage both space and star placements effectively.

Go to:


PREV : Alphabet Pattern 'R'.
NEXT : Alphabet Pattern 'T'.

PHP Code Editor:



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

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.