Ciao a tutti, ho un problema con un programma in pratica dovrei registrare le operazioni di (prelievo, somma e lettura del saldo) in una terza classe.
Nella prima ho messo il menu per interagire con l'app.
Nella seconda classe ho inserito i metodi.
E nella terza che non ho creato deve esserci un costruttore che restituisce il tipo dell'operazione che si è eseguita in conto.
La classe conto deve avere i seguenti attributi:
saldo
Operazione [] operazioni (array di oggetti)
numop (numero operazioni corrente)
Quello che proprio non riesco a fare e salvare in questo array di oggetti che poi deve comunicare con la classe 3 "operazioni" tramite un costruttore, il tipo di operazione che si sta effettuando.
numop restituisce il numero dell'operazione corrente.
Vi allego qui il mio codice:
codice:import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class GestioneConto { public static void main(String[] args) { int scelta = -1; BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in)); Conto conto = new Conto(); do { System.out.println("Benvenuto nel menu"); System.out.println("1. Effettua un versamento"); System.out.println("2. Effettua un prelievo"); System.out.println("3. Visualizza il saldo"); System.out.println("4. Visualizza operazioni effettuate"); System.out.println("5. Esci"); //eccezioni try { scelta = Integer.parseInt(bufferedReader.readLine()); } catch (IOException e) { System.err.println("Inserisci un numero valido."); } catch (NumberFormatException e) { System.err.println("Inserisci un numero valido."); } switch (scelta) { case 1: conto.versamento(); break; case 2: conto.prelievo(); break; case 3: conto.getsaldo(); break; case 4: conto.visualizza(); break; case 5: break; default: System.err.println("Scelta non valida."); break; } } while (scelta != 5); } }codice:import java.util.Locale; import java.util.Scanner; public class Conto { Scanner leggi = new Scanner(System.in).useLocale(Locale.US);; double saldo = 0; double importo = 0; int numop; Operazioni operazioni = new Operazioni(); public void versamento() { try{ System.out.println("Inserisci l'importo da versare: "); saldo = leggi.nextDouble(); //passare operazione numop = 1; }catch(NumberFormatException e) { System.err.println("Inserisci un importo valido"); } } public void prelievo() { if(saldo <= 0) { System.err.println("Fondi insufficienti"); } else { try { System.out.println("Inserisci l'importo da prelevare: "); importo = leggi.nextDouble(); saldo -= importo; }catch(NumberFormatException e) { System.err.println("Inserisci un importo valido"); } } } public double getsaldo() { System.out.println("Il saldo corrente è: " + saldo + " €"); return saldo; } public void visualizza() { } }



Rispondi quotando

