Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    50

    [c] errore token

    codice:
    #include <stdio.h>
    #include <stdlib.h>
    #include <math.h>
    struct punto{
           double x;
           double y;
    };
    typedef struct punto vett[4];
    int main()
    {
      int n,i;
      vett vettore;
      printf("inserisci il size dell vettore:");
      scanf("%d",&n);
      printf("inserisci le coordinate del vettore:");
      for(i=0;i<n;i++)
      scanf("%e",&vettore[i]);
      double dist;
    typedef struct  vettore p1,p2;
      dist=sqrt(pow((p1.x-p2.x),2)+pow((p1.y-p2.y),2));
      system("PAUSE");	
      return 0;
    }
    Sviluppare una function C che, dato come parametro di input un array di tipo struct
    punto f double x; double y g e il suo size, determina e restituisce come parametro di
    output la distanza tra i punti.

    il codice mi dà errore di syntax error "."token sulla riga dove calcola la distanza con il teorema di pitagora.
    codice:
    code

  2. #2
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802

    Re: [c] errore token

    Originariamente inviato da asteroid
    il codice mi dà errore di syntax error "."token sulla riga dove calcola la distanza con il teorema di pitagora.
    In realtà l'errore è qualche riga sopra:

    scanf("%e",&vettore[i]);

    Non ha senso, x e y devono essere acquisite separatamente.
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    50
    codice:
    #include <stdio.h>
    #include <stdlib.h>
    #include <math.h>
    struct punto{
           double x;
           double y;
    };
    typedef struct punto vett[4];
    int main()
    {
      int j,n,i;
      printf("inserisci il size dell vettore:");
      scanf("%d",&n);
      double dist;
    printf("inserisci le coordinate del vettore:");
      for(i=0;i<n-2;i++)
    scanf("%e",&vett[i].x);
    for(j=2;j<n;j++)
    scanf("%e",&vett[j].y);
      dist=sqrt(pow((vett.x - vett.y),2)+pow((vett.x - vett.y),2));
      system("PAUSE");	
      return 0;
    }
    potrei scanf così?
    codice:
    code

  4. #4
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da asteroid
    codice:
    printf("inserisci le coordinate del vettore:");
      for(i=0;i<n-2;i++)
    scanf("%e",&vett[i].x);
    for(j=2;j<n;j++)
    scanf("%e",&vett[j].y);
      dist=sqrt(pow((vett.x - vett.y),2)+pow((vett.x - vett.y),2));
      system("PAUSE");	
      return 0;
    }
    potrei scanf così?
    Perché le 'x' le acquisisci da 0 a n - 2 mentre le 'y' da 2 a n? E perché usi due cicli differenti? Nello stesso ciclo puoi benissimo acquisire la coppia di numeri contemporaneamente...
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    50
    codice:
    #include <stdio.h>
    #include <stdlib.h>
    #include <math.h>
    struct punto{
           double x;
           double y;
    };
    typedef struct punto vett[2];
    int main()
    {
      double dist;
    vett[0].x=10.03;                                   <--------------
    vett[0].y= 12.6;                                   <--------------                              error token
    vett[1].x=32.5;                                     <--------------
    vett[1].y=11.04;                                  <-------------- 
      dist = sqrt(pow((vett.x - vett.y),2)+pow((vett.x - vett.y),2));        <--------------
      system("PAUSE");	
      return 0;
    }
    oppure così, ma mi dà sempre lo stesso errore token... vicino ai punti...
    codice:
    code

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    50
    Originariamente inviato da Alex'87
    Perché le 'x' le acquisisci da 0 a n - 2 mentre le 'y' da 2 a n? E perché usi due cicli differenti? Nello stesso ciclo puoi benissimo acquisire la coppia di numeri contemporaneamente...
    ........lo so
    stavo facendo delle prove....


    a me interessa l'error del token
    codice:
    code

  7. #7

    Re: [c] errore token

    Originariamente inviato da asteroid
    codice:
    struct punto{
           double x;
           double y;
    };
    typedef struct punto vett[4];
    int main()
    {
      int n,i;
      vett vettore;
    ...
    typedef struct  vettore p1,p2;
    }
    vettore non è un tipo, è una variabile.

    Intanto non capisco perchè fai tutti quei typedef.
    Potresti definire un solo typedef che è Punto e fare i vettori ecc..., quindi:

    Originariamente inviato da asteroid
    codice:
    #include <stdio.h>
    #include <stdlib.h>
    #include <math.h>
    typedef struct punto_{
           double x;
           double y;
    } Punto;
    int main()
    {
      int n,i;
      Punto vettore[4];
      printf("inserisci il size dell vettore:");
      scanf("%d",&n);
      printf("inserisci le coordinate del vettore:");
      for(i=0;i<n;i++)
      scanf("%e",&vettore[i]);
      double dist;
      Punto p1,p2;
      dist=sqrt(pow((p1.x-p2.x),2)+pow((p1.y-p2.y),2));
      system("PAUSE");	
      return 0;
    }
    Adesso sembra un po' più leggibile (ci sarebbe ancora qualcosa da dire sull'ordine del codice )
    lolide
    Java Programmer

    Informati

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.