Jump to content

Quicando a bola...


fredericopissarra

Recommended Posts

Num forum que participo alguém pediu para resolver um problema escolar envolvendo uma "bola que quica" (bouncing ball)... Minha resposta, na forma dessa obra de arte (IOCCC):

/* ball.c */
/* Compile with: 'gcc -ansi -o ball ball.c -lm' */
/* Works on linux */
#include <stdio.h>
#include <math.h>
#include <unistd.h>
#include <sys/ioctl.h>
 
             main() {
         short a[4];ioctl
      (0,TIOCGWINSZ,&a);int
    b,c,d=*a,e=a[1];float f,g,
  h,i=d/2+d%2+1,j=d/5-1,k=0,l=e/
 2,m=d/4,n=.01*e,o=0,p=.1;while (
printf("\x1b[H\x1B[?25l"),!usleep(
79383)){for (b=c=0;h=2*(m-c)/i,f=-
.3*(g=(l-b)/i)+.954*h,c<d;c+=(b=++
b%e)==0)printf("\x1B[%dm ",g*g>1-h
*h?c>d-j?b<d-c||d-c>e-b?40:100:b<j
||b>e-j?40:g*(g+.6)+.09+h*h<1?100:
 47:((int)(9-k+(.954*g+.3*h)/sqrt
  (1-f*f))+(int)(2+f*2))%2==0?107
    :101);k+=p,m+=o,o=m>d-2*j?
      -.04*d:o+.002*d;n=(l+=
         n)<i||l>e-i?p=-p
             ,-n:n;}}

Infelizmente o forum não usa fonte monoespaçada para códigos-fonte (deveria)... dai, eis a captura do código acima, em imagem:

Untitled.png.6d0558e8460af780d18173da5c24dac9.png

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...