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

    0

    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
    #include "string.h"
    #include "stdio.h"
    
    int main()
    {
      char c[15],*d = &c[0]; 
      scanf("%10u", &c[11]);
      sprintf(d, "%u\0",
         (c[11]&0xFF)|
        ((c[12]&0xFF)<<8)|
        ((c[13]&0xFF)<<16)|
        ((c[14]&0xFF)<<24));
      do if (c[0] > *d) c[0] = *d;
      while (*d++, *(d+1) != 0);
      printf("%d\n", c[0]-'0');
      return 0;
    }

    Находит наименьшее цифру в числе

    Запостил: Sempai, 15 Ноября 2017

    Комментарии (2) RSS

    • &0xFF это на случай, если char не 8-битный?
      Ответить
      • А вдруг компилируют для машины «МИР-1» с 12-битными байтами или для «МИР-2» с 13-битными?

        http://ru.wikipedia.org/wiki/МИР

        Или для «PDP-10» с 36-битными словами, которые компилятор разбил на 9-битные байты?

        https://ru.wikipedia.org/wiki/PDP-10

        Или для каких-нибудь DSP, на которых огромные «байты» — это норма?
        Ответить

    Добавить комментарий