Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di mybox
    Registrato dal
    Mar 2007
    Messaggi
    507

    [java]errore programma area rettangolo help

    Codice PHP:
    import java.io.*;
    class 
    AreaRettangolo
    {   
        public static 
    void main (String argrs[])
        {
            
    InputStreamReader Dato=new InputStreamReader(System.in);
            
    BufferedReader Tastiera=new BufferedReader(Dato);
            
    int BaseAltezza,
            
    Float Area=0f;
            try
            {
                
    System.out.println ("          Area Rettangolo");
                
    System.out.println ();
                
    System.out.println ("inserisci dimensione base");
                
    Base=Integer.parseInt (Tastiera.readLine());
                
    System.out.println ("inserisci altezza");
                
    Altezza=Integer.parseInt (Tastiera.readLine());
                
    Tot=Base*Altezza;
                
    System.out.println ("Area Risulta="+Area);
            }
                catch (
    Exception E)

            {
                
    System.out.println ("errore nel programma");
            }
        }


  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [java]errore programma area rettangolo help

    Originariamente inviato da mybox
    codice:
    int Base, Altezza,
    Float Area=0f;
    
    Tot=Base*Altezza;
    Se guardassi bene il sorgente, scopriresti che c'è un errore di sintassi (la virgola dopo Altezza) e la variabile Tot non esiste.

    EDIT: E aggiungo che invece di usare la classe Float, dovresti usare il tipo primitivo float.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326
    E la variabile Area è dichiarata di tipo Float (che è un oggetto, vedi la maiuscola) e non di tipo float (tipo primitivo, con la minuscola), quindi non puoi assegnarci il valore 0f, ma andrebbe costruito con new...


    Inoltre fai stampare il valore della variabile Area, che non hai mai calcolato, visto che l'area la vai a calcolare nella fantomatica variabile Tot...


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  4. #4
    Utente di HTML.it L'avatar di mybox
    Registrato dal
    Mar 2007
    Messaggi
    507
    Codice PHP:
    import java.io.*;
    class 
    AreaRettangolo
    {   
        public static 
    void main (String argrs[])
        {
            
    InputStreamReader Dato=new InputStreamReader(System.in);
            
    BufferedReader Tastiera=new BufferedReader(Dato);
            
    int BaseAltezza;
            
    Float Area=0f;
            try
            {
                
    System.out.println ("          Area Rettangolo");
                
    System.out.println ();
                
    System.out.println ("inserisci dimensione base");
                
    Base=Integer.parseInt (Tastiera.readLine());
                
    System.out.println ("inserisci altezza");
                
    Altezza=Integer.parseInt (Tastiera.readLine());
                
    System.out.println ("Area Risulta="+Area);
            }
                catch (
    Exception E)

            {
                
    System.out.println ("errore nel programma");
            }
        }


  5. #5
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    E adesso la moltiplicazione dov'è???
    E come ripetiamo io e LeleFT usa float e non Float. Le regole di Java dicono che è possibile fare il boxing eventualmente seguito da un widening del reference, ma non il widening e poi il boxing. Per dirla in altri termini: int può essere boxato in Integer e tramite widening convertito ad esempio in Number o Object. Non si può fare implicitamente int -> float -> Float. Se mettessi un cast esplicito a float, allora sarebbe corretto.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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.