打印梯形图案的程序

给定表示行数的“num”。这项任务是打印一个梯形图案的num行。 例如:

null
Input  : 4 Output :1*2*3*4*17*18*19*20  5*6*7*14*15*16    8*9*12*13      10*11Input : 2Output :1*2*5*6  3*4

算法: 第一步。读取指示行数的num。 第二步。我们将图案分为两部分,即左半部和右半部。 例:当num=2时 LHS- 1*2* 3* RHS- 5*6 4. 第三步。结合LHS和RHS,我们得到了完整的模式。

C++

// CPP program to print Trapezium Pattern
#include <iostream>
using namespace std;
int main()
{
int num = 3;
int space;
int i, j, lterm, rterm;
// The terms on the LHS of the pattern
lterm = 1;
// The terms on the RHS of the pattern
rterm = num * num + 1;
for (i = num; i > 0; i--) {
// To print number of spaces
for (space = num; space > i; space--)
cout << " " ;
for (j = 1; j <= i; j++) {
cout << lterm;
cout << "*" ;
lterm++;
}
for (j = 1; j <= i; j++) {
cout << rterm;
if (j < i)
printf ( "*" );
rterm++;
}
// To get the next term on RHS of the Pattern
rterm = rterm - (i - 1) * 2 - 1;
cout << endl;
}
}


JAVA

// Java program to print Trapezium Pattern
public class HelloWorld {
public static void trapeziumPattern( int num)
{
int firsthalf = 1 ;
int secondhalf = (num * num) + 1 ;
int numOfSpaces = 0 ;
// numOfLines is the line number
for ( int numOfLines = num; numOfLines >= 1 ;
numOfLines--) {
// Prints the spaces for each line
for ( int numOfSpacesCounter = numOfSpaces;
numOfSpacesCounter >= 1 ;
numOfSpacesCounter--) {
System.out.print( " " );
}
// Prints the first half of the trapezium
for ( int firstHalfCounter = 1 ;
firstHalfCounter <= numOfLines;
firstHalfCounter++) {
// If it is the last number for a line then
// we don't print '*'
if (firstHalfCounter == numOfLines)
System.out.print((firsthalf++));
else
System.out.print((firsthalf++) + "*" );
}
// Prints the second half of the trapezium
for ( int secondHalfCounter = 1 ;
secondHalfCounter <= numOfLines;
secondHalfCounter++) {
System.out.print( "*" + (secondhalf++));
}
System.out.println();
// Calculates the number of Spaces for the next
// line
numOfSpaces += 2 ;
// Calculates the first number of the
// second half for the next iteration/line
secondhalf
= (secondhalf - 1 ) - ((numOfLines - 1 ) * 2 );
}
}
public static void main(String[] args)
{
trapeziumPattern(
4 ); // Passing the integer as the argument to
// print trapezium pattern
}
}


Python 3

# Python 3 program to print
# Trapezium Pattern
if __name__ = = "__main__" :
num = 3
# The terms on the LHS
# of the pattern
lterm = 1
# The terms on the RHS
# of the pattern
rterm = num * num + 1
for i in range (num, - 1 , - 1 ):
# To print number of spaces
for space in range (num, i - 1 , - 1 ):
print ( " " , end = "")
for j in range ( 1 , i + 1 ):
print ( str (lterm) + "*" , end = "")
lterm + = 1
for j in range ( 1 , i + 1 ):
print (rterm, end = "")
if j < i:
print ( "*" , end = "")
rterm + = 1
# To get the next term on RHS of the Pattern
rterm = rterm - (i - 1 ) * 2 - 1
print ()
# This code is contributed by ChitraNayal


C#

// C# program to print Trapezium Pattern
using System;
public class HelloWorld {
public static void Main(String[] args)
{
// Scanner scn = new Scanner(System.in);
int num = 3;
int space;
// System.out.println("Enter number of lines : ");
// num = scn.nextInt();
int i, j, lterm, rterm;
lterm = 1; // The terms on the LHS of the pattern
// The terms on the RHS of the pattern
rterm = num * num + 1;
for (i = num; i > 0; i--) {
// To print number of spaces
for (space = num; space > i; space--)
Console.Write( " " );
for (j = 1; j <= i; j++) {
Console.Write(lterm);
Console.Write( "*" );
lterm++;
}
for (j = 1; j <= i; j++) {
Console.Write(rterm);
if (j < i)
Console.Write( "*" );
rterm++;
}
// To get the next term on RHS of the Pattern
rterm = rterm - (i - 1) * 2 - 1;
Console.WriteLine();
}
}
}
// This code is contributed by ankita_saini


PHP

<?php
// PHP program to print
// Trapezium Pattern
$num = 3;
$space ;
$i ; $j ; $lterm ; $rterm ;
// The terms on the LHS
// of the pattern
$lterm = 1;
// The terms on the
// RHS of the pattern
$rterm = $num * $num + 1;
for ( $i = $num ; $i > 0; $i --)
{
// To print number of spaces
for ( $space = $num ;
$space > $i ; $space --)
echo " " ;
for ( $j = 1; $j <= $i ; $j ++)
{
echo $lterm ;
echo "*" ;
$lterm ++;
}
for ( $j = 1; $j <= $i ; $j ++)
{
echo $rterm ;
if ( $j < $i )
echo "*" ;
$rterm ++;
}
// To get the next term
// on RHS of the Pattern
$rterm = $rterm - ( $i - 1) * 2 - 1;
echo "" ;
}
// This code is contributed
// by Akanksha Rai(Abby_akku)
?>


Javascript

<script>
// JavaScript program to print Trapezium Pattern
var num = 3;
var space;
var i, j, lterm, rterm;
// The terms on the LHS of the pattern
lterm = 1;
// The terms on the RHS of the pattern
rterm = num * num + 1;
for (i = num; i > 0; i--) {
// To print number of spaces
for (space = num; space > i; space--)
document.write( "  " );
for (j = 1; j <= i; j++) {
document.write(lterm);
document.write( "*" );
lterm++;
}
for (j = 1; j <= i; j++) {
document.write(rterm);
if (j < i) document.write( "*" );
rterm++;
}
// To get the next term on RHS of the Pattern
rterm = rterm - (i - 1) * 2 - 1;
document.write( "<br>" );
}
</script>


输出:

Enter number of lines : 31*2*3*10*11*12  4*5*8*9    6*7

© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享