# 算法题：递归程序打印三角形图案

2021年4月22日15:01:25 发表评论 780 次浏览

## 本文概述

``````Input : 7
Output :
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *``````

## C ++

``````//C++ program to print triangular patterns using Recursive
#include <iostream>

using namespace std;
void printPartten( int n, int k)
{
if (n <0) //Base condition
return ;

//Recursive call
printPartten(n - 1, k + 1);

int i;
for (i = 0; i <k; i++) //it makes spaces
cout <<" " ;
for (i = 0; i <n; i++) //for print *
printf ( "* " );
printf ( "\n" ); //for next line
}

int main()
{
int n = 7;

//Call to printPartten function
printPartten(n, 0);
return 0;
}``````

## Java

``````//Java program to print triangular patterns using Recursive
class GFG{
static void printPartten( int n, int k)
{
if (n <0 ) //Base condition
return ;

//Recursive call
printPartten(n - 1 , k + 1 );

int i;
for (i = 0 ; i <k; i++) //it makes spaces
System.out.printf( " " );
for (i = 0 ; i <n; i++) //for print *
System.out.printf( "* " );
System.out.printf( "\n" ); //for next line
}

public static void main(String[]args)
{
int n = 7 ;

//Call to printPartten function
printPartten(n, 0 );
}
}``````

## Python 3

``````# Python 3 program to print triangular
# patterns using Recursive

def printPartten(n, k):

if (n <0 ): # Base condition
return ;

# Recursive call
printPartten(n - 1 , k + 1 );

for i in range ( 0 , k): # it makes spaces
print ( " " , end = "");
for i in range ( 0 , n): # for print *
print ( "* " , end = "");
print ( "\n" , end = ""); # for next line

# Driver Code
n = 7 ;

# Call to printPartten function
printPartten(n, 0 );

# This code is contributed
# by Akanksha Rai``````

## C#

``````//C# program to print triangular
//patterns using Recursive
using System;

class GFG
{
static void printPartten( int n, int k)
{
if (n <0) //Base condition
return ;

//Recursive call
printPartten(n - 1, k + 1);

int i;
for (i = 0; i <k; i++) //it makes spaces
Console.Write( " " );
for (i = 0; i <n; i++) //for print *
Console.Write( "* " );
Console.Write( "\n" ); //for next line
}

//Driver Code
public static void Main()
{
int n = 7;

//Call to printPartten function
printPartten(n, 0);
}
}

//This code is contributed

## 的PHP

``````<?php
//PHP program to print triangular
//patterns using Recursive

function printPartten( \$n , \$k )
{
if ( \$n <0) //Base condition
return ;

//Recursive call
printPartten( \$n - 1, \$k + 1);

for ( \$i = 0; \$i <\$k ; \$i ++) //it makes spaces
echo " " ;
for ( \$i = 0; \$i <\$n ; \$i ++) //for print *
echo ( "* " );
echo ( "\n" ); //for next line
}

//Driver Code
\$n = 7;

//Call to printPartten function
printPartten( \$n , 0);

//This code is contributed by jit_t
?>``````

``````*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *``````

``````Input : 7
Output :
* * * * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*``````

## C ++

``````//C++ program to print reverse triangular
//patterns using Recursive
#include <iostream>

using namespace std;
void printPartten( int n, int k)
{
if (n <0) //Base condition
return ;
int i;
for (i = 0; i <k; i++) //it makes spaces
cout <<" " ;
for (i = 0; i <n; i++) //for print *
printf ( "* " );
printf ( "\n" ); //for next line

//Recursive calls
printPartten(n - 1, k + 1);
}

int main()
{
int n = 7;

//Call to printPartten function
printPartten(n, 0);
return 0;
}``````

## Java

``````//Java program to print reverse triangular
//patterns using Recursive
class GFG{
static void printPartten( int n, int k)
{
if (n <0 ) //Base condition
return ;
int i;
for (i = 0 ; i <k; i++) //it makes spaces
System.out.print( " " );
for (i = 0 ; i <n; i++) //for print *
System.out.print( "* " );
System.out.print( "\n" ); //for next line

//Recursive calls
printPartten(n - 1 , k + 1 );
}

public static void main(String[] args)
{
int n = 7 ;

//Call to printPartten function
printPartten(n, 0 );
}
}``````

## Python 3

``````# Python 3 program to print reverse
# triangular patterns using Recursive

def printPartten(n, k):

if (n <0 ): # Base condition
return ;
for i in range ( 0 , k): # it makes spaces
print ( " " , end = "")
for i in range ( 0 , n): # for print *
print ( "*" , end = " " )
print ( "\n" , end = "") # for next line

# Recursive calls
printPartten(n - 1 , k + 1 );

# Driver Code
n = 7 ;

# Call to printPartten function
printPartten(n, 0 );

# This code is contributed
# by Akanksha Rai``````

## C#

``````//C# program to print reverse triangular
//patterns using Recursive
using System;

class GFG
{
static void printPartten( int n, int k)
{
if (n <0) //Base condition
return ;
int i;
for (i = 0; i <k; i++) //it makes spaces
Console.Write( " " );
for (i = 0; i <n; i++) //for print *
Console.Write( "* " );
Console.Write( "\n" ); //for next line

//Recursive calls
printPartten(n - 1, k + 1);
}

//Driver Code
public static void Main()
{
int n = 7;

//Call to printPartten function
printPartten(n, 0);
}
}

//This code is contributed
//by PrinciRaj1992``````

## 的PHP

``````<?php
//PHP program to print reverse triangular
//patterns using Recursive
function printPartten( \$n , \$k )
{
if ( \$n <0) //Base condition
return ;

for ( \$i = 0; \$i <\$k ; \$i ++) //it makes spaces
echo ( " " );
for ( \$i = 0; \$i <\$n ; \$i ++) //for print *
echo ( "* " );
echo ( "\n" ); //for next line

//Recursive calls
printPartten( \$n - 1, \$k + 1);
}

//Driver Code
\$n = 7;

//Call to printPartten function
printPartten( \$n , 0);

//This code is contributed
//by Mukul singh
?>``````

``````* * * * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*``````