Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo
Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo
Abbiamo provato per diversi giorni una new entry del mercato italiano, la Gowow Ori, una moto elettrica da off-road, omologata anche per la strada, che sfrutta una pendrive USB per cambiare radicalmente le sue prestazioni
Recensione OnePlus 15: potenza da vendere e batteria enorme dentro un nuovo design
Recensione OnePlus 15: potenza da vendere e batteria enorme dentro un nuovo design
OnePlus 15 nasce per alzare l'asticella delle prestazioni e del gaming mobile. Ma non solo, visto che integra un display LTPO 1,5K a 165 Hz, OxygenOS 16 con funzioni AI integrate e un comparto foto con tre moduli da 50 MP al posteriore. La batteria da 7.300 mAh con SUPERVOOC 120 W e AIRVOOC 50 W è la ciliegina sulla torta per uno smartphone che promette di offrire un'esperienza d'uso senza alcun compromesso
AMD Ryzen 5 7500X3D: la nuova CPU da gaming con 3D V-Cache per la fascia media
AMD Ryzen 5 7500X3D: la nuova CPU da gaming con 3D V-Cache per la fascia media
Vediamo come si comporta il Ryzen 5 7500X3D, nuovo processore di casa AMD che fonde 6 core Zen 4 con la tecnologia 3D V-Cache, particolarmente utile in scenari come il gaming. Annunciato a un prezzo di listino di 279€, il nuovo arrivato sarà in grado di diventare un riferimento per i sistemi budget? Ecco cosa ne pensiamo.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 19-09-2004, 16:27   #1
DesmoColo
Senior Member
 
L'Avatar di DesmoColo
 
Iscritto dal: Sep 2003
Città: Lucca
Messaggi: 379
[JAVA] Gestione I\O da tastiera

ciao a tutti!

il codice qui sotto è quello del main di un programma che hos critto per il calcolo del codice fiscale:

public static void main(String[] args) throws IOException{

BufferedReader input =
new BufferedReader(new InputStreamReader(System.in));

System.out.println("Inserisci il tuo cognome");
String cognome = input.readLine();

System.out.println("Inserisci il tuo nome");
String nome = input.readLine();


System.out.println("Inserisci l'anno di nascita");
String annoNascita = input.readLine();
int nascita = Integer.parseInt(annoNascita);

System.out.println("Inserisci mese di nascita");
String meseNascita = input.readLine();
meseNascita = meseNascita.toUpperCase();

System.out.println("Inserisci il giorno di nascita");
String giornoNascita = input.readLine();
int dayOfBirth = Integer.parseInt(giornoNascita);

System.out.println("Inserisci il sesso");
String sesso = input.readLine();
sesso = sesso.toUpperCase();


System.out.println("Inserisci il nome del comune in cui sei nato");
String comune = input.readLine();
comune = comune.toUpperCase();


System.out.println("Inserisci la sigla della provincia del comune in cui sei nato");
String provincia = input.readLine();
provincia = provincia.toUpperCase();


CodiceFiscale cod = new CodiceFiscale();

cod.getPartCognome(cognome);
cod.getPartNome(nome);
cod.getPartAnnoNascita(nascita);
cod.getMeseNascita(meseNascita);
cod.getGiornoNascita(dayOfBirth,sesso);
cod.getCodiceComune(comune,provincia);
cod.getLetteraControllo();
cod.getCodiceFiscale();
}


il programma funziona, ma se ad esempio qualcuno inserisce al posto dell'anno di nascita una stringa diversa da un numero
oppure preme INVIO senza inserire un input il main genera un eccezione.
Come posso modificare il codice affinchè se un utente inserisce un input sbagliato, il main riformuli la richiesta?
__________________
God rides DUCATI!
DesmoColo è offline   Rispondi citando il messaggio o parte di esso
Old 21-09-2004, 23:51   #2
cuoricinoblu
Member
 
L'Avatar di cuoricinoblu
 
Iscritto dal: Nov 2003
Città: Brugherio(MI)
Messaggi: 104
Ciao,
ecco fatto

