Problema progetto convertitore valuta.

di il
7 risposte

Problema progetto convertitore valuta.

Salve a tutti,
Frequento il terzo anno di un istituto tecnico industriale indirizzo informatico. Visto che le cose a scuola proseguono in maniera abbastanza lenta e vista la mia "curiosità", mi sono portato avanti con gli studi del linguaggio java; anche se la mia conoscenza a oggi è davvero scarsa.
Ho iniziato a seguire la playlist java di fcamuso, e mi sono divertito a sperimentare alcuni programmi. In particolare sto realizzando un convertitore valuta che inserita una cifra e, specificata se essa è in dollaro o euro, la converte in dollaro o euro.
Allora il problema sta nella struttura IF, che dovrebbe verificare se la cifra inserita è in euro o in dollaro. In particolare dopo aver inserito di che tipo è la cifra inserita mi da quest'errore.
Exception in thread "main" java.util.InputMismatchException
    at java.util.Scanner.throwFor(Unknown Source)
    at java.util.Scanner.next(Unknown Source)
    at java.util.Scanner.nextInt(Unknown Source)
    at java.util.Scanner.nextInt(Unknown Source)
    at ConvertitoreDollaroEuroEuroDollaro.main(ConvertitoreDollaroEuroEuroDollaro.java:35)
Il programma è il seguente:
import java.util.Scanner;


public class ConvertitoreEuroDollaroDollaroEuro
{
   
    //Programma che converte una cifra in euro o dollaro, in dollaro o euro.


    public static void main(String[] args) {
        // Si definiscono le variabili e le costanti:
        // Sono valori double perché possono contenere cifre con la virgola.
       
        double cifra; // La variabile cifra da convertire.
        double tasso_di_conversione_Euro_Dollaro = 1.3; // La costante tasso_di_conversione_Euro_Dollaro
        double tasso_di_conversione_Dollaro_Euro = 0.8; // La costante tasso_di_conversione_Dollaro_Euro
        double cifraconvertita;
        char moneta=1;
        char euro=1;
        char dollaro=1;
       
       
       
        
       
//Si definisce il valore della cifra.
       
        Scanner inputNumScanner = new Scanner(System.in);
          System.out.println("Digita la cifra da convertire: ");
          cifra = inputNumScanner.nextDouble();
// FIN QUI FUNZIONA
         
          /*Tutti i metodi hanno problemi con l'IF.*/
         
          //Metodo con Scanner char 1
          Scanner scanner = new Scanner(System.in);
          System.out.println("La cifra da convertire è in euro o dollaro? ");
          moneta = scanner.next().charAt(0);
         
         
          /*Metodo if per lo scanner CHAR. Questo metodo prevede che se la parola moneta è uguale a
          euro verrà eseguita la conversione in dollaro, se la parola moneta è uguale a dollaro verrà
          eseguita la conversione in euro */
         
          if (moneta==euro){
              cifraconvertita=(cifra*tasso_di_conversione_Euro_Dollaro);
              System.out.println ("L'equivalente in dollaro è: " + cifraconvertita);
              
                 
                 } else if (moneta==dollaro) {
                 
                     cifraconvertita=(cifra*tasso_di_conversione_Dollaro_Euro);
                     System.out.println("L'equivalente in euro è: " + cifraconvertita);
                 
                 } else {
                       
                     /*QUI VA INSERITO UN PERCORSO DI RIPETIZIONE, PERCHE' SIGNIFICA CHE COME TESTO
                      NON E' STATO INSERITO NE' EURO NE' DOLLARO
                      */
                     }
         
         
    }
}

7 Risposte

Devi accedere o registrarti per scrivere nel forum
7 risposte