1. Список говнокодов пользователя JloJle4Ka

    Всего: 20

  2. Си / Говнокод #28582

    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
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    #include <stdio.h>
    #include <stdlib.h>
    #include <errno.h>
    int main ()
    {
       char address[128], fname[128], command[128];
       FILE *tempfile;
    
       strcpy(fname , tmpnam(NULL));
       tempfile = fopen (fname, "w");     /* create temporary file */
       if (tempfile == NULL)              /* error - didn't create file */
       {
          printf("Internal failure #1 please report %d\n", errno);
          exit (1);
       }
       fprintf(tempfile, "Thank you very much for caring about our cause\n");
       fprintf(tempfile, "this letter is just to tell you how much we\n");
       fprintf(tempfile, "really think you are wonderful for caring.\n\n");
       fprintf(tempfile, "Sincerely,\n\n");
       fprintf(tempfile, "Jane Doe, Executive Thanker\n");
    fclose (tempfile);
       gets(address);                            /* read in email address */
    
       sprintf(command, "mail -s \"thanks for caring\" %s < %s\n",
               address, fname);                /* create the command */
       system (command);                       /* execute command */
       remove (fname);                         /* clean up */
       exit (0);
    }

    Игра: найди вулна.

    JloJle4Ka, 03 Февраля 2023

    Комментарии (18)
  3. Куча / Говнокод #28579

    0

    1. 1
    https://career.habr.com/vacancies?s[]=2&s[]=3&s[]=82&s[]=4&s[]=5&s[]=72&s[]=1&s[]=75&s[]=6&s[]=77&s[]=7&s[]=83&s[]=84&s[]=8&s[]=85&s[]=73&s[]=9&s[]=86&s[]=106&type=all

    Что бы это могло значить...

    JloJle4Ka, 31 Января 2023

    Комментарии (40)
  4. Haskell / Говнокод #28539

    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
    18. 18
    19. 19
    20. 20
    #!/usr/bin/guile -s
    !#
    
    (define (pt n s)
      (cond ((< n 1) 0)
            ((= n 1) 1)
            ((= s 0) 0)
            ((= s 1) 1)
            ((= s n) 1)
            ((> s n) 0)
            (else (+ (pt (- n 1) s) (pt (- n 1) (- s 1))))))
    
    (display (pt 1 1)) ;; 1
    (newline)
    
    (display (pt 3 2)) ;; 2
    (newline)
    
    (display (pt 5 3)) ;; 6
    (newline)

    Лисп-загадка: угадайте, что делает этот (вышеприведённый) код.

    JloJle4Ka, 05 Января 2023

    Комментарии (35)
  5. Perl / Говнокод #28535

    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
    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
    #!/usr/bin/guile -s
    !#
    
    (define (square x)
      (* x x))
    
    (define (square_sum x y)
      (+ (square x) (square y)))
    
    (define (tmax x y z)
      (cond ((and (>= x y) (>= x z)) x)
            ((and (>= y x) (>= y z)) y)
            (else z)))
    
    (define (tms x y z)
      ((cond ((= (tmax x y z) x)
              (if (> y z)
                  (square_sum x y)
                  (square_sum x z)))
             ((= (tmax x y z) y)
              (if (> x z)
                  (square_sum x y)
                  (square_sum y z)))
             ((= (tmax x y z) z)
              (if (> x y)
                  (square_sum x z)
                  (square_sum y z)))
             (else 0))))
    
    (display "Ans: ")
    (display (tms 6 5 4))
    (newline)

    Почему не работает?

    JloJle4Ka, 02 Января 2023

    Комментарии (90)
  6. Haskell / Говнокод #28529

    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
    18. 18
    19. 19
    ;; Sound.
    (xbindkey '(Alt F7) "amixer set Master 1%-")
    (xbindkey '(Alt F8) "amixer set Master 1%+")
    
    (define muted 0)
    (run-command "amixer set Master 3%")
    
    (xbindkey-function '(Alt F6)
                       (lambda()
                         (cond ((equal? muted 0)
                                (run-command "amixer set Master 0%")
                                (set! muted 1)
                                )
                               (else (begin
                                       (run-command "amixer set Master 3%")
                                       (set! muted 0)
                                       ))
    ;; какой багор
                               )))

    Линукс-загадка!

    JloJle4Ka, 30 Декабря 2022

    Комментарии (18)
  7. C++ / Говнокод #28528

    +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
    ListNode* mergeTwoLists(ListNode* list1, ListNode* list2) {
            bool f;
            ListNode* t;
            return (ListNode*)
                ( 
                    (!list1 * (unsigned long long)list2) + 
                    (!list2 * (unsigned long long)list1) +
                    ((!!list1 && !!list2 && 
                        (
                            ((f = (list1 -> val <= list2 -> val)) && (t = list1, list1->next = mergeTwoLists(list1 -> next, list2)))||
                            ((!f) && (t = list2, list2->next = mergeTwoLists(list1, list2->next)))
                        )
                    ) * (unsigned long long)t)
                ); 
        }

    2022. Хабр. Итоги.

    JloJle4Ka, 30 Декабря 2022

    Комментарии (96)
  8. Python / Говнокод #28503

    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
    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
    #!/usr/bin/env python3
    
    import sys
    import socket
    
    
    def main():
        if len(sys.argv) != 2:
            print("Программа ожидает 1 аргумент: доменное имя хоста")
            return 1
    
        # Input.
    
        host_name = sys.argv[1]
        print(f"Доменное имя хоста: {host_name}")
    
        host_ip = socket.gethostbyname(host_name)
        print(f"IP-адрес хоста: {host_ip}")
    
        host_port = 33433
        timeout = 2 # Seconds.
    
        receiving_socket = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.IPPROTO_ICMP)
        receiving_socket.setsockopt(socket.SOL_IP, socket.IP_HDRINCL, 1)
        receiving_socket.settimeout(timeout)
        receiving_socket.bind(("", host_port))
    
        sending_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP)
        sending_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
    
        received_ip = None
        current_hop = 1
        max_hop = 100
        while received_ip != host_ip and current_hop < max_hop:
            sending_socket.setsockopt(socket.IPPROTO_IP, socket.IP_TTL, current_hop)
            sus = True
            for i in range(7):
                try:
                    sending_socket.sendto(bytes(str(current_hop), 'utf-8'), (host_ip, host_port))
                    data, addr = receiving_socket.recvfrom(1)
                    if addr:
                        received_ip = addr[0]
                        print(f"hop: {current_hop} -> {received_ip}")
                        sus = False
                        break
                    else:
                        raise "sus"
                except:
                    continue
            if sus:
                print(f"hop: {current_hop} -> *")
            current_hop += 1
    
    
    if __name__ == "__main__":
        main()

    Что-то я давно не заходил... был занят, писал утилиту. Лицензия – «MIT».

    JloJle4Ka, 18 Декабря 2022

    Комментарии (9)
  9. Куча / Говнокод #28101

    0

    1. 1
    Борманд, у тебя спина рыжая!

    Ха-ха, я пошутил, с первым апреля )))

    JloJle4Ka, 01 Апреля 2022

    Комментарии (22)
  10. C++ / Говнокод #28079

    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
    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
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    int main() {
    
      ifstream input_file;
    
      input_file.open("DATA");
      
      string line;
      while (getline(input_file, line)) {
        size_t i = 0, j = 0;
        string fname, sname;
        float score;
    
        char c = line[0];
        while((c != ' ') && (j < line.size())) {
          c = line[j];
          j++;
        }
        fname = line.substr(i, j - i - 1);
        i = j;
        j += 1;
    
        c = line[i];
        while((c != ' ') && (j < line.size())) {
          c = line[j];
          j++;
        }
        sname = line.substr(i, j - i - 1);
        i = j;
        j += 1;
    
        score = stof(line.substr(i, line.size()));
    
        Data dat;
        dat.fname = fname;
        dat.sname = sname;
        dat.score = score;
    
        vec.push_back(dat);
      }
      
      const auto comp_fname = [](Data a, Data b){return a.fname >= b.fname;};
      const auto comp_sname = [](Data a, Data b){return a.sname >= b.sname;};
      const auto comp_score = [](Data a, Data b){return a.score >= b.score;};
    
      const auto dcomp_fname = [](Data a, Data b){return a.fname < b.fname;};
      const auto dcomp_sname = [](Data a, Data b){return a.sname < b.sname;};
      const auto dcomp_score = [](Data a, Data b){return a.score < b.score;};
    
      print(vec);
      char choice = 0, order = 0;
      cout << "Как сортировать (0 - Fфмилия, 1 - Iмя, 2 - CpegHuu_6aJlJl): ";
      cin >> choice;
      cout << "А в какмо порядке?7? (0 - по убыванию, 1 - по возрастанию)Ж ";
      cin >> order;
      
      if (choice == '0') {
        if (order == '0') {
          sort(vec.begin(), vec.end(), comp_fname);
        } else {
          sort(vec.begin(), vec.end(), dcomp_fname);
        }
      } else if (choice == '1') {
        if (order == '0') {
          sort(vec.begin(), vec.end(), comp_sname);
        } else {
          sort(vec.begin(), vec.end(), dcomp_sname);
        }
      } else if (choice == '2') {
        if (order == '0') {
          sort(vec.begin(), vec.end(), comp_score);
        } else {
          sort(vec.begin(), vec.end(), dcomp_score);
        }
      }
    
    // и т.д. ...

    Как вам? Зачёт? Незачёт? Удовлетворительно?

    JloJle4Ka, 12 Марта 2022

    Комментарии (29)
  11. Python / Говнокод #27971

    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
    #!/usr/bin/env python3
    
    import subprocess as sp
    
    lines_pipe = sp.Popen(('xinput', 'list'), stdout=sp.PIPE)
    id_line = str(sp.check_output(('grep', 'Touchpad'), stdin=lines_pipe.stdout))
    
    a = id_line.index("id=") + 3
    b = a
    
    while id_line[b] in set(list("0123456789")):
        b += 1
    
    id = id_line[a:b]
    
    status_pipe = sp.Popen(('xinput', 'list-props', id), stdout=sp.PIPE)
    sp.run(('xinput', ['enable', 'disable'][int(str(sp.check_output(('grep', 'Device Enabled'), stdin=status_pipe.stdout))[-4]=='1')], id))

    Предыдущий прыщескрипт на bash соснул, так как захардкоженный "id", оказалось, иногда может меняться, поэтому скрипт был благополучно перенесён на "Python".

    JloJle4Ka, 27 Января 2022

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