Altro esercizio

di il
8 risposte

Altro esercizio

Ciao ragazzi, ho fatto un'esercizio tratto dal mio libro di programmazione e vi sarei grato se poteste darmi un vostro riscontro su come l'ho realizzato. Non ci dovrebbero essere grossi errori dato che viene compilato correttamente ma dato che ci sono arrivato un po' "a tentativi", mi piacerebbe sapere se aveste qualche correzione o suggerimento da darmi.

L'esercizio è:

Modificate l'applicazione SommaNumeriDaStringa in modo che venga richiesto all'utente di reinserire la sequenza se essa non è costituita esclusivamente da cifre e spazi. Per verificare se un carattere è una cifra decimale si può utilizzare il metodo statico isDigit della classe java.lang.Character, così descritto:
public static boolean isDigit(char ch)
Determina se il carattere specificato come argomento è una cifra. Il metodo restituisce true se il carattere è una cifra, e false in caso contrario.
package esercizi;

import prog.io.*;
import java.util.StringTokenizer;
import java.lang.Character.*;

public class Esercizio416 {

	public static void main(String[] args) {
	    ConsoleInputManager in = new ConsoleInputManager();
	    ConsoleOutputManager out = new ConsoleOutputManager();
		
		String sequenza;
		
		char c = ' ';

		do {
			
                  sequenza = in.readLine("Inserisci una sequenza di numeri separati da spazio: ");
        
		  for(int i = 0; i < sequenza.length(); i++) {
			  
	            c = sequenza.charAt(i);
			
		       if(Character.isDigit(c) || c == ' ')
		    	 continue;
		    
		       else
		         out.println("La sequenza deve contenere solo cifre e spazi, riprova! ");
		         break;
		    
		  }
		  
	    } while(Character.isDigit(c) == false);
	      
	    StringTokenizer stk = new StringTokenizer(sequenza, " ");
	    
	    int somma = 0;
	    
	    while(stk.hasMoreTokens()) {
	    	String token = stk.nextToken();
	    	
	    	somma = somma + Integer.parseInt(token);
	    }
	    
	    out.println("La somma dei numeri nella sequenza e' " + somma);
	}
}

