Advertisement
Edosecs

STRUTTURE d.p.p. e lunghezza

Jan 26th, 2023
775
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.93 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <math.h>
  3.  
  4. typedef struct {
  5.     double x;
  6.     double y;
  7. } punto;
  8.  
  9. double distanza (punto p1, punto p2);
  10.  
  11. double LunghezzaComplessiva (punto poligonale[], int dim);
  12.  
  13. int main () {
  14.  
  15.     int n;
  16.     printf("quanti punti vuoi inserire?\n");
  17.     scanf("%d", &n);
  18.     punto poligonale[n];
  19.  
  20.     for (int i=1; i<=n; i++) {
  21.         printf("inserisci il %d° punto (X;Y): ", i);
  22.         printf("\n");
  23.         scanf("%lf;%lf", &poligonale[i].x, &poligonale[i].y);
  24.     }
  25.  
  26.     double lunghezza = LunghezzaComplessiva (poligonale, n);
  27.     printf("\nla lunghezza della poligonale è %.3g\n", lunghezza);
  28. }
  29.  
  30. double distanza (punto p1, punto p2) {
  31.     return sqrt(pow(p1.x-p2.x,2)+pow(p1.y-p2.y,2));
  32. }
  33.  
  34. double LunghezzaComplessiva (punto poligonale[], int dim) {
  35.     double lung = 0.0;
  36.    
  37.     for (int i=0; i<dim-1; i++) {
  38.         lung += distanza(poligonale[i], poligonale[i+1]);
  39.     }
  40.     return lung;
  41. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement