Boas a todos. galera é o seguinte, to precisando entregar um programa em C que simule o movimento de duas particulas em um ambiente fechado e sem interferencias externas. é mais ou menos como aqueles descansos de tela de alguns aparelhos DVD que ficam se movientando e quando se chocam na tela continuam o movimento de acordo com o angulo da colisão. o problema é q minnha professora pediu duas particulas e essas duas particulas podem se chocar e descrever o mesmo movimento de um choque com a tela. até o momento conseguir com uma ajuda fazer o movimento de uma particula. alguém tem uma ideia de como fazer a segunda e no momento que as duas se chocarem fizerem o movimeto correspondente ao angulo do choque? codigo até o momento #include<stdio.h>
#include<conio.h>
#include<windows.h>
typedef struct
{
int x,y;
} Coord;//guarda coordenadas
typedef struct
{
Coord pos,mov;
} _particula;//a estrutura das particulas
void gotoxy(int x, int y)
{
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),(COORD){x-1,y-1});
}
void up_particula(_particula *particula)
{
gotoxy(particula->pos.x,particula->pos.y);
putchar(' ');
if(particula->pos.x==80)particula->mov.x=-particula->mov.x;
if(particula->pos.y==25)particula->mov.y=-particula->mov.y;
if(particula->pos.x==1)particula->mov.x=-particula->mov.x;
if(particula->pos.y==1)particula->mov.y=-particula->mov.y;
particula->pos.x+=particula->mov.x;
particula->pos.y+=particula->mov.y;
gotoxy(particula->pos.x,particula->pos.y);
putchar('o');
}
int main(void)
{
_particula particula = {{10,10},{1,1}};
while(!_kbhit()){
_sleep(50);
up_particula(&particula);
}
return 0;
}