Chiarimento

di il
2 risposte

Chiarimento

Salve a tutti, premetto che ho iniziato da poco a studiare java (2 settimane) quindi mi reputo ancora un novellino.. Ho creato un programma che mi calcola il ricavo in euro immettendo il guadagno all'ora e mettendo le ore e i minuti, tutto funziona perfettamente ma vorrei modificare qualcosa che riguarda perlopiù l' "estetica" diciamo.

Questo è il programma:

import prog.io.ConsoleInputManager;
import prog.io.ConsoleOutputManager;


public class ConteggioStipendio {

public static void main(String[] args) {
// TODO Auto-generated method stub

ConsoleInputManager in = new ConsoleInputManager();
ConsoleOutputManager out = new ConsoleOutputManager();

int i=1;
int ore=0;
int minuti=0;
int soldiora = in.readInt("€/ora: ");
for(;;) {
ore = ore + in.readInt(i + "- Inserisci le ore: ");
minuti = minuti + in.readInt(" Inserisci i minuti: ");
String frase = in.readLine(" Finito? ");
if(frase.equals("y")) break;
i++;
}

int ore2 = minuti/60;
int minuticomplessivi = minuti%60;
int orecomplessive = ore + ore2;

double ricavo1 = soldiora*orecomplessive;
double ricavo2 = soldiora*((double)minuticomplessivi/60);
double ricavototale = ricavo1 + ricavo2;

out.println("");
out.println("Hai lavorato per " + orecomplessive + " ore e " + minuticomplessivi + " minuti.");
out.println("Per un ricavo totale di: " + ricavototale + "€");

}

}

Ed il problema che vorrei risolvere è che durante l'esecuzione nella console mi chiede prima di inserire le ore svolte e successivamente a capo i minuti.
Ce un metodo per far si che chieda prima le ore ed una volta immesse chieda i minuti ma sempre sulla stessa riga? Purtroppo non riesco a darmi pace, grazie mille a tutti per l'aiuto.

2 Risposte

  • Re: Chiarimento

    AntoninoRusso ha scritto:


    Ce un metodo per far si che chieda prima le ore ed una volta immesse chieda i minuti ma sempre sulla stessa riga?
    Il punto è che stai usando delle classi di I/O su console non standard (ConsoleInputManager/ConsoleOutputManager) che sicuramente qualcuno ti ha fornito o che hai dovuto/voluto scaricare da internet.
    Non conosco quelle classi, quindi non so dire ora che cosa "offrono" in generale. Se ConsoleInputManager offre solo una versione di readInt che si aspetta una "riga" con un intero ovvero fa andare a capo .... beh, il problema è lì.
    La questione è appunto cosa poter usare per fare quello che chiedi. Nessuno ti vieterebbe di prendere una riga di testo che deve contenere ore spazio minuti e poi sei tu che puoi spezzare e parsare le stringhe.
  • Re: Chiarimento

    Diciamo che io come programma uso Eclipse, non so se le classi ConsoleInputManager e ConsoleOutputManager siano già all'interno di questo programma oppure siano contenute in una libreria .jar che mi ha fatto aggiungere il mio docente.

    Il punto è che come detto da te quanto utilizzo queste classi per un input automaticamente nella console mi fa andare alla riga dopo

    Diciamo che ora come ora il problema è più una questione personale visto che negli esercizi che svolgiamo in università l' "estetica" di un programma è l'ultima cosa a cui guardano.
Devi accedere o registrarti per scrivere nel forum
2 risposte