Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di MOBILUK
    Registrato dal
    Apr 2001
    Messaggi
    225

    [JAVA] Dov'è l'errore?

    ecco il codice:

    codice:
    // Rappresenta un dado le cui facce mostrano un valore che va da 1 al numero delle facce stesse
    
    public class Die
    {
    private final int MIN_FACES = 4;
    
    private int numFaces; // numero delle facce del dado
    private int numValue; // valore della faccia corrente
    
    
    
    
    // la situazione di default è che c'è un dado a 6 facce che mostra la faccia con l'uno
    
    public Die ()
    {
    numFaces = 6;
    faceValue = 1;
    }
    
    // assegna automaticamente il numero di facce, e se quesno non avviene di default è 6 e la faccia iniziale è 1
    
    public Die (int faces)
    {
    if (faces < MIN_FACES)
       numFaces = 6;
    else
       numFaces = faces;
    
    faceValue = 1;
    }
    
    // lancia il dado e restituisce il risultato
    public int roll ()
    {
    faceValue = (int) (Math.random() * numFaces) + 1;
    return faceValue;
    }
    
    // Riporta il risultato del lancio
    public int getFaceValue ()
    {
    return faceValue;
    }
    }
    in fase di compilazione mi da i seguenti errori:

    faceValue = 1; (la freccetta d'errore è sulla f)

    sempre lo stesso errore (con la freccetta sulla f) è alla riga in cui si spiega l'operazione matematica da effettuare (Math.random...)

    e sempre l'errore sulla f è ad ambe le istruzioni return

    non riesco a capire di che genere d'errore si tratti!
    ...credi sia aria quella che stai respirando?

  2. #2
    Non hai dichiarato faceValue. Un po' di attenzione a quel che si scrive non farebbe male.
    - "Boy, the food at this place is really terrible."
    - "Yeah, I know, and such ... small portions."

  3. #3
    Utente di HTML.it L'avatar di MOBILUK
    Registrato dal
    Apr 2001
    Messaggi
    225
    Originariamente inviato da Dwenegar
    Non hai dichiarato faceValue. Un po' di attenzione a quel che si scrive non farebbe male.
    ho copiato il prog fedelmente da un manuale e per quanto riguarda i controlli li ho fatti anche più volte, e a quanto vedo faceValue l'ho dichiarata, ed è uguale a 1

    codice:
    ...
    public Die ()
    {
    numFaces = 6;
    faceValue = 1;
    }
    ...

    sbaglio? :quipy:
    ...credi sia aria quella che stai respirando?

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    1,798
    Si, sbagli.
    Devi tenere in considerazione anche il campo di visibilità delle variabili, ecc.
    Se la variabile la dichiari all'interno di un costruttore potrai utilizzarla solo all'interno di quel blocco di codice.

    Studiare...

    Ciao.
    Slack? Smack!

  5. #5
    Utente di HTML.it L'avatar di MOBILUK
    Registrato dal
    Apr 2001
    Messaggi
    225
    Originariamente inviato da Sergio Pedone

    Studiare...

    e quello che sto facendo in vista dell'esame di programmazione

    come posso fare a dichiarare tali variabili? Ho provato a metterle si seguito a private int numFaces; e private int numValue; , con int numFace = 6; ma in fase di compilazione mi da un errore a numFaces (la freccetta è sulla n)

    ...credi sia aria quella che stai respirando?

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2002
    Messaggi
    315
    per quanto riguarda i controlli li ho fatti anche più volte, e a quanto vedo faceValue l'ho dichiarata, ed è uguale a 1
    faceValue = 1 non e' una dichiarazione, e' un assegnazione.
    Una dichiarazione e':
    int faceValue;

    L'errore e' nella quarta riga, nella quale dichiari una variabile numValue, quando probabilmente avresti dovuto chiamarla faceValue
    codice:
    private int numFaces; // numero delle facce del dado
    
    //ERRORE
    private int numValue; // valore della faccia corrente
    Secondo me hai fatto un copia&incolla e ti sei sbagliato a rinominare la variabile.
    Ciao,
    Lorenzo

  7. #7
    Utente di HTML.it L'avatar di MOBILUK
    Registrato dal
    Apr 2001
    Messaggi
    225
    grazie 1000! Ora sono riuscito a compliarlo correttamemnte


    ...l'ho già ammesso 1000 volte in queste ultime settimane, ma lo riammetto, sono un quando faccio questi errori!!
    ...credi sia aria quella che stai respirando?

  8. #8
    Sono cose che capitano agli inizi
    Però un pò di attenzione e un pò di studio non fanno male

    CIauz
    Lang=Java
    Ambiente = Eclipse forever
    Ubuntu & Win XP Pro

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.