Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 27

Discussione: [java] Erorre banale..

  1. #1

    [java] Erorre banale..

    class Pari
    {

    public static void main(String[] args)
    {
    int Cont=0;
    int Start=args[0];
    Start++;
    int End=args[1];

    for(int i=Start; i<End; i++)
    if(Start%2==0)
    Cont++;

    System.out.println("Tra "+args[0]+" e "+args[1]+" vi sono "+Cont+" numeri pari");
    }
    }

    m sapreste trovare l'errore (nelle righe 7 e 9)

    io penso ke sia un errore di conversione di una stringa in un intero...ma se è così come convertirla?
    Il programma calcola quanti numeri pari vi sono tra i numeri args[0] e args[1]..
    [ SimplyMepis 8 ]Copyleft
    www.mepisitalia.org IL SITO ITALIANO UFFICIALE DI MEPIS
    www.salentomovida.it LA MOVIDA DEL SALENTO HA UN NUOVO PUNTO D'INCONTRO SUL WEB
    [ SUD SOUND SYSTEM MINA FUECU INTRA ALLU SALENTU ]

  2. #2
    Utente di HTML.it L'avatar di pireda
    Registrato dal
    Jul 2001
    Messaggi
    654
    Beh...

    public static void main(String[] args)
    {
    int Cont=0;
    int Start=args[0];
    Start++;
    int End=args[1];

    ...incompatibilità tra tipi
    Maddalena... Perché proprio Iacchetti!...

  3. #3
    si..infatti qst ero riuscito a capirlo..

    ma come posso fare?
    [ SimplyMepis 8 ]Copyleft
    www.mepisitalia.org IL SITO ITALIANO UFFICIALE DI MEPIS
    www.salentomovida.it LA MOVIDA DEL SALENTO HA UN NUOVO PUNTO D'INCONTRO SUL WEB
    [ SUD SOUND SYSTEM MINA FUECU INTRA ALLU SALENTU ]

  4. #4
    sì..ho risolto...

    anzi di String[] args

    ho usato

    int[] args..


    scusate ma sto imparando da poco java e alla programmazione ad oggetti nn sono proprio abituato..
    [ SimplyMepis 8 ]Copyleft
    www.mepisitalia.org IL SITO ITALIANO UFFICIALE DI MEPIS
    www.salentomovida.it LA MOVIDA DEL SALENTO HA UN NUOVO PUNTO D'INCONTRO SUL WEB
    [ SUD SOUND SYSTEM MINA FUECU INTRA ALLU SALENTU ]

  5. #5
    ok..lo compila ma cm mai m dà qst errore??


    Exception in thread "main" java.lang.NoSuchMethodError: main


    il sorgente è qst

    class Pari
    {

    public static void main(int[] args)
    {
    int Cont=0;
    int Start=args[0];
    Start++;
    int End=args[1];

    for(int i=Start; i<End; i++)
    if(Start%2==0)
    Cont++;

    System.out.println("Tra "+args[0]+" e "+args[1]+" vi sono "+Cont+" numeri pari");
    }
    }
    [ SimplyMepis 8 ]Copyleft
    www.mepisitalia.org IL SITO ITALIANO UFFICIALE DI MEPIS
    www.salentomovida.it LA MOVIDA DEL SALENTO HA UN NUOVO PUNTO D'INCONTRO SUL WEB
    [ SUD SOUND SYSTEM MINA FUECU INTRA ALLU SALENTU ]

  6. #6
    Utente di HTML.it L'avatar di pireda
    Registrato dal
    Jul 2001
    Messaggi
    654
    class Pari
    {

    public static void main(int[] args)
    {
    int Cont=0;
    int Start=args[0];
    Start++;
    int End=args[1];

    for(int i=Start; i<End; i++)
    {
    if(Start%2==0)
    Cont++;
    }

    System.out.println("Tra "+args[0]+" e "+args[1]+" vi sono "+Cont+" numeri pari");
    }
    }

    Ho aggiunto le parentesi al for ma non sono sicuro che il problema è questo
    Maddalena... Perché proprio Iacchetti!...

  7. #7
    Utente di HTML.it L'avatar di ChReAn
    Registrato dal
    Aug 2002
    Messaggi
    486
    Puoi usare Int al posto di int.
    Alcuni tipi di dati di base hanno dei wrapper (Float per i float, Double per i double, ecc...) che consentono di agevolare le conversioni.
    Ad esempio tu potresti scrivere

    codice:
    Integer Start = new Integer(args[0]);
    Questi tipi di dati infatti possiedono dei costruttori che si occupano di castare in automatico il parametro passato.
    Per ottenere poi il valore della variabile, bastera' richiamare Start.intValue().
    ChReAn
    -------------------

    Slackware 9.1 powered

  8. #8
    Utente di HTML.it L'avatar di ChReAn
    Registrato dal
    Aug 2002
    Messaggi
    486
    Azz!!!
    Ci sono altri due ORRORI!

    1) Non puoi definire un main (int[]), perche' i parametri del main sono sempre stringhe!!!
    2) Il primo parametro del main, quindi args[0], e' il nome dell'eseguibile stesso, che per forza di cose non puo' essere un numero!!! I parametri a tua disposizione sono quelli da 1 in poi!!!
    ChReAn
    -------------------

    Slackware 9.1 powered

  9. #9
    Utente di HTML.it L'avatar di anx721
    Registrato dal
    Apr 2003
    Messaggi
    2,352
    Originariamente inviato da ChReAn
    Azz!!!
    Il primo parametro del main, quindi args[0], e' il nome dell'eseguibile stesso, che per forza di cose non puo' essere un numero!!! I parametri a tua disposizione sono quelli da 1 in poi!!!
    Questo vale in c, in java args[0] non è inizializzato con il nome del programma, quindi i parametri passati dalla linea di comando iniziano ad essere inseriti a partire dall'indice zero, ciao.

  10. #10
    Utente di HTML.it L'avatar di anx721
    Registrato dal
    Apr 2003
    Messaggi
    2,352
    Originariamente inviato da ChReAn
    Azz!!!
    Il primo parametro del main, quindi args[0], e' il nome dell'eseguibile stesso, che per forza di cose non puo' essere un numero!!! I parametri a tua disposizione sono quelli da 1 in poi!!!
    Questo vale in c, in java args[0] non è inizializzato con il nome del programma, quindi i parametri passati dalla linea di comando iniziano ad essere inseriti a partire dall'indice zero, ciao.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.