Try The 'C' Code !

Kaustubh Katdare

Kaustubh Katdare

@thebigk Oct 25, 2024
Here comes a challenge for Computer Engineers !

int i, n = 20;
for (i = 0; i < n; i--)
{
printf("X");
}

By only changing or adding ONLY ONE character to the above code:

Find 3 ways to make the above code print X 20 times!

-The Big K-
p.s: This challenge will be open for all CEans untill someone cracks it. Do *not* expect an answer from me.

Replies

Welcome, guest

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

CrazyEngineers powered by Jatra Community Platform

  • sristi

    sristi

    @sristi-483Qff Jun 15, 2006

    1)
    int i, n = 20;
    for (i = 0; i < n; i++)
    {
    printf("X");
    }


    2)int i,n=20;
    for(i=0;i++<n😉
    {
    print("X");
    }


    3)
    int i, n = 20;
    for (i = 0; ++i < =n; )
    {
    printf("X");
    }
  • Kaustubh Katdare

    Kaustubh Katdare

    @thebigk Jun 15, 2006

    That was a nice attempt [​IMG]

    But you missed this -

    By only changing or adding ONLY ONE character to the above code:
    😉

    -The Big K-
  • Jerry

    Jerry

    @jerry-5wPKU7 Jun 15, 2006

    working on it

    sristi
    1)
    int i, n = 20;
    for (i = 0; i < n; i++)
    {
    printf("X");
    }
    yeh, you changed -- to ++ , that is you changed two characters. However you are allowed to change only one chracter from the code. Really interesting, I'm working on it !😉
  • crook

    crook

    @crook-0PFkJv Jun 16, 2006

    I'm not a C programmer but this is more of a logic problem. Should not take more time. Let me see what can I do about it.

    crook
  • Kaustubh Katdare

    Kaustubh Katdare

    @thebigk Jun 16, 2006

    probably I should start giving out hints!

    Cummont fellaz, do you really need them? [​IMG]

    -The Big K-
  • crook

    crook

    @crook-0PFkJv Jun 17, 2006

    got it

    i think i got it.

    in the original code, make the following change

    for (i = 0; i < n; n--)

    it should work! now trying the remaining two methods 😁
  • crook

    crook

    @crook-0PFkJv Jun 24, 2006

    here comes the second way - 😁

    int i, n = 20;
    for (i = 0; -i < n; i--)
    {
    printf("X");
    }
    and the third 😁

    int i, n = 20;
    for (i = 0; i + n; i--)
    {
    printf("X");
    }
  • crook

    crook

    @crook-0PFkJv Jun 24, 2006

    New Challenge !

    This is a simple C puzzle for you -

    "Write a "Hello World" program in 'C' without using a semicolon."

    Try it, its very simple.

    CrooK
  • Jerry

    Jerry

    @jerry-5wPKU7 Jun 25, 2006

    int i, n = 20;
    for (i = 0; -i < n; i--)
    {
    printf("X");
    }

    will this work? 😒

    I don't have a compiler to try this out. I have started working on crook's problem. Its been quite sometime since I letf coding 😔
  • pradypop

    pradypop

    @pradypop-Draqkg Jun 28, 2006

    main(){if(printf("Hello world")){}}

    This might print hello world. No semi-colons used.
  • crook

    crook

    @crook-0PFkJv Jun 28, 2006

    yes, thats a correct solution! 😀
  • rajeshkumar.km

    rajeshkumar.km

    @rajeshkumarkm-JkfM7A Aug 7, 2006

    my guesss

    😉
    int i, n = -20;
    for (i = 0; i < n; i--)
    {
    printf("X");
    }

    i think the above change ( minus sign before 20 in the line 'int i,n=20')will respond to your view correctly
  • crook

    crook

    @crook-0PFkJv Aug 8, 2006

    rajeshkumar.km
    😉
    int i, n = -20;
    for (i = 0; i < n; i--)
    {
    printf("X");
    }

    i think the above change ( minus sign before 20 in the line 'int i,n=20')will respond to your view correctly
    😕 I'm afraid the logic won't work.

    Croook
  • devi prasad

    devi prasad

    @devi-prasad-rBHPuv Aug 10, 2006

    ans:

    first method:

    int i, n = -20;
    for (i = 0; i < n; i--)
    {
    printf("X");
    }


    second method :


    int i, n = 20;
    for (i = 0; i < -n; i--)
    {
    printf("X");
    }


    third method:


    int i, n = 20;
    for (i = 20; i < n; i--)
    {
    printf("X");
    }


    😁
  • Mahesh

    Mahesh

    @mahesh-wLPhv2 Oct 7, 2006

    third method:


    int i, n = 20;
    for (i = 20; i < n; i--)
    {
    printf("X");
    }



    How can this work? This is an infinite loop.
  • Kaustubh Katdare

    Kaustubh Katdare

    @thebigk Oct 7, 2006

    Mahesh
    third method:


    int i, n = 20;
    for (i = 20; i < n; i--)
    {
    printf("X");
    }



    How can this work? This is an infinite loop.
     for (i = 20; i < n; i--)
    Good Catch, Mahesh 😀 . Devi Prasad might want to fix it.

    -The Big K-
  • bantini

    bantini

    @bantini-EVA22R Oct 10, 2006

    how about (i=0;i<n:-i--)?😕 hey dude,just a lame attempt from an amateur!!!dunno much about c anyway!
  • pradypop

    pradypop

    @pradypop-Draqkg Oct 11, 2006

    Mahesh
    third method:


    int i, n = 20;
    for (i = 20; i < n; i--)
    {
    printf("X");
    }



    How can this work? This is an infinite loop.
    I don't think there's an infinite loop in the code. Infact, statements inside loop are not executed even once.

    n=20, i=20 at initilization and condition is i<n, 20<20 is not true. Condition fails straightaway.
  • Mahesh

    Mahesh

    @mahesh-wLPhv2 Oct 11, 2006

    Still the program is wrong.Can you give correct solution?
  • pradeep_agrawal

    pradeep_agrawal

    @pradeep-agrawal-rhdX5z Oct 18, 2006

    /* 1st Way: Change i in i-- by n*/
    int i, n = 20;
    for (i = 0; i < n; n--)
    {
    printf("X");
    }


    /* 2nd Way: Add - before i in i < n */
    int i, n = 20;
    for (i = 0; -i < n; i--)
    {
    printf("X");
    }


    /* 3rd Way: Change < in i < n by + */
    int i, n = 20;
    for (i = 0; i + n; i--)
    {
    printf("X");
    }
  • Prasad Ajinkya

    Prasad Ajinkya

    @prasad-aSUfhP Oct 18, 2006

    This is decent enough, hope the 3 ways are as follows -

    int i, n = 20;
    for (i = 0; i < -n; i--)
    {
    printf("X");
    }


    int i, n = 20;
    for (i = 40; i < n; i--)
    {
    printf("X");
    }

    int i, n = 20;
    for (i = 0; i > n; i--)
    {
    printf("X");
    }

    I have indicated in red the change in character that I have made.
  • ksrbhanu

    ksrbhanu

    @ksrbhanu-7vVvZL Nov 2, 2006

    Hi friends,

    I have one method, i will try other two. mean while review this method

    int i, n = 20;
    for (i = 0; i < n; n--)
    {
    printf("X");
    }

    replacing the i in the decrement statement with n it works , this is one character change 😎
  • ksrbhanu

    ksrbhanu

    @ksrbhanu-7vVvZL Nov 2, 2006

    sory guys, i have n't checked the whole chain , pradeep has already posted this metho 😔
  • spirit

    spirit

    @spirit-C1iJsl Nov 9, 2006

    hello.....i m giving your answer n u have to tell thats right or not.....😎
    this is your code........
    int i, n = 20;
    for (i = 0; i < n; i--)
    {
    printf("X");
    }
    1. instead of i-- in the loop,change it as n--.
    2.in initialisation,n=20,change it as:n=-20.
    3.instead of i--,use:i++.

    😁
  • rahul dev choud

    rahul dev choud

    @rahul-dev-choud-qQtOsv Jan 16, 2007

    hey its really interesting don't tell da ans...

    working on it ....

    w'll back soon......