View Feed
group-icon
Coffee Room
Discuss anything here - everything that you wish to discuss with fellow engineers.
12838 Members
Join this group to post and comment.
disaster
disaster • Jan 22, 2009

program to print triangle

guys plz help me to write this progam

123454321
1234 4321
123 321
12 21

the numbers must be printed in this form.ūüėē
disaster
disaster • Jan 22, 2009
sorry the image is wrong

123454321
1234..4321
123.....321
12........21
1...........1
silverscorpion
silverscorpion • Jan 22, 2009
I'll just give you the algorithm for now. try coding it yourself.. if you're not able to do it, let's see.
It goes like this:

Initialise 2 counters, let's say i and j.

Use one for printing the numbers in a single line, and the other for the number of lines.

Take care of the spaces in the lines. A simple thing to note is, if there are 'n' lines, then the k-th line has numbers from 1 to k-1, then 2*(k-1)-1 spaces, then numbers from k-1 to 1.

this same algo should work for any pattern, that is, even if the first line is 1234567654321, you can do it by this algo. Just try it.

Hope I'm clear..
safwan
safwan • Jan 24, 2009
bROTHER , I ALSO WANT ALMOST THIS KIND OF PROGRAMM BUT I NEED A PYRAMID TO BE PRINTED SAME AS HERE HOW TO KEEP SPACE LOOK MY ONE PROJECT.

----*
---***
--*****
BUT MY ONE IS
*
**
***
****
SO PROBLEM HERE IS SAME
OF YOUR AND MINE CHECKE OUT MY CODE IN MY THERED PRINTING PYRAMID IN VB.
disaster
disaster • Jan 27, 2009
silverscorpion
I'll just give you the algorithm for now. try coding it yourself.. if you're not able to do it, let's see.
It goes like this:

Initialise 2 counters, let's say i and j.

Use one for printing the numbers in a single line, and the other for the number of lines.

Take care of the spaces in the lines. A simple thing to note is, if there are 'n' lines, then the k-th line has numbers from 1 to k-1, then 2*(k-1)-1 spaces, then numbers from k-1 to 1.

this same algo should work for any pattern, that is, even if the first line is 1234567654321, you can do it by this algo. Just try it.

Hope I'm clear..



can u explain it more plzzz
i am unable to get u.
shalini_goel14
shalini_goel14 • Jan 27, 2009
Hi disaster

Have a look at following thread, if it can be of any help to you.
https://www.crazyengineers.com/forum/computer-science-engineering/12974-printing-pyramid-vb.html

[Note: Just replace "*" with the counter value you want to print. It is not exactly what you want but logic is almost same.]

You can try once. If an issues let me know.
cinu97
cinu97 • Jul 25, 2011
disaster
guys plz help me to write this progam

123454321
1234 4321
123 321
12 21

the numbers must be printed in this form.ūüėē

/* cinu97@gmail.com */
#include
int main()
{
int i,j,n;
printf("Enter no");
scanf("%d",&n);
for(i=0;i {
for(j=1;j<=n-i;j++)
printf("%d",j);
for(j=0;j<((i*2)-1);j++)
printf("*");
for(j=n-i;j>0;j--)
{
if(j==n)
{
}
else
printf("%d",j);
}
printf("\n");
}}
Guys, please refrain from posting EMail addresses in the public forums.

Back to your question, it can be easily achieved by using two counters with a master counter, which counts less. And the same above code with some optimization.

#include 
int main()
{
    
int i, j, n;
    
printf("Enter the number of Lines: ");
    
scanf("%d", &n);
    for(
i=0; i<n; i++)
    {
        for(
j=1; j<=n-i; j++)
          
printf("%d", j);
        for(
j=0; j<((i*2)-1); j++)
          
printf("*");
        for(
j=n-i; j>0; j--)
          if(
j!=n)
            
printf("%d", j);
        
printf("\n");
    }
}
andremartin
andremartin • Jul 28, 2011
Use one for printing the numbers in a single line, and the other for the number of lines.
social media

Share this content on your social channels -