Replies

Welcome, guest

Join CrazyEngineers to reply, ask questions, and participate in conversations.

CrazyEngineers powered by Jatra Community Platform

  • disaster

    @disaster-CjIs3U • Jan 22, 2009

    sorry the image is wrong

    123454321
    1234..4321
    123.....321
    12........21
    1...........1

  • silverscorpion

    @silverscorpion-iJKtdQ • 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-NH7W5Y • Jan 23, 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-CjIs3U • Jan 27, 2009

    silverscorpionI'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-ASmC2J • Jan 27, 2009

    Hi disaster

    Have a look at following thread, if it can be of any help to you.
    #-Link-Snipped-#

    [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-IWL6i7 • Jul 25, 2011

    disasterguys plz help me to write this progam

    123454321
    1234 4321
    123 321
    12 21

    the numbers must be printed in this form.😕


    /* #-Link-Snipped-# */
    #include<stdio.h>
    int main()
    {
    int i,j,n;
    printf("Enter no");
    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)
    {
    }
    else
    printf("%d",j);
    }
    printf("\n");
    }}

  • PraveenKumar Purushothaman

    @praveenkumar-66Ze92 • Jul 26, 2011

    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 <stdio.h>
    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-D4HeN0 • Jul 27, 2011

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