给定整数n,任务是打印2n-1行的逆菱形图案。 例子:
null
Input: n = 3Output:*** ***** *** *** ***** ***Input: n = 7Output:******* ************* *********** ********* ******* ***** *** *** ***** ******* ********* *********** ************* *******
方法:
- 全反菱形为2n-1行,输入为n。
- 程序分为两部分打印此图案:
- 第一部分是n行菱形的上半部分。
- 这一部分包括三部分——左三角形*、中三角形和右三角形*。
- 第二部分是n-1排钻石的下半部分。
- 这一部分还包括三部分——左三角形*、中三角形和右三角形*。
- 打印每个零件,获得所需的反菱形图案。
以下是上述方法的实施情况:
C++
// C++ Code to print // the inverse diamond shape #include<bits/stdc++.h> using namespace std; // Function to Print Inverse Diamond pattern // with 2n-1 rows void printDiamond( int n) { cout<<endl; int i, j = 0; // for top half for (i = 0; i < n; i++) { // for left * for (j = i; j < n; j++) cout<< "*" ; // for middle " " for (j = 0; j < 2 * i + 1; j++) cout<< " " ; // for right * for (j = i; j < n; j++) cout<< "*" ; cout<<endl; } // for below half for (i = 0; i < n - 1; i++) { // for left * for (j = 0; j < i + 2; j++) cout<< "*" ; // for middle " " for (j = 0; j < 2 * (n - 1 - i) - 1; j++) cout<< " " ; // for right * for (j = 0; j < i + 2; j++) cout<< "*" ; cout<<endl; } cout<<endl; } // Driver Code int main() { // Define n int n = 3; cout<< "Inverse Diamond Pattern for n = " <<n; printDiamond(n); n = 7; cout<< "Inverse Diamond Pattern for n = " <<n; printDiamond(n); } |
JAVA
// Java Code to print // the inverse diamond shape import java.util.*; class GFG { // Function to Print Inverse Diamond pattern // with 2n-1 rows static void printDiamond( int n) { System.out.println(); int i, j = 0 ; // for top half for (i = 0 ; i < n; i++) { // for left * for (j = i; j < n; j++) System.out.print( "*" ); // for middle " " for (j = 0 ; j < 2 * i + 1 ; j++) System.out.print( " " ); // for right * for (j = i; j < n; j++) System.out.print( "*" ); System.out.println(); } // for below half for (i = 0 ; i < n - 1 ; i++) { // for left * for (j = 0 ; j < i + 2 ; j++) System.out.print( "*" ); // for middle " " for (j = 0 ; j < 2 * (n - 1 - i) - 1 ; j++) System.out.print( " " ); // for right * for (j = 0 ; j < i + 2 ; j++) System.out.print( "*" ); System.out.println(); } System.out.println(); } // Driver Code public static void main(String[] args) { // Define n int n = 3 ; System.out.println( "Inverse Diamond Pattern for n = " + n); printDiamond(n); n = 7 ; System.out.println( "Inverse Diamond Pattern for n = " + n); printDiamond(n); } } |
Python3
#Python3 program to print # the inverse diamond shape # Function to Print Inverse # Diamond pattern # with 2n-1 rows def printDiamond(n) : print ("") j = 0 # for top half for i in range ( 0 ,n): # for left * for j in range (i,n): print ( "*" ,end = "") # for middle " " for j in range ( 0 , 2 * i + 1 ): print ( " " ,end = "") # for right * for j in range (i,n): print ( "*" ,end = "") print ("") # for below half for i in range ( 0 ,n - 1 ): # for left * for j in range ( 0 , i + 2 ): print ( "*" ,end = "") # for middle " " for j in range ( 0 , 2 * (n - 1 - i) - 1 ): print ( " " ,end = "") # for right * for j in range ( 0 , i + 2 ): print ( "*" ,end = "") print ("") print ("") # Driver Code if __name__ = = '__main__' : # Define n n = 3 print ( "Inverse Diamond Pattern for n = " ,n) printDiamond(n) n = 7 print ( "Inverse Diamond Pattern for n = " ,n ) printDiamond(n) # this code is contributed by Smitha Dinesh Semwal |
C#
// C# Code to print // the inverse diamond shape using System; class GFG { // Function to Print Inverse // Diamond pattern with 2n-1 rows static void printDiamond( int n) { Console.WriteLine(); int i, j = 0; // for top half for (i = 0; i < n; i++) { // for left * for (j = i; j < n; j++) Console.Write( "*" ); // for middle " " for (j = 0; j < 2 * i + 1; j++) Console.Write( " " ); // for right * for (j = i; j < n; j++) Console.Write( "*" ); Console.WriteLine(); } // for below half for (i = 0; i < n - 1; i++) { // for left * for (j = 0; j < i + 2; j++) Console.Write( "*" ); // for middle " " for (j = 0; j < 2 * (n - 1 - i) - 1; j++) Console.Write( " " ); // for right * for (j = 0; j < i + 2; j++) Console.Write( "*" ); Console.WriteLine(); } Console.WriteLine(); } // Driver Code public static void Main() { // Define n int n = 3; Console.WriteLine( "Inverse Diamond " + "Pattern for n = " + n); printDiamond(n); n = 7; Console.WriteLine( "Inverse Diamond " + "Pattern for n = " + n); printDiamond(n); } } // This code is contributed // by inder_verma. |
PHP
<?php // PHP Code to print // the inverse diamond shape // Function to Print Inverse // Diamond pattern with 2n-1 rows function printDiamond( $n ) { echo "" ; $i ; $j = 0; // for top half for ( $i = 0; $i < $n ; $i ++) { // for left * for ( $j = $i ; $j < $n ; $j ++) echo ( "*" ); // for middle " " for ( $j = 0; $j < 2 * $i + 1; $j ++) echo ( " " ); // for right * for ( $j = $i ; $j < $n ; $j ++) echo ( "*" ); echo ( "" ); } // for below half for ( $i = 0; $i < $n - 1; $i ++) { // for left * for ( $j = 0; $j < $i + 2; $j ++) echo ( "*" ); // for middle " " for ( $j = 0; $j < 2 * ( $n - 1 - $i ) - 1; $j ++) echo ( " " ); // for right * for ( $j = 0; $j < $i + 2; $j ++) echo ( "*" ); echo ( "" ); } echo ( "" ); } // Driver Code // Define n $n = 3; echo ( "Inverse Diamond Pattern for n = " ); echo ( $n ); printDiamond( $n ); $n = 7; echo ( "Inverse Diamond Pattern for n = " ); echo ( $n ); printDiamond( $n ); // This code is contributed // by inder_verma. ?> |
Javascript
<script> // JavaScript Code to print // the inverse diamond shape // Function to Print Inverse Diamond pattern // with 2n-1 rows function printDiamond(n) { document.write( "<br><br>" ); var i, j = 0; // for top half for (i = 0; i < n; i++) { // for left * for (j = i; j < n; j++) document.write( "*" ); // for middle " " for (j = 0; j < 2 * i + 1; j++) document.write( " " ); // for right * for (j = i; j < n; j++) document.write( "*" ); document.write( "<br>" ); } // for below half for (i = 0; i < n - 1; i++) { // for left * for (j = 0; j < i + 2; j++) document.write( "*" ); // for middle " " for (j = 0; j < 2 * (n - 1 - i) - 1; j++) document.write( " " ); // for right * for (j = 0; j < i + 2; j++) document.write( "*" ); document.write( "<br>" ); } document.write( "<br>" ); } // Driver Code // Define n var n = 3; document.write( "Inverse Diamond Pattern for n = " + n); printDiamond(n); n = 7; document.write( "Inverse Diamond Pattern for n = " + n); printDiamond(n); </script> |
输出:
Inverse Diamond Pattern for n = 3*** ***** *** *** ***** ***Inverse Diamond Pattern for n = 7******* ************* *********** ********* ******* ***** *** *** ***** ******* ********* *********** ************* *******
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END