• Visitors can check out the Forum FAQ by clicking this link. You have to register before you can post: click the REGISTER link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below. View our Forum Privacy Policy.
  • Want to receive the latest contracting news and advice straight to your inbox? Sign up to the ContractorUK newsletter here. Every sign up will also be entered into a draw to WIN £100 Amazon vouchers!

Programmer's challenge

Collapse
X
  •  
  • Filter
  • Time
  • Show
Clear All
new posts

    Programmer's challenge

    Here's a bit of very badly written C-code that acts as a converter, transforming input to alternative output...

    #include<stdio.h>
    #include<string.h>

    main()
    {
    char*O,l[999]="'`acgo\177~|xp .-\0R^8) NJ6%K4O+A2M(*0ID57$3G1FBL";
    while(O=fgets(l+45,954,stdin)){
    *l=O[strlen(O)[O-1]=0,strspn(O,l+11)];
    while(*O)switch((*l&&isalnum(*O))-!*l){
    case-1:{char*I=(O+=strspn(O,l+12)+1)-2,O=34;
    while(*I&3&&(O=(O-16<<1)+*I---'-')<80);
    putchar(O&93?*I&8||!(I=memchr(l,O,44))?'?':I-l+47:32);
    break;
    case 1: ;}*l=(*O&31)[l-15+(*O>61)*32];
    while(putchar(45+*l%2),(*l=*l+32>>1)>35);
    case 0: putchar((++O,32));}
    putchar(10);}
    }

    The challenge is to deduce what the code is supposed to do.
    Nb. you can't compile it as there are a couple of syntax errors.

    I think I know the answer - it's contained in these 2 words:
    malnourished
    immunosuppressive

    #2
    You think this is bad?? Up in the attic I have a huge tome of official IBM Fortran maths functions listings which I nicked years ago thinking they might come in handy. Every line has a label and almost very line has a goto, it's the coding equivalent of Hampton Court maze.

    It made sense at the time. I think we were all much more intelligent in those days, the race back to primordial soup is clearly accelerating.

    Comment

    Working...
    X