1. Куча / Говнокод #25119

    +1

    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
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    f =: #.@i.~&'.O'@(#~ ~:&LF)
    g =: $~&6 5@:{&'.O'@#:~&(30$2)
    
    'K A O Y B G R RP' =: f each|. (0 : 0); (0 : 0); (0 : 0); (0 : 0); (0 : 0); (0 : 0); (0 : 0); (0 : 0)
    O..O.
    O..O.
    OOO..
    O..O.
    O...O
    O...O
    )
    .OOO.
    O...O
    O...O
    OOOOO
    O...O
    O...O
    )
    .OOO.
    O...O
    O...O
    O...O
    O...O
    .OOO.
    )
    .O.O.
    ..O..
    O...O
    O..OO
    O.O.O
    OO..O
    )
    OOOOO
    O....
    OOOO.
    O...O
    O...O
    OOOO.
    )
    OOOOO
    O....
    O....
    O....
    O....
    O....
    )
    OOOO.
    O...O
    OOOO.
    O....
    O....
    O....
    )
    .O...
    ..O..
    ...O.
    ...O.
    ..O..
    .O...
    )
    
    echo ,./g (,@:(,&0"0)) K,A,K,O,Y,0,B,A,G,O,R,0,3#RP

    O..O.......OOO......O..O.......OOO.......O.O................OOOOO......OOO......OOOOO......OOO......OOOO.................O.........O.........O........
    O..O......O...O.....O..O......O...O.......O.................O.........O...O.....O.........O...O.....O...O.................O.........O.........O.......
    OOO.......O...O.....OOO.......O...O.....O...O...............OOOO......O...O.....O.........O...O.....OOOO...................O.........O.........O......
    O..O......OOOOO.....O..O......O...O.....O..OO...............O...O.....OOOOO.....O.........O...O.....O......................O.........O.........O......
    O...O.....O...O.....O...O.....O...O.....O.O.O...............O...O.....O...O.....O.........O...O.....O.....................O.........O.........O.......
    O...O.....O...O.....O...O......OOO......OO..O...............OOOO......O...O.....O..........OOO......O....................O.........O.........O........

    Запостил: UPPERCASE, 26 Ноября 2018

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

    • #include <stdio.h>
      #include <malloc.h>
      
      char *K =
      "O..O."
      "O..O."
      "OOO.."
      "O..O."
      "O...O"
      "O...O";
      
      char *A =
      ".OOO."
      "O...O"
      "O...O"
      "OOOOO"
      "O...O"
      "O...O";
      
      char *O =
      ".OOO."
      "O...O"
      "O...O"
      "O...O"
      "O...O"
      ".OOO.";
      
      char *Y =
      ".O.O."
      "..O.."
      "O...O"
      "O..OO"
      "O.O.O"
      "OO..O";
      
      char *B =
      "OOOOO"
      "O...."
      "OOOO."
      "O...O"
      "O...O"
      "OOOO.";
      
      char *G =
      "OOOOO"
      "O...."
      "O...."
      "O...."
      "O...."
      "O....";
      
      char *R =
      "OOOO."
      "O...O"
      "OOOO."
      "O...."
      "O...."
      "O....";
      
      char *RP =
      ".O..."
      "..O.."
      "...O."
      "...O."
      "..O.."
      ".O...";
      
      unsigned int encode(char *s) {
          unsigned int code = 0;
          for (char *i = s; *i; ++i)
             code = (code << 1) | (*i == 'O');
          return code;
      }
      
      char **decode(unsigned int x) {
          char **s = malloc(6*sizeof(char*));
          for (int i = 0; i < 6; ++i)
              s[i] = malloc(5);
          for (int i = 0; i < 6; ++i) {
              for (int j = 0; j < 5; ++j) {
                  s[5-i][4-j] = ".O"[(x >> (i * 5 + j)) & 1];
              }
          }
          return s;
      }
      
      int main(){
          freopen("/mnt/sdcard/-/gk.txt","w",stdout);
          unsigned int k = encode(K),a = encode(A),o = encode(O),y = encode(Y),b = encode(B),g = encode(G),r = encode(R),rp = encode(RP);
          char **arr[] = {decode(k),decode(0),decode(a),decode(0),decode(k),decode(0),decode(o),decode(0),decode(y),decode(0),decode(0),decode(b),decode(0),decode(a),decode(0),decode(g),decode(0),decode(o),decode(0),decode(r),decode(0),decode(0),decode(rp),decode(0),decode(rp),decode(0),decode(rp)};
          char s[sizeof(arr)/sizeof(char**)*6*(5+1)+1], *c = s;
          for (int i = 0; i < 6; ++i) {
              for (int j = 0; j < sizeof(arr) / sizeof(char**); ++j)
                  for (int k = 0; k < 5; ++k)
                      *c++ = arr[j][i][k];
              *c++ = '\n';
          }
          *c = 0;
          puts(s);
      }
      Ответить
    • Я НЕ ПОНЯЛ, ОТКУДЫ В ПОСТЕ ВЗЯЛИСЬ ЛИШНИЕ ПЕРЕВОДЫ СТРОК?
      Ответить
    • Лучше бы на осциллограф вывел.
      Ответить
      • Я НЕ УМЕЮ В ОСУМЛОГРАФЫ, И Я НЕ ЗНАЮ КАК ТАМ МОЖНО ИСПОЛЬЗОВАТЬ "J".
        Ответить
        • > ОСУМЛОГРАФЫ

          Осумло́графы (англ. OCaml-graph) — алгоритмы на графах, написанные на языке OCaml[1]

          tcp://wikipedia.org/ru/Осумлографы
          Ответить
    • Что делают сишники, когда в либах конфликтуют имена?
      Ответить
      • Они просто не делают так, чтобы конфликтовали имена.
        Ответить
        • Весело. В termios, вилимо, есть какая-то переменая process, и ещё в другом хэдэре есть такая же. Прога выводит из-за этого какую-то хуйню. Мне что, брать сорцы, и заменять в них все вхождения "process" на "another_process"?
          Ответить
    • Эй, Гейб! Когда Half-Life 3 выпустишь?
      https://imgur.com/bbQ8i8C
      Ответить

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