1. Pascal / Говнокод #28774

    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
    function ReplaceHTMLSpec(First, Last, Text, RepTo, RepEd:string):string;
    var
      P:Integer;
      Temp:string;
    begin
      Temp:='';
      while True do
      begin
        P:=AnsiPos(First, Text); // нашли первое вхождение тега...
        if P =0 then Break;
        begin
          Delete(Text, P, Length(First)); // обработали тег...
          Insert(RepTo, Text, P);
          P:=PosEx(Last,Text,P); // ищем вхождение закрывающего тега...
          if P > 0 then
          begin
            Delete(Text, P, Length(Last)); // обработали тег.
            Insert(RepEd, Text, P);
          end;
        end;
      end;
      Result:=text;
    end;
    
    function DecorateText(S:string):string;
    var
      Temp:string;
    begin
      Result:=s;
    
     {замена некоторых распространенных тегов}
      Result:=StringReplace(Result,'<br />','',[rfreplaceall]); // движок не режет переводы строк, нет необходимости заменять <br> на #13#10.
      Result:=StringReplace(Result,'&quot;','"',[rfreplaceall]);
      Result:=StringReplace(Result,'&amp;','&',[rfreplaceall]);
      Result:=StringReplace(Result,'&lt;','<',[rfreplaceall]);
      Result:=StringReplace(Result,'&gt;','>',[rfreplaceall]);
      Result:=StringReplace(Result,'<i>','[i]',[rfreplaceall]);
      Result:=StringReplace(Result,'</i>','[/i]',[rfreplaceall]);
      Result:=StringReplace(Result,'<b>','[b]',[rfreplaceall]);
      Result:=StringReplace(Result,'</b>','[/b]',[rfreplaceall]);
    
      Temp:='';
      Result:=ReplaceHTMLSpec('<span style="color:white;">','</span>',Result,'[color=white]','[/color]');
      Result:=ReplaceHTMLSpec('<span style="color:red;">','</span>',Result,'[color=red]','[/color]');
      Result:=ReplaceHTMLSpec('<span style="color:blue;">','</span>', Result, '[color=blue]','[/color]');
      Result:=ReplaceHTMLSpec('<span style="color:green;">','</span>',Result,'[color=green]','[/color]');
      Result:=ReplaceHTMLSpec('<pre><code class="">','</code></pre>',Result,'[code]','[/code]');
      Result:=ReplaceHTMLSpec('<span style="font-size:10px;">','</span>',Result,'[size=10]','[/size]');
      Result:=ReplaceHTMLSpec('<span style="font-size:15px;">','</span>',Result,'[size=15]','[/size]');
      Result:=ReplaceHTMLSpec('<span style="font-size:20px;">','</span>',Result,'[size=20]','[/size]');
      Result:=ReplaceHTMLSpec('<span style="text-decoration:underline;">','</span>',Result,'[u]','[/u]');
      Result:=ReplaceHTMLSpec('<span style="text-decoration:line-through;">','</span>',Result,'[s]','[/s]');
      Result:=ReplaceHTMLSpec('<span style="text-decoration:blink;">','</span>',Result,'[blink]','[/blink]');
    end;

    Процедура для замены HTML-тегов на bb-codes, для их корректной обработки движком сайта,
    при копировании/перепостинге комментария флудером.

    DOKTOP_CMErMA, 27 Апреля 2023

    Комментарии (1)
  2. JavaScript / Говнокод #28756

    −1

    1. 1
    console.log(...($$ = $ => (~-~-$ && $$(~-$), (_$ = $_ => $ % (_[~~$_] ??= $) ? _$(-~$_) : _)()))((_ = []) + -~_ + -_ + -_))

    Как ровные пацаны выводят в консоль первые 25 простых чисел

    sex_mashina, 20 Апреля 2023

    Комментарии (7)
  3. Java / Говнокод #28755

    −1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    private boolean orPredicate;
    
        public boolean isOrPredicate() {
            return orPredicate;
        }

    sbnet, 19 Апреля 2023

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

    0

    1. 1
    2. 2
    printf ("%d file%s processed", nfiles,
            nfiles != 1 ? "s" : "");

    Из официального гайда "GNU" по написанию кода на "C".

    JloJle4Ka, 17 Апреля 2023

    Комментарии (1005)
  5. Lua / Говнокод #28744

    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
    local function isEven(number)
        local code = "return "
        for i = 1, number do
            code = code .. "false"
            if i ~= number then
                code = code .. " =="
            end
        end
    
        return load(code)()
    end
    
    print("Enter number: ")
    if isEven(tonumber(io.read())) then
        print("Number is even")
    else
        print("Number is odd")
    end

    Определяет чётность числа. Работает для чисел >= 1 (Желательно <= 1000, чем лучше компьютер, тем больше)

    pidoras123, 16 Апреля 2023

    Комментарии (12)
  6. Python / Говнокод #28735

    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
    from miditk.smf    import MidiSequence
    from miditk.common import constants
    from sys           import argv
    import datetime
    
    sequence = MidiSequence.fromfile(argv[1])
    dt0      = datetime.datetime(1,1,1)
    tail     = ''
    
    for time, group in sequence.events_by_time():
         ms          = datetime.timedelta(milliseconds=time)
         pretty_time = (dt0+ms).strftime('%M:%S.%f')[:-4]
         
         for ev in group:
             if ev.meta_type == constants.TEXT:
                 text = ev.data.decode('windows-1251')
                 if text and (text[0] == '@' or text[0] == '/' or text[0] == '\\'):
                     if tail: # выводим отложенный текст
                         if tail[0] == '\\': # отбиваем абзац
                             print(f'[{pt}]') 
                         if tail[0] == '@':  # шапка, убираем префиксы типа @T, @L
                             print(f'[{pt}]{tail[2:]}')
                         else:
                             print(f'[{pt}]{tail[1:]}')
                     pt = pretty_time
                     tail = text
                 else:        # откладываем текст на потом
                   tail = tail + text

    Наговнякал на коленках конь-вертер текстов песен из .KAR (.midi со словами в событиях типа 1 = TEXT) в .LRC, чтобы готовые тексты можно было использовать с проигрывателями mp3- или flac-файлов.

    Зависит от https://pypi.org/project/miditk-smf/

    ropuJIJIa, 12 Апреля 2023

    Комментарии (1324)
  7. Java / Говнокод #28697

    −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
    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
    package sample.Model;
    
    import static sample.Main.*;
    import static sample.Model.Move.countEnemy;
    
    class EnemyBang {
        private static double here[] = {0, 0, 0, 0};
    
        static void create() {
            int speedOfCreate = 150;
            if (countEnemy % speedOfCreate == 0) EnemyBang.start();
            else if (countEnemy % speedOfCreate == speedOfCreate - 1) EnemyBang.finish();
            else {
                EnemyBang.move();
                EnemyBang.heroPain();
            }
        }
    
        private static void whereIsPlayer(){
            if (image.getY()<enemy.getY()) here[0] = enemy.getY()-image.getY(); //w
            if (image.getY()>enemy.getY()) here[1] = image.getY()-enemy.getY();//s
            if (image.getX()<enemy.getX()) here[2] = enemy.getX()-image.getX();//a
            if (image.getX()>enemy.getX()) here[3] = image.getX()-enemy.getX();//d
        }
    
        private static void start() {
            bang.setX(enemy.getX()+10);
            bang.setY(enemy.getY()+10);
            bang.setVisible(true);
            here[0] = 0;
            here[1] = 0;
            here[2] = 0;
            here[3] = 0;
            EnemyBang.whereIsPlayer();
        }
    
        private static void finish() {
            bang.setVisible(false);
    
        }
    
        private static void heroPain() {
            int pain = 40;
            Health.change(bang, pain);
                if (CollisionObjects.check(bang, image)) {
                    bang.setVisible(false);
                    explosive.stop();
                    explosive.play();
                }
            }
    
        private static void move(){
            int i = 0;
            int mover = 5;
            for (double a: here) {
                if (a != 0) i++;
            }
            if (i > 1) mover /= Math.sqrt(2);
            if (here[0]!=0 && ((here[2]/here[0]<=Math.sqrt(3) && here[2]!=0)||(here[3]/here[0]<=Math.sqrt(3) && here[3]!=0)
                    || (here[2]==0 && here[3]==0))) {
                bang.setY(bang.getY() - mover);
            }
            if (here[1]!=0 && ((here[2]/here[1]<=Math.sqrt(3) && here[2]!=0)||(here[3]/here[1]<=Math.sqrt(3) && here[3]!=0)
                    || (here[2]==0 && here[3]==0))) {
                bang.setY(bang.getY() + mover);
            }
            if (here[2]!=0 && ((here[0]/here[2]<=Math.sqrt(3) && here[0]!=0)||(here[1]/here[2]<=Math.sqrt(3) && here[1]!=0)
                    || (here[1]==0 && here[0]==0))) {
                bang.setX(bang.getX() - mover);
            }
            if (here[3]!=0 && ((here[0]/here[3]<=Math.sqrt(3) && here[0]!=0)||(here[1]/here[3]<=Math.sqrt(3) && here[1]!=0)
                    || (here[1]==0 && here[0]==0))) {
                bang.setX(bang.getX() + mover);
            }
        }
    }

    Всем привет, это моя третья программа, друг который мне помогает учиться отправил меня на этот сайт - сказал сюда отправить, потому что хуже кода он не видел. Подскажите, что тут не так? Он просто не комментирует

    Tkachenko1380, 09 Апреля 2023

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

    +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
    if(pfocus=="Balanced")
    		if(StatRank>=4)
    			if(Age>=4&&Age<=10)
    				Str+=0.4*StrMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				End+=0.4*EndMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				Spd+=0.4*SpdMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				Base_BP+=1*BPMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				MaxKi+=1*KiMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    			else
    				Str+=4*StrMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				End+=4*EndMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				Spd+=4*SpdMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				Base_BP+=1*BPMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				MaxKi+=1*KiMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    			if(Age>=10&&Age<=15)
    				Str+=0.4*StrMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				End+=0.4*EndMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				Spd+=0.4*SpdMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				Base_BP+=1*BPMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				MaxKi+=1*KiMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    			else
    				Str+=4*StrMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				End+=4*EndMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				Spd+=4*SpdMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				Base_BP+=1*BPMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				MaxKi+=1*KiMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    			if(Age>=15&&Age<=20)
    				Str+=0.4*StrMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				End+=0.4*EndMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				Spd+=0.4*SpdMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				Base_BP+=1*BPMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				MaxKi+=1*KiMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    			else
    				Str+=4*StrMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				End+=4*EndMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				Spd+=4*SpdMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				Base_BP+=1*BPMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				MaxKi+=1*KiMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    			if(Age>=20&&Age<=25)
    				Str+=0.4*StrMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				End+=0.4*EndMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				Spd+=0.4*SpdMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				Base_BP+=1*BPMod*timemult*StatRank*HBTCMod*World_Stat_Mod
    				MaxKi+=1*KiMod*timemult*StatRank*HBTCMod*World_Stat_Mod

    и далее ещё 300 строк такого говна. я не думал, что кроме мемов, ещё когда-нибудь с таким столкнусь

    kcalbCube, 09 Апреля 2023

    Комментарии (806)
  9. Java / Говнокод #28658

    +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
    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
    Statement stmt1 = null;
            ResultSet rs1 = null;
         
            try {
                StringBuilder sb = new StringBuilder(2000);
                String sql = "";
                String ss = "";
                String ss_begin = "";
                String ss_middle = "";
                String ss_end = "";
                int xcount = 0;
                String XXX_ID = "";
                String XXX_NAME = "";
    
    
                if (c.XLANG_ID == 1) {
                    sql = sql + " SELECT  99 , 'Исходные'  FROM dual union all ";
                    sql = sql + " SELECT  1 , 'Непарные исходные'  FROM dual union all ";
                    sql = sql + " SELECT  2 , 'Временная'            FROM dual union all ";
                    sql = sql + " SELECT  3 , 'Встречные'         FROM dual ";
                    //sql = sql +  " SELECT  4 , 'Непарные встречные'         FROM dual ";
                } else if (c.XLANG_ID == 2) {
                    sql = sql + " SELECT  99 , 'Base BPEBs' FROM dual union all ";
                    sql = sql + " SELECT  1 , 'Base BPEBs unpaired' FROM dual union all ";
                    sql = sql + " SELECT  2 , 'Temporary BPEB' FROM dual union all ";
                    sql = sql + " SELECT  3 , 'Generated BPEBs' FROM dual ";
                    //sql = sql +  " SELECT  4 , 'Generated BPEBs unpaired' FROM dual ";
                }
    
                stmt1 = this.con.createStatement();
                rs1 = stmt1.executeQuery(sql);
    
                while (rs1.next()) {
                    xcount = xcount + 1;
                    XXX_ID = rs1.getString(1);
                    XXX_NAME = rs1.getString(2);
    
                    sb = sb.append("<msg>")
                            .append("<xid>").append(XXX_ID).append("</xid>")
                            .append("<xname>").append(vtb.budget.osa.tools.Tools.stringToXML(XXX_NAME)).append("</xname>")
    
                            .append("</msg>");
                }
                rs1.close();
                stmt1.close();
    
                ss_begin = ss_begin + "<xml id='XML_table1'>"
                        + "<tab1>";
    
                ss_end = ss_end
                        + "</tab1>"
                        + "</xml>";
    
                if (xcount == 0) {
                    ss_middle = ss_middle + "<msg>"
                            + "<xid></xid>"
                            + "<xcode></xcode>"
                            + "<xname></xname>"
                            + "</msg>";
                } else {
                    ss_middle = sb.toString();
                }
    
    
                ss = ss_begin + ss_middle + ss_end;
    
                ss_begin = null;
                ss_middle = null;
                ss_end = null;
                sb = null;
    
    
                return ss;
    
            }

    yamert89, 04 Апреля 2023

    Комментарии (35)
  10. Python / Говнокод #28655

    −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
    def get_decrease_fan_speed_delta(fan_speed: float, delta: float, turn_off: bool):
        # if the fan is already running slower than minimum speed
        if fan_speed < MIN_FAN_SPEED:
            # we ignore the turn_off argument and always set the fan off
            return -fan_speed
        # if fan would be running slower than minimum speed after decreasing it by delta:
        if (fan_speed - delta) < MIN_FAN_SPEED:
            if turn_off:
                return -fan_speed  # turn the fan off
            else:
                return -fan_speed + MIN_FAN_SPEED  # make it run at minimum speed
        return -delta
    
    
    def get_increase_fan_speed_delta(fan_speed, delta):
        new_fan_speed = fan_speed + delta
        # if fan would be running faster than maximum speed
        if new_fan_speed > 100:
            return 100 - fan_speed  # cap it at 100%
        elif new_fan_speed < MIN_FAN_SPEED:
            return MIN_FAN_SPEED - fan_speed  # jump to minimum fan speed
        return delta
    
    
    def compute_fan_speed_delta(temp: float, temp_delta: float, fan_speed: float):
        if temp >= HOT:
            return get_increase_fan_speed_delta(fan_speed, 100.0)
    
        if temp <= COLD:
            # if temperature is decreasing, we slowly decrease the fan speed
            if temp_delta < 0.0:
                return get_decrease_fan_speed_delta(fan_speed, FAN_DELTA, turn_off=True)
            # if temperature is constant or increasing we don't change fan speed
            # until it rises above COLD
            return 0.0
    
        # if temperature is decreasing we decrease fan speed slowly
        if temp_delta < 0.0:
            return get_decrease_fan_speed_delta(fan_speed, FAN_DELTA, turn_off=False)
    
        # if temperature is increasing we increase fan speed slowly
        if temp_delta > 0.0:
            return get_increase_fan_speed_delta(fan_speed, FAN_DELTA)
    
        # if temperature is not changing, don't change the fan speed
        return 0.0

    GAMER, 30 Марта 2023

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