1. Си / Говнокод #4713

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    /*----------------------------------------------------------------------------*/
    double XzMinSec( double XBOCT, unsigned int OKP){ /*Gr(Ch).dG(dC)->Gr(Ch)MS.dS*/
    signed int  min,  xz = XBOCT; XBOCT-=xz; min=60*XBOCT;  XBOCT=(XBOCT*60-min)*60;
    if (XBOCT>=59.5) { unsigned char teg[32]; double n =  pow(10,OKP) * (XBOCT-min);
    signed int z=n;n-=z; if(n>=0.5||n<=-0.5){ signed int x,y=0; sprintf(teg,"%d",z);
    while(teg[y]!='\0') y++;  z=1; for( x=0; x<OKP; x++ )  if ( teg[--y]!='9' ) z=0;
    if(z==1) if(abs(min)==59) if(min<0) XBOCT=-4100; else XBOCT=4100; else if(min<0)
    XBOCT=-100; else XBOCT=100; }}     return  xz * 10000  +  min * 100  +  XBOCT; }
    /*----------------------------------------------------------------------------*/

    гм... работает...

    BeardRED, 22 Ноября 2010

    Комментарии (47)
  2. Си / Говнокод #4712

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    /*---------------------------------------------------------------------------------------------------------------*/
    double XzMinSec(double XBOCT,unsigned int OKP){ /*Gr(Ch).dG(dC)->Gr(Ch)MS.dS*/
    signed int  min, xz=XBOCT;  XBOCT-=xz;min=60*XBOCT; XBOCT=(XBOCT*60-min)*60;
    if (XBOCT>=59.5) {  unsigned char  teg[32];  double n =  pow (10,OKP) * (XBOCT-min);
    signed int z=n; n-=z;  if ( n>=0.5 || n<=-0.5 ) {  signed int x, y=0; sprintf ( teg, "%d", z);
    while ( teg[y]  !=  '\0'  )  y++;   z=1;   for ( x=0;  x<OKP;  x++ )  if  ( teg[--y]  !=  '9'  )  z=0;
    if(z==1)  if (abs(min) == 59 ) if(min<0) XBOCT=-4100; else XBOCT=4100; else if(min<0)
    XBOCT = -100;  else XBOCT = 100;  } }       return  xz * 10000  +  min * 100  +  XBOCT; }
    /*----------------------------------------------------------------------------------------------------------------*/

    гм... работает...

    BeardRED, 22 Ноября 2010

    Комментарии (0)
  3. Си / Говнокод #4703

    +136

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    int CheckError( TStatusMessage* ctrl )
    {
    	if( !ctrl ) return 1;
    
    	if(ctrl->request>40) return 1;
    	if(ctrl->prm.radiation!=ctrl->prm.aradiation) return 1;
    	if(ctrl->prm.pulse!=ctrl->prm.apulse) return 1;
    	if(ctrl->prm.frequency!=ctrl->prm.afrequency)
    	{
    		if( (ctrl->prm.frequency&2) != (ctrl->prm.afrequency&2) )
    		{
    			return 1;		
    		}
    	} 
    	if(ctrl->prm.autotune==ctrl->prm.aautotune) return 1;
    	if(ctrl->prm.antenna==ctrl->prm.aantenna) return 1;
    	if(ctrl->prm.blanking!=ctrl->prm.ablanking) return 1;
    	if(ctrl->prm.vob!=ctrl->prm.avob) return 1;
    
    	return 0;
    }

    Проверка на наличие ошибки.

    absolut, 22 Ноября 2010

    Комментарии (11)
  4. Си / Говнокод #4701

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if (t) {
    	;	
    } else {
    	printf("%d ", i);
    }

    Ночь. Хочу спать. Выдал вот такое.

    Rusik, 22 Ноября 2010

    Комментарии (1)
  5. Си / Говнокод #4684

    +139

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    FILE *ConfigFile = NULL;
    char *workdir = NULL;
    workdir=getenv("APP_WORKDIR");
    if ((NULL!=workdir) && (NULL != (ConfigFile = fopen(strcat(workdir,"appname/config.xml"), "r"))))
    {
       fclose(ConfigFile);
       workdir[strlen(workdir)-10] = '\0';
       setenv("APP_RESOURCE_DIR", workdir , 1);
    }

    вот так нужно указывать крутой библиотеке, любимому и незаменимому детищу нашего R&D, читать файл из другой директории.

    и вот такое было закопипащено в 4 приложений....

    Dummy00001, 19 Ноября 2010

    Комментарии (11)
  6. Си / Говнокод #4665

    +132

    1. 1
    2. 2
    3. 3
    const long long_value = PyInt_AsLong(value);                                      
    const int int_value = (int)long_value;                                            
    if (PyErr_Occurred() || long_value != int_value) { /* Overflow */

    PyMongo...

    raorn, 17 Ноября 2010

    Комментарии (12)
  7. Си / Говнокод #4659

    +145

    1. 1
    #define ISODD( i ) ( (((i) % 2) == 0) ? 0 : 1 )

    Особо выдающимся китайцам платят не построчно, а посимвольно.

    nil, 17 Ноября 2010

    Комментарии (95)
  8. Си / Говнокод #4598

    +144

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    #include <stdio.h>
    
    // Говнокод здесь
    #define ABS(x) ((x) ? (x) : (-(x)))
    
    int main () {
    	char ch = -128;
    	short sm = -32768;
    	int i = -2147483647; i--;                                    // здесь
    	long long l = -9223372036854775807LL; l--; // и здесь декременты нужны
    	                                                                             // для подавления варнингов
    	
    	printf("char:\t\tABS(%hhd) = %hhd\n", ch, ABS(ch));
    	printf("short:\t\tABS(%hd) = %hd\n", sh, ABS(sh));
    	printf("int:\t\tABS(%d) = %d\n", i, ABS(i));
    	printf("long long:\tABS(%lld) = %lld\n", l, ABS(l));
    
    	return 0;
    }

    Может быть, баян, но...
    Всем знакомый макрос ABS способен сделать большую гадость.
    Вот вывод программы:
    char: ABS(-128) = -128
    short: ABS(-32768) = -32768
    int: ABS(-2147483648) = -2147483648
    long long: ABS(-9223372036854775808) = -9223372036854775808

    whiskey, 12 Ноября 2010

    Комментарии (19)
  9. Си / Говнокод #4560

    +146

    1. 1
    2. 2
    3. 3
    4. 4
    logit("e", "%s No Menu! Wait 5 minutes and try again.\n", whoami);
    for(j=0;j<60;j++) {
        sleep_ew( 5000 );       /* wait around */
    }

    sgram из earthworm

    ftptrash, 08 Ноября 2010

    Комментарии (43)
  10. Си / Говнокод #4548

    +144

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    main() {
        char * what = "\
            ........................................ ....________\
            ....................................,.-'\"...................``~.,\
            .............................,.-\"................................... \"-.,\
            .........................,/........................................ .......\":,\
            .....................,?................. .....................................,\
            .................../........................................ ...................,}\
            ................./........................................ ..............,:`^`..}\
            .............../........................................ ...........,:\"........./\
            ..............?.....__.................. .......................:.........../\
            ............./__.(.....\"~-,_..............................,:..... ...../\
            .........../(_....\"~,_........\"~,_.................. ..,:........_/\
            ..........{.._$;_......\"=,_.......\"-,_.......,.-~-,},.~\";/....}\
            ...........((.....*~_.......\"=-._......\";,,./`..../\"............../\
            ...,,,___.`~,......\"~.,................. ...`.....}............../\
            ............(....`=-,,.......`........................(..... .;_,,-\"\
            ............/.`~,......`-...................................../\
            .............`~.*-,.....................................|, ./.....,__\
            ,,_..........}.>-._...................................|.. ............`=~-,\
            .....`=~-,__......`,............................. ....\
            ...................`=~-,,.,...............................\
            ................................`:,,.... .......................`..............__\
            .....................................`=-,...................,%`>--==``\
            ........................................ _..........._,-%.......`\
            ...................................,";
    
        int c = 0; int i = 0;
        for(; i < strlen(what); i++) {
            switch(what[i]) {
                case '.': c++;break;
                case '_': c--;break;
                case '/': c *= 2; break;
                case ',': c /= 2; break;
                case '?': c <<= 1; break;
                case '"': c >>= 1; break;
                case ':': c = ~c; break;
                case '*': c = -c; break;
                case '`': c += 100500; break;
                case '{': c -= '{'; break;
                case '}': c += '}'; break;
                case '-': c /= 4; break;
                case '~': c <<= 4; break;
                case ';': c = c & -c; break;
                case '%': c = c & 0xFF; break;
                case '=': c = c; /* еба! */ break;
                case '^': c = c ^ -c; break;
                case '$': printf("BINGOOO!!!\n"); break;
            }
        }
    
        printf("FACEPALM RESULT: %i\n", c);

    BINGOOO!!!
    FACEPALM RESULT: 50301

    danilissimus, 06 Ноября 2010

    Комментарии (3)