给定最少的星星数和金字塔的高度,请打印图案。
例子:
Input: min_stars = 1
p_height = 5
Output:
* *
*** ***
***** *****
******* *******
******************
Input: min_stars = 3
p_height = 7
Output:
*** ***
***** *****
******* *******
********* *********
*********** ***********
************* *************
******************************
该方法是将循环运行到金字塔的高度。
- 运行循环以打印所需的空间。
- 打印左金字塔。
- 运行循环以打印中间所需的空间。
- 打印正确的金字塔。
下面是打印上述图案的程序:
C++
// C++ implementation to print the pattern
#include
using namespace std;
// Function definition
void pattern(int min_stars, int p_height)
{
int p_space;
p_space = p_height - 1;
int i, j, k, n, x;
x = 1;
// for loop for height of pyramid
for (i = 0; i < p_height; i++) {
// for loop for spaces
for (j = p_space; j > i; j--) {
cout << " ";
}
// for loop for printing
// left pyramid
for (k = 0; k < min_stars; k++)
cout << "*";
// for loop for spaces in middle
for (n = (p_height + p_height - 2);
n >= x; n--)
cout << " ";
// for loop for printing
// right pyramid
for (k = 0; k < min_stars; k++)
cout << "*";
min_stars = min_stars + 2;
x = x + 2;
cout << endl;
}
}
// Driver code
int main()
{
/* change value to set minimum,
number of stars in pyramid */
int min_stars = 1;
/* change value to increase or
decrease size of pyramid */
int p_height = 5;
// function calling
pattern(min_stars, p_height);
return 0;
}
Java
// Java implementation
// to print the pattern
import java.io.*;
class GFG
{
// Function definition
static void pattern(int min_stars,
int p_height)
{
int p_space;
p_space = p_height - 1;
int i, j, k, n, x;
x = 1;
// for loop for
// height of pyramid
for (i = 0; i < p_height; i++)
{
// for loop for spaces
for (j = p_space; j > i; j--)
{
System.out.print(" ");
}
// for loop for printing
// left pyramid
for (k = 0; k < min_stars; k++)
System.out.print("*");
// for loop for
// spaces in middle
for (n = (p_height + p_height - 2);
n >= x; n--)
System.out.print(" ");
// for loop for printing
// right pyramid
for (k = 0; k < min_stars; k++)
System.out.print("*");
min_stars = min_stars + 2;
x = x + 2;
System.out.println();
}
}
// Driver code
public static void main (String[] args)
{
/* change value to set minimum
number of stars in pyramid */
int min_stars = 1;
/* change value to increase or
decrease size of pyramid */
int p_height = 5;
// function calling
pattern(min_stars, p_height);
}
}
// This code is contributed
// by ajit
Python3
# Python3 implementation to print the pattern
# Function definition
def pattern(min_stars, p_height):
p_space = p_height - 1
x = 1
# for loop for height of pyramid
for i in range(0 ,p_height) :
# for loop for spaces
for j in range(p_space,i ,-1) :
print(" " ,end="")
# for loop for printing
# left pyramid
for k in range(0 ,min_stars) :
print("*" ,end="")
# for loop for spaces in middle
for n in range ((p_height + p_height - 2), x-1,-1) :
print(" " ,end="")
# for loop for printing
# right pyramid
for k in range(0 ,min_stars) :
print("*" ,end="")
min_stars = min_stars + 2
x = x + 2
print("")
# Driver code
# change value to set minimum
# number of stars in pyramid
if __name__=='__main__':
min_stars = 1
# change value to increase or
# decrease size of pyramid
p_height = 5
# function calling
pattern(min_stars, p_height)
# this code is contributed by Smitha Dinesh Semwal
C#
// C# implementation
// to print the pattern
using System;
class GFG
{
// Function definition
static void pattern(int min_stars,
int p_height)
{
int p_space;
p_space = p_height - 1;
int i, j, k, n, x;
x = 1;
// for loop for
// height of pyramid
for (i = 0; i < p_height; i++)
{
// for loop for spaces
for (j = p_space; j > i; j--)
{
Console.Write(" ");
}
// for loop for printing
// left pyramid
for (k = 0; k < min_stars; k++)
Console.Write("*");
// for loop for
// spaces in middle
for (n = (p_height +
p_height - 2);
n >= x; n--)
Console.Write(" ");
// for loop for printing
// right pyramid
for (k = 0; k < min_stars; k++)
Console.Write("*");
min_stars = min_stars + 2;
x = x + 2;
Console.WriteLine();
}
}
// Driver code
static public void Main ()
{
/* change value to set
minimum number of stars
in pyramid */
int min_stars = 1;
/* change value to increase
or decrease size of pyramid */
int p_height = 5;
// function calling
pattern(min_stars, p_height);
}
}
// This code is contributed
// by ajit
PHP
$i; $j--)
{
echo " ";
}
// for loop for printing
// left pyramid
for ($k = 0;
$k < $min_stars; $k++)
echo "*";
// for loop for
// spaces in middle
for ($n = ($p_height +
$p_height - 2);
$n >= $x; $n--)
echo " ";
// for loop for printing
// right pyramid
for ($k = 0;
$k < $min_stars; $k++)
echo "*";
$min_stars = $min_stars + 2;
$x = $x + 2;
echo "\n";
}
}
// Driver code
/* change value to set minimum
number of stars in pyramid */
$min_stars = 1;
/* change value to increase or
decrease size of pyramid */
$p_height = 5;
// function calling
pattern($min_stars, $p_height);
// This code is contributed by ajit
?>
Javascript
输出:
* *
*** ***
***** *****
******* *******
******************
想要从精选的最佳视频中学习并解决问题,请查看有关从基础到高级C++的C++基础课程以及有关语言和STL的C++ STL课程。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程” 。