Print the pattern by using one loop | Set 2 (Using Continue Statement)
Last Updated :
16 Feb, 2023
Improve
Given a number n, print triangular pattern. We are allowed to use only one loop.
Example:
Input: 7 Output: * * * * * * * * * * * * * * * * * * * * * * * * * * * *
We use single for-loop and in the loop we maintain two variables for line count and current star count. If current star count is less than current line count, we print a star and continue. Else we print a new line and increment line count.
// C++ program to print a pattern using single
// loop and continue statement
#include<bits/stdc++.h>
using namespace std;
// printPattern function to print pattern
void printPattern(int n)
{
// Variable initialization
int line_no = 1; // Line count
// Loop to print desired pattern
int curr_star = 0;
for (int line_no = 1; line_no <= n; )
{
// If current star count is less than
// current line number
if (curr_star < line_no)
{
cout << "* ";
curr_star++;
continue;
}
// Else time to print a new line
if (curr_star == line_no)
{
cout << "\n";
line_no++;
curr_star = 0;
}
}
}
// Driver code
int main()
{
printPattern(7);
return 0;
}
// C++ program to print a pattern using single
// loop and continue statement
using namespace std;
// printPattern function to print pattern
void printPattern(int n)
{
// Variable initialization
int line_no = 1; // Line count
// Loop to print desired pattern
int curr_star = 0;
for (int line_no = 1; line_no <= n; )
{
// If current star count is less than
// current line number
if (curr_star < line_no)
{
cout << "* ";
curr_star++;
continue;
}
// Else time to print a new line
if (curr_star == line_no)
{
cout << "\n";
line_no++;
curr_star = 0;
}
}
}
// Driver code
int main()
{
printPattern(7);
return 0;
}
// Java program to print a pattern using single
// loop and continue statement
import java.io.*;
class GFG {
// printPattern function to print pattern
static void printPattern(int n)
{
// Variable initialization
// Line count
int line_no = 1;
// Loop to print desired pattern
int curr_star = 0;
for ( line_no = 1; line_no <= n;)
{
// If current star count is less than
// current line number
if (curr_star < line_no)
{
System.out.print ( "* ");
curr_star++;
continue;
}
// Else time to print a new line
if (curr_star == line_no)
{
System.out.println ("");
line_no++;
curr_star = 0;
}
}
}
// Driver code
public static void main (String[] args)
{
printPattern(7);
}
}
// This code is contributed by vt_m
# Python 3 program to print
# a pattern using single
# loop and continue statement
# printPattern function
# to print pattern
def printPattern(n):
# Variable initialization
line_no = 1 # Line count
# Loop to print
# desired pattern
curr_star = 0
line_no = 1
while(line_no <= n ):
# If current star count
# is less than current
# line number
if (curr_star < line_no):
print("* ", end = "")
curr_star += 1
continue
# Else time to print
# a new line
if (curr_star == line_no):
print("")
line_no += 1
curr_star = 0
# Driver code
printPattern(7)
# This code is contributed
# by Smitha
// C# program to print a pattern using single
// loop and continue statement
using System;
class GFG {
// printPattern function to print pattern
static void printPattern(int n)
{
// Variable initialization
// Line count
int line_no = 1;
// Loop to print desired pattern
int curr_star = 0;
for ( line_no = 1; line_no <= n;)
{
// If current star count is less than
// current line number
if (curr_star < line_no)
{
Console.Write ( "* ");
curr_star++;
continue;
}
// Else time to print a new line
if (curr_star == line_no)
{
Console.WriteLine ();
line_no++;
curr_star = 0;
}
}
}
// Driver code
public static void Main ()
{
printPattern(7);
}
}
// This code is contributed by vt_m
<?php
// php program to print a
// pattern using single loop
// and continue statement
// printPattern function
// to print pattern
function printPattern($n)
{
// Variable initialization
$line_no = 1; // Line count
// Loop to print desired pattern
$curr_star = 0;
for ($line_no = 1; $line_no <= $n;)
{
// If current star count is less
// than current line number
if ($curr_star < $line_no)
{
echo "* ";
$curr_star++;
continue;
}
// Else time to print
// a new line
if ($curr_star == $line_no)
{
echo "\n";
$line_no++;
$curr_star = 0;
}
}
}
// Driver code
$n=7;
printPattern($n);
// This code is contributed by mits
?>
<script>
// JavaScript program to print a pattern using single
// loop and continue statement
// printPattern function to print pattern
function printPattern(n)
{
// Variable initialization
var line_no = 1; // Line count
// Loop to print desired pattern
var curr_star = 0;
for (var line_no = 1; line_no <= n; )
{
// If current star count is less than
// current line number
if (curr_star < line_no)
{
document.write("* ");
curr_star++;
continue;
}
// Else time to print a new line
if (curr_star == line_no)
{
document.write("<br>");
line_no++;
curr_star = 0;
}
}
}
// Driver code
printPattern(7);
// This code is contributed by rdtank.
</script>
Output:
* * * * * * * * * * * * * * * * * * * * * * * * * * * *
Time Complexity: O(n2)
Auxiliary Space: O(1)
Please refer below post for one more approach.
Print pattern using only one loop