diff --git a/main.c b/main.c index 22dbe1d45c98412e59f0238437ca0a33972c7977..b516909d509d1a5d70af6570712d60fc637fe457 100644 --- a/main.c +++ b/main.c @@ -1,4 +1,6 @@ #include <stdio.h> +#include <math.h> +#include <stdlib.h> #define L 0.15 // L = Distancia centro da roda - eixo em cm @@ -16,12 +18,17 @@ typedef struct { double theta; } Robot; -double menorDistancia (int xa, int ya, int xb,int yb){ +double velocity(double dist, double tempo){ + return (dist / tempo); +} + +double distance(int xa, int ya, int xb,int yb){ return (sqrt((xb-xa)*(xb-xa) + (yb-ya)*(yb-ya))); } int main(int argc, char const *argv[]) { int t_size; + double velocidade, distancia; Tuple *tuplas; Robot r = {0, 0, 0}; puts("Quantos pontos há na lista? Mínimo de 10 elementos."); @@ -46,6 +53,8 @@ int main(int argc, char const *argv[]) { // pega o ângulo entre a posição do robô e o próximo ponto // gira o robô // calcula a velocidade para as rodas + distancia = distance(r.x, r.y, tuplas[i].x, tuplas[i].y); + velocidade = velocity(distancia, tuplas[i].t); } // gerar tabela e grafico