Codice:
    public static void main(String[] args) throws IOException {

        BufferedReader input =
        new BufferedReader(new InputStreamReader(System.in));

        System.out.println("Inserisci il tuo cognome");
        String cognome = input.readLine();
        while (cognome.compareTo("") == 0){
            System.out.println("Inserisci il tuo cognome");
            cognome = input.readLine();
        }

        System.out.println("Inserisci il tuo nome");
        String nome = input.readLine();
        while (nome.compareTo("") == 0){
            System.out.println("Inserisci il tuo nome");
            nome = input.readLine();
        }

        System.out.println("Inserisci l'anno di nascita");
        String annoNascita = input.readLine();
        int nascita = 0;
        while (nascita == 0){
            try{
                nascita = Integer.parseInt(annoNascita);
            }catch(Exception e){
                nascita = 0;
                System.out.println("Inserisci l'anno di nascita");
                annoNascita = input.readLine();
            }
        }

        System.out.println("Inserisci mese di nascita");
        String meseNascita = input.readLine();
        meseNascita = meseNascita.toUpperCase();
        while (meseNascita.compareTo("") == 0){
            System.out.println("Inserisci mese di nascita");
            meseNascita = input.readLine();
        }
        //QUI DI SEGUITO VA UN CONTROLLO SU COSA HA INSERITO L'UTENTE
        //OVVERO CHE ABBIA INSERITO SI UNA STRINGA MA NON UN MESE....

        System.out.println("Inserisci il giorno di nascita");
        String giornoNascita = input.readLine();
        int dayOfBirth = 0;
        while (dayOfBirth == 0){
            try{
                dayOfBirth = Integer.parseInt(giornoNascita);
            }catch(Exception e){
                dayOfBirth = 0;
                System.out.println("Inserisci il giorno di nascita");
                giornoNascita = input.readLine();
            }
        }

        System.out.println("Inserisci il sesso");
        String sesso = input.readLine();
        sesso = sesso.toUpperCase();
        while (sesso.compareTo("") == 0){
            System.out.println("Inserisci il sesso");
            sesso = input.readLine();
        }
        //QUI DI SEGUITO VA UN CONTROLLO SU COSA HA INSERITO L'UTENTE
        //OVVERO CHE ABBIA INSERITO SI UNA STRINGA MA NON IL SESSO


        System.out.println("Inserisci il nome del comune in cui sei nato");
        String comune = input.readLine();
        comune = comune.toUpperCase();
        while (comune.compareTo("") == 0){
            System.out.println("Inserisci il nome del comune in cui sei nato");
            comune = input.readLine();
        }


        System.out.println("Inserisci la sigla della provincia del comune in cui sei nato");
        String provincia = input.readLine();
        provincia = provincia.toUpperCase();
        while (provincia.compareTo("") == 0){
            System.out.println("Inserisci la sigla della provincia del comune in cui sei nato");
            provincia = input.readLine();
        }

        
        CodiceFiscale cod = new CodiceFiscale();

        cod.getPartCognome(cognome);
        cod.getPartNome(nome);
        cod.getPartAnnoNascita(nascita);
        cod.getMeseNascita(meseNascita);
        cod.getGiornoNascita(dayOfBirth,sesso);
        cod.getCodiceComune(comune,provincia);
        cod.getLetteraControllo();
        cod.getCodiceFiscale();
    }


ciao e buona notte
__________________
------
cuoricinoblu è offline   Rispondi citando il messaggio o parte di esso
Old 22-09-2004, 11:38   #3
DesmoColo
Senior Member
 
L'Avatar di DesmoColo
 
Iscritto dal: Sep 2003
Città: Lucca
Messaggi: 379
ok! :-) tutto a posto. grazie
__________________
God rides DUCATI!
DesmoColo è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo Test ride con Gowow Ori: elettrico e off-road va...
Recensione OnePlus 15: potenza da vendere e batteria enorme dentro un nuovo design   Recensione OnePlus 15: potenza da vendere e batt...
AMD Ryzen 5 7500X3D: la nuova CPU da gaming con 3D V-Cache per la fascia media AMD Ryzen 5 7500X3D: la nuova CPU da gaming con ...
SONY BRAVIA 8 II e BRAVIA Theatre System 6: il cinema a casa in formato compatto SONY BRAVIA 8 II e BRAVIA Theatre System 6: il c...
KTC H27E6 a 300Hz e 1ms: come i rivali ma a metà prezzo KTC H27E6 a 300Hz e 1ms: come i rivali ma a met&...
Black Friday in anticipo: cuffie top a p...
Questa è ID.UNYX 08, la prima Vol...
CoD: Black Ops 7 nella bufera, Calling C...
Economico, potentissimo: il robot che la...
Windows 11 e le critiche degli utenti su...
CoD Black Ops 7: la campagna richiede co...
A 17,69€ è un prezzo senza senso ...
Tecnologie derivate dalla F1 per acceler...
Macbook Air M4 a 879€, Mac mini M4 a 549...
La morte del gatto Kit Kat riaccende il ...
iPhone 16 128GB, in 4 colori, a 695€: &e...
Il primo microprocessore non fu di Intel...
Nuovi arrivi tutti i giorni su Amazon Se...
Xeon Diamond Rapids solo a 16 canali: In...
ECOVACS DEEBOT T80 OMNI scontato di 600€...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 10:38.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v