8 Risposte

  • Re: Altro esercizio

    Che libro usi?
  • Re: Altro esercizio

    Dai fondamenti agli oggetti - Corso di programmazione Java
  • Re: Altro esercizio

    darknight_03 ha scritto:


    Dai fondamenti agli oggetti - Corso di programmazione Java
    Per quello che ne soio di java mi sembra ok. sto studiano anche io, ma non ci trovo niente di sbagliato.
    il libro si compra o è un libro scolastico?
    Mi interessano gli esercizi. nel libro su cui sto studiando ce ne sono davvero pochi e devo prenderli da internet sulle disponde universitarie, ma anche li sono sempre gli stessi....!
  • Re: Altro esercizio

    Forse si può compattare un po', tipo così
    
    package esercizi;
    
    import java.io.*;
    
    public class Esercizio416 {
    	public static void main(String[] args) throws IOException {
                    boolean ripeti;
    		int somma;               
                    do{
                        somma = 0; 
                        ripeti = false;
                        System.out.println("Inserisci una sequenza di numeri separati da spazio:");     
                        String str[] = new BufferedReader(new InputStreamReader(System.in)).readLine().split(" ");
                        for(String s : str){
                            if(s.matches("[0-9]+"))
                                somma += Integer.parseInt(s);      
                            else{
                                System.out.println("La sequenza deve contenere solo cifre e spazi, riprova!");
                                ripeti = true;
                                break;
                            }
                        }
                    }while(ripeti);	    
    	    System.out.println("La somma dei numeri nella sequenza e' " + somma);
    	}
    }
  • Re: Altro esercizio

    tagan ha scritto:


    darknight_03 ha scritto:


    Dai fondamenti agli oggetti - Corso di programmazione Java
    Per quello che ne soio di java mi sembra ok. sto studiano anche io, ma non ci trovo niente di sbagliato.
    il libro si compra o è un libro scolastico?
    Mi interessano gli esercizi. nel libro su cui sto studiando ce ne sono davvero pochi e devo prenderli da internet sulle disponde universitarie, ma anche li sono sempre gli stessi....!
    E' il libro che sto al momento utilizzando per l'università, io mi ci trovo abbastanza bene, nel senso che ogni capitolo presenta sia teoria (con esempi pratici) che esercizi. L'unica aspetto che può far storcere a molti il naso è che si utilizzano spesso alcune librerie implementate dagli autori del libro(es. classe Frazione, Sequenza, Intero ecc..), ovviamente non presenti nelle librerie native di JAVA, ma in realtà servono più che altro a scopo didattico per "semplificare" i concetti all'inizio. A parte questo, comunque, è un testo che mi sento di consigliarti se magari sei all'inizio ma vuoi allo stesso tempo avere uno sguardo approfondito su questo linguaggio.
  • Re: Altro esercizio

    Weierstrass ha scritto:


    Forse si può compattare un po', tipo così
    
    package esercizi;
    
    import java.io.*;
    
    public class Esercizio416 {
    	public static void main(String[] args) throws IOException {
                    boolean ripeti;
    		int somma;               
                    do{
                        somma = 0; 
                        ripeti = false;
                        System.out.println("Inserisci una sequenza di numeri separati da spazio:");     
                        String str[] = new BufferedReader(new InputStreamReader(System.in)).readLine().split(" ");
                        for(String s : str){
                            if(s.matches("[0-9]+"))
                                somma += Integer.parseInt(s);      
                            else{
                                System.out.println("La sequenza deve contenere solo cifre e spazi, riprova!");
                                ripeti = true;
                                break;
                            }
                        }
                    }while(ripeti);	    
    	    System.out.println("La somma dei numeri nella sequenza e' " + somma);
    	}
    }
    ottimo, grazie
  • Re: Altro esercizio

    darknight_03 ha scritto:


    E' il libro che sto al momento utilizzando per l'università, io mi ci trovo abbastanza bene, nel senso che ogni capitolo presenta sia teoria (con esempi pratici) che esercizi. L'unica aspetto che può far storcere a molti il naso è che si utilizzano spesso alcune librerie implementate dagli autori del libro(es. classe Frazione, Sequenza, Intero ecc..), ovviamente non presenti nelle librerie native di JAVA, ma in realtà servono più che altro a scopo didattico per "semplificare" i concetti all'inizio. A parte questo, comunque, è un testo che mi sento di consigliarti se magari sei all'inizio ma vuoi allo stesso tempo avere uno sguardo approfondito su questo linguaggio.
    Ok grazie.
    Mi dici il titolo e autore? Provo a cercarlo.

    Tagan
  • Re: Altro esercizio

    tagan ha scritto:


    darknight_03 ha scritto:


    E' il libro che sto al momento utilizzando per l'università, io mi ci trovo abbastanza bene, nel senso che ogni capitolo presenta sia teoria (con esempi pratici) che esercizi. L'unica aspetto che può far storcere a molti il naso è che si utilizzano spesso alcune librerie implementate dagli autori del libro(es. classe Frazione, Sequenza, Intero ecc..), ovviamente non presenti nelle librerie native di JAVA, ma in realtà servono più che altro a scopo didattico per "semplificare" i concetti all'inizio. A parte questo, comunque, è un testo che mi sento di consigliarti se magari sei all'inizio ma vuoi allo stesso tempo avere uno sguardo approfondito su questo linguaggio.
    Ok grazie.
    Mi dici il titolo e autore? Provo a cercarlo.

    Tagan
    Dai fondamenti agli oggetti: corso di programmazione Java - Giovanni Pighizzini, Mauro Ferrari
Devi accedere o registrarti per scrivere nel forum
8 risposte