1. Python / Говнокод #23584

    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
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    import tkinter
    import random
    
    # constants
    WIDTH = 540
    HEIGHT = 480
    BG_COLOR = 'white'
    MAIN_BALL_COLOR = 'blue'
    MAIN_BALL_RADIUS = 25
    COLORS = ['aqua', 'fuchsia', 'pink', 'yellow', 'gold', 'chartreuse']
    NUM_OF_BALLS = 9
    MAX_RADIUS = 35
    MIN_RADIUS = 15
    DELAY = 8
    INIT_DX = 1
    INIT_DY = 1
    ZERO = 0
    
    # ball class
    class Ball():
        def __init__(self, x, y, r, color, dx=0, dy=0):
            self.x = x
            self.y = y
            self.r = r
            self.color = color
            self.dx = dx
            self.dy = dy
    
        def draw(self):
            canvas.create_oval(self.x - self.r, self.y - self.r, self.x + self.r, self.y + self.r, fill=self.color,
                               outline=self.color)
    
        def hide(self):
            canvas.create_oval(self.x - self.r, self.y - self.r, self.x + self.r, self.y + self.r, fill=BG_COLOR,
                               outline=BG_COLOR)
    
        def is_collision(self, ball):
            a = abs(self.x + self.dx - ball.x)
            b = abs(self.y + self.dy - ball.y)
            return (a * a + b * b) ** 0.5 <= self.r + ball.r
    
        def move(self):
            # collision with the walls
            if (self.x + self.r + self.dx >= WIDTH) or (self.x - self.r + self.dx <= ZERO):
                self.dx = -self.dx
            if (self.y + self.r + self.dy >= HEIGHT) or (self.y - self.r + self.dy <= ZERO):
                self.dy = -self.dy
    
            self.hide()
            self.x += self.dx
            self.y += self.dy
            if self.dx * self.dy != 0:
                self.draw()
    
    # process the mouse events
    def mouse_click(event):
        global main_ball
        if event.num == 1:  # left mouse button
            if 'main_ball' not in globals():  # старт
                main_ball = Ball(event.x, event.y, MAIN_BALL_RADIUS, MAIN_BALL_COLOR, INIT_DX, INIT_DY)
                if main_ball.x > WIDTH / 2:
                    main_ball.dx = -main_ball.dx
                if main_ball.y > HEIGHT / 2:
                    main_ball.dy = -main_ball.dy
                main_ball.draw()
    
    # create a list of objects-balls
    def create_list_of_balls(number):
        lst = []
        return lst
    
    # games main loop
    def main():
        if 'main_ball' in globals():
            main_ball.move()
        root.after(DELAY, main)
    
    # create a window, the canvas and start game
    root = tkinter.Tk()
    root.title("Colliding Balls")
    canvas = tkinter.Canvas(root, width=WIDTH, height=HEIGHT, bg=BG_COLOR)
    canvas.pack()
    canvas.bind('<Button-1>', mouse_click)
    canvas.bind('<Button-2>', mouse_click, '+')
    canvas.bind('<Button-3>', mouse_click, '+')
    balls = create_list_of_balls(NUM_OF_BALLS)
    if 'main_ball' in globals():  # for restarts
        del main_ball
    main()
    root.mainloop()

    Quatrix, 14 Декабря 2017

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

    0

    1. 1
    if (!($('.check-silver').css('display') == 'none' ))

    VoiceOfFate, 14 Декабря 2017

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

    +2

    1. 1
    2. 2
    3. 3
    Telegram - считается "секьюрным" благодаря маркетенгу, вся его безопасность 
     основана на закрытости протокола.
    Дискач.

    хуита, 14 Декабря 2017

    Комментарии (41)
  4. Java / Говнокод #23581

    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
    import javax.sound.midi.*;
    import java.io.*;
    
    public class MusicTest2 {
        public static void main(String[] args) throws Exception{
            BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
    
            while(true) {
                System.out.print("Введите номер инструмента: ");
                int instrument = Integer.parseInt(reader.readLine());
                if(instrument > 127 || instrument < 0){
                    System.out.println("Error! Недопустимое значение!");
                    break;
                }
    
                System.out.print("Введите номер ноты: ");
                int nota = Integer.parseInt(reader.readLine());
                if(nota > 127 || nota < 0){
                    System.out.println("Error! Недопустимое значение!");
                    break;
                }
    
                MusicTest2 testik = new MusicTest2();
                testik.play(instrument, nota);
            }
        }
    
        public void play(int instrument, int nota){
            try{
                Sequencer sequencer = MidiSystem.getSequencer();
                sequencer.open();
    
                Sequence seq = new Sequence(Sequence.PPQ, 4);
    
                Track track = seq.createTrack();
    
                ShortMessage a = new ShortMessage();
                a.setMessage(192, 1, instrument, 100);
                MidiEvent changeInstrument = new MidiEvent(a, 1);
                track.add(changeInstrument);
    
                ShortMessage b = new ShortMessage();
                b.setMessage(144, 1, nota, 100);
                MidiEvent event = new MidiEvent(b, 1);
                track.add(event);
    
                ShortMessage c = new ShortMessage();
                c.setMessage(128, 1, nota, 100);
                MidiEvent event1 = new MidiEvent(c, 16);
                track.add(event1);
    
                sequencer.setSequence(seq);
                sequencer.start();
            }catch(Exception ex){
                ex.printStackTrace();
            }
        }
    }

    Игра на музыкальных инструментах! Как улучшить код?

    babushkaAntona, 13 Декабря 2017

    Комментарии (0)
  5. JavaScript / Говнокод #23580

    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
    function echeck(str) {
    		var at="@"
    		var dot="."
    		var lat=str.indexOf(at)
    		var lstr=str.length
    		var ldot=str.indexOf(dot)
    		if (str.indexOf(at)==-1){
    		  	alert("please enter  Email address");
    		   return false
    		}
    		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
    		   alert("please enter a valid Email address");
    		   return false
    		}
    		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
    		    alert("please enter a valid Email address");
    		    return false
    		}
    		 if (str.indexOf(at,(lat+1))!=-1){
    		    alert("please enter a valid Email address");
    		    return false
    		 }
    		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
    		   alert("please enter a valid Email address");
    		    return false
    		 }
    		 if (str.indexOf(dot,(lat+2))==-1){
    		    alert("please enter a valid Email address");
    		    return false
    		 }		
    		 if (str.indexOf(" ")!=-1){
    		    alert("please enter a valid Email address");
    		    return false
    		 }
     		 return true					
    	}

    Пуленепробиваемая валидация эмайла

    flashkaua, 13 Декабря 2017

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

    −1

    1. 1
    Кого ещё затрахала на "YouTube" дебильная реклама "Reg.Ru" с  дикарской музычкой?

    COWuTEJIbTBOEuMAMKu, 13 Декабря 2017

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

    +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
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    class Задачи
        {
            public static ФормаМоделирование Форма;
    
            public Задачи(ФормаМоделирование f)
            {
                Форма = f;          
            }
    
            public static void ЗД_1()
            {
                bool Необход_рисов_первой_вертикальной = true;
                int Tконца_отрисовки;
                int тик_рисования;
                int Т_С_буф=Общая_Память.Тсеанса.T1;
              
    t1:
                Системное_ПО.поток_1_старт.WaitOne();
                тик_рисования = Общая_Память.Тик_Таймера;
                Tконца_отрисовки = Общая_Память.Тик_Таймера + Общая_Память.Тсеанса.T1;
                while (true)
                {
                    #region Задача превысила Т сеанса
                                   
                    if (Системное_ПО.Задача_превысила_Т_сеанса.Т1)
                    {
                        Tконца_отрисовки = Общая_Память.Тик_Таймера;
                       Системное_ПО.Задача_превысила_Т_сеанса.Т1 = false;
                        Общая_Память.Тсеанса.T1 = Т_С_буф;
                        Общая_Память.Тсеанса.T1--;
                    }
                    #endregion
                    if (Общая_Память.Флаг_остановка_задачи.T1 == false)
                          {
                        #region Вывод первой вертикальной линии                  
                        if (Необход_рисов_первой_вертикальной)
                              {
                                  for (double i = 0; i <= 1; i += 0.2)
                                      Форма.ГрафикЗадача1.Invoke((MethodInvoker)(delegate () { Форма.ГрафикЗадача1.Series["Моделирование"].Points.AddXY(Общая_Память.Тик_Таймера, i); }));
                                   Необход_рисов_первой_вертикальной = false;
                              }
                        #endregion
    
                        #region Вывод последней горизонтальной и вертикальной линии
                        if (Общая_Память.Тик_Таймера == Tконца_отрисовки)
                              {
                                for (double i = тик_рисования; i <= Общая_Память.Тик_Таймера; i += 0.2)
                                    Форма.ГрафикЗадача1.Invoke((MethodInvoker)(delegate () { Форма.ГрафикЗадача1.Series["Моделирование"].Points.AddXY(i, 1); }));
                                for (double i = 0; i <= 1; i += 0.2)
                                    Форма.ГрафикЗадача1.Invoke((MethodInvoker)(delegate () { Форма.ГрафикЗадача1.Series["Моделирование"].Points.AddXY(Общая_Память.Тик_Таймера, i); }));
                                Необход_рисов_первой_вертикальной = true;
                                Системное_ПО.Задача_выполняется.Т1 = false;
                               //    Общая_Память.Тсеанса.T1++;
                                goto t1;
                          }
                        #endregion
    
                        #region Вывод горизонтальной линии
                        if (тик_рисования != Общая_Память.Тик_Таймера)
                        {
                            for (double i = тик_рисования; i <= Общая_Память.Тик_Таймера; i += 0.2)
                                Форма.ГрафикЗадача1.Invoke((MethodInvoker)(delegate () { Форма.ГрафикЗадача1.Series["Моделирование"].Points.AddXY(i, 1); }));
                            тик_рисования = Общая_Память.Тик_Таймера;
    
                        }
                        #endregion
                          }
                    else
                    {
                        #region Вывод Аварийной последней горизонтальной и вертикальной линии
                        for (double i = тик_рисования; i <= Общая_Память.Тик_Таймера; i += 0.2)
                            Форма.ГрафикЗадача1.Invoke((MethodInvoker)(delegate () { Форма.ГрафикЗадача1.Series["Моделирование"].Points.AddXY(i, 1); }));
                        for (double i = 0; i <= 1; i += 0.2)
                            Форма.ГрафикЗадача1.Invoke((MethodInvoker)(delegate () { Форма.ГрафикЗадача1.Series["Моделирование"].Points.AddXY(Общая_Память.Тик_Таймера, i); }));
                        Необход_рисов_первой_вертикальной = true;
                        Системное_ПО.Задача_выполняется.Т1 = false;
                        break;
                        #endregion
                    }
                    Thread.Sleep(TimeSpan.FromMilliseconds(500));
                }
            }

    Это из чьей-то курсовой. Там весь проект такой.
    Проект нашел на фрилансе и заказчик к ТЗ приложил его как пример того, как надо сделать его курсовую.
    Я думаю, что написавший это стер себе пальцы и кнопки переключения раскладки клавиатуры)
    Может я чего-то не понимаю и знающие люди мне объяснят в чем вообще смысл? зачем?

    camper, 12 Декабря 2017

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

    0

    1. 1
    Всегда стеснялся спросить, что на Говнокоде значит + и -  в оценки кода.

    tyrin, 10 Декабря 2017

    Комментарии (7)
  9. bash / Говнокод #23575

    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
    #!/bin/sh
    # 
    # Simple script to enable CPU cores automatically again if cooling state is
    # 3 or lower.
    #
    
    set -e
    
    get_cooling_state() {
            echo $(cat /sys/devices/virtual/thermal/cooling_device0/cur_state)
    }
    
    enable_cpu() {
            if [ $(cat /sys/devices/system/cpu/cpu$1/online) = 0 ]; then
                    echo 1 > /sys/devices/system/cpu/cpu$1/online || true
            fi
    }
    
    while true; do
            for c in 0 1 2 3; do
                    if [ $(get_cooling_state) -le 3 ]; then
                            enable_cpu $c
                    fi
            done
            sleep 5
    done

    Вот такой замечательный код занимается защитой процессора в стандартных сборках под OrangePi на Allwinner H5
    https://github.com/orangepi-xunlong/OrangePiH5_scripts/blob/master/platform-scripts/OrangePi_corekeeper.sh
    Думаю, говорить о том, как такой код работает, и насколько лучше был бы тут простенький скрипт, скажем, на питоне, смысла нет

    losetup, 10 Декабря 2017

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

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    static void Main(string[] args) {
        int ? ival1 = 1;
        Console.WriteLine(ival1.GetType());
        //System.Int32    
    
        int ? ival2 = null;
        Console.WriteLine(ival2.GetType());
        //System.NullReferenceException Ссылка на объект не указывает на экземпляр объекта.         
    }

    Че, пацаны, си шарп?

    KbIC9I-KPbIC9I, 10 Декабря 2017

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