Jawa / Говнокод #5939 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
package t;import java.awt.*;import java.awt.event.*;import javax.swing.*;class M
extends JFrame implements Runnable{int T=100,s,W=500,H=W,x=T,l=10,y,i,S,L;M(){
setBounds(T,T,W,H);new Thread(this).start();}public void paint(Graphics g){super
.paint(g);g.drawOval(x,y,l,l);g.drawRect(i,H-l,T,l);g.drawString("Sco "+s,l,T);}
public void processKeyEvent(KeyEvent e){int k=e.getKeyCode();if(k==37)i-=l;if(k
==39)i+=l;super.processKeyEvent(e);}public static void main(String[]args){new M(
).setVisible(true);}public void run(){while(true){try{Thread.sleep(5);}catch
(Exception e){}x+=S==0?1:-1;y+=L==0?1:-1;if(y>H-l){if(x>i&&x<i+T){s++;}else{S=0;
L=0;x=T;y=0;}}if(x>W-l)S=1;if(x<l)S=0;if(y>H-l)L=1;if(y<l)L=0;repaint();}}}

рабочий JSwing теннис :9 строчек

Запостил: Egor Egor, (Updated )

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

  • Так и до 2.5 довести можно.

    P.S. Жаль, видимо, нет там директив типа #define pv public void, можно было бы ещё сократить.
    Ответить
  • так можно и в одну строчку. При подсчете строчек нужно нормальное форматирование
    Ответить
  • а тут не больше 80- буков в строчке (по netbeans красной линии форматировалось)
    Ответить
  • Оптимизированный вариант (на 62 символа короче):
    import javax.swing.*;import java.awt.*;import java.awt.event.*;class M extends
    JFrame{int T=100,s,W=500,H=W,x=T,l=10,y,i,S=1,L=S;M(){setBounds(T,T,W,H);new
    Thread(){public void run(){while(1>0){try{Thread.sleep(5);}catch(Exception e){}
    x+=S;y+=L;if(y>H-l){if(x>i&&x<i+T){s++;L=-1;}else{L=S=1;x=T;y=0;}}if(x>W-l)S=-1
    ;if(x<l)S=1;if(y<l)L=1;repaint();}}}.start();}public void paint(Graphics g){
    super.paint(g);g.drawOval(x,y,l,l);g.drawRect(i,H-l,T,l);g.drawString("Sco "+s,
    l,T);}public void processKeyEvent(KeyEvent e){int k=e.getKeyCode();if(k>36&&k<
    40)i+=l*(k-38);super.processKeyEvent(e);}public static void main(String[]a){new
    M().setVisible(1>0);}}
    Ответить
      • Ну можно и в строчках.
        import javax.swing.*;import java.awt.*;import java.awt.event.*;class M extends
        JFrame{int T=100,s,W=500,H=W,x=T,l=10,y,i,S=1,L=S;M(){setBounds(T,T,W,H);new
        Thread(){public void run(){while(1>0){try{Thread.sleep(5);}catch(Exception e){}
        x+=S;y+=L;if(y>H-l){if(x>i&&x<i+T){s++;L=-1;}else{L=S=1;x=T;y=0;}}if(x>W-l)S=-1
        ;if(x<l)S=1;if(y<l)L=1;repaint();}}}.start();}public void paint(Graphics g){
        super.paint(g);g.drawOval(x,y,l,l);g.drawRect(i,H-l,T,l);g.drawString("Sco "+s,
        l,T);}public void processKeyEvent(KeyEvent e){int k=e.getKeyCode();if(k>36&&k<
        40)i+=l*(k-38);}public static void main(String[]a){new M().setVisible(1>0);}}
        Ответить
        • >>while(true){
          >>while(1>0){
          Уже тогда унарное И на побитовое заменить стоило бы, чего уж.
          Ответить
  • Ха. При минусовании ниже -11 дает ошибку
    "Ошибка учета голоса!
    Обновите страницу и попытайтесь еще раз" 🙂
    Страйкеру на доработку !
    Ответить

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

Переведи на "PHP", guest!

    А не использовать ли нам bbcode?


    8