Advertisement
luizaspan

3D Vec

Jun 23rd, 2015
515
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.94 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <math.h>
  3.  
  4. #define n 3
  5.  
  6. int main(void)
  7. {
  8.  
  9.     int i;
  10.     double v1[n],v2[n],mag1=0.0,mag2=0.0,dist,pesc;
  11.  
  12.     for (i=0;i<n;i++)
  13.     {
  14.         printf("Coordenada %d do primeiro vetor (v1) tridimensional: ",i);
  15.         scanf("%lf",&v1[i]);   
  16.     }
  17.  
  18.     for (i=0;i<n;i++)
  19.     {
  20.         printf("Coordenada %d do segundo vetor (v2) tridimensional: ",i);
  21.         scanf("%lf",&v2[i]);   
  22.     }
  23.  
  24.     for (i=0;i<n;i++)
  25.     {
  26.         // printf("%lf ",v1[i]);
  27.         mag1+=pow(v1[i],2);
  28.         mag2+=pow(v2[i],2);
  29.  
  30.         dist+=pow(v1[i]-v2[i],2);
  31.  
  32.         pesc+=v1[i]*v2[i];
  33.  
  34.  
  35.     }
  36.  
  37.     printf("\n");
  38.  
  39.  
  40.     printf("Magnitude de v1: %.3lf \n",sqrt(mag1));
  41.     printf("Magnitude de v2: %.3lf \n",sqrt(mag2));
  42.     printf("Distância entre v1 e v2: %.3lf \n",sqrt(dist));
  43.     printf("Produto escalar entre v1 e v2: %.3lf \n",pesc);
  44.     printf("Ângulo entre v1 e v2: %.3lf rad\n",acos(pesc/(sqrt(mag1)*sqrt(mag2))));
  45.  
  46.     // cálculo das coordenadas esféricas: junta tudo acima :v
  47.  
  48.     printf("\n");
  49.  
  50.     return 0;
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement