Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 28
  1. #1

    [JAVA] - Classe Gregorian Calendar

    Ciao a tutti ragazzi!! Questo è il mio primo post!! Spero possiate aiutarmi nel risolvere questo dubbio.
    Ho il seguente problema.
    Realizzare una classe VotingMachine che possa essere utilizzata per una semplice elezione, con i metodi per azzerare inizialmente il conteggio dei voti, per assegnare un voto ai Democratici, per assegnare un voto ai Repubblicani e per conoscere il numero totale di voti per ciascuno dei due partiti. Otterrete una valutazione migliore se il vostro programma, nel caso in cui la situazione sia di parità dopo le ore 20 del primo martedì di Novembre, è in grado di assegnare la vittoria al partito che preferite, pur funzionando correttamente in ogni altro momento dell’anno.
    Suggerimento: usate la classe GregorianCalendar.


    Ora per quanto riguarda la prima parte penso di essere riuscito a risolvere il problema richiesto, in questo modo

    codice:
    public class VotingMachine 
    { 	
           //Constructors
           public VotingMachine() 	
      { 		rep=0; dem=0; 	}
    
           //Methods
     	public void rep() 	
      { 		rep=rep+1;  	} 	 	
            public void dem() 
      { 		dem=dem+1; 	} 	 	
            public int getDem() 	
      { 		return dem; 	} 	 	
            public int getRep() 	
      { 		return rep; 	} 	 
    	public void reset()
      {	rep=0;	dem=0;      }	
    
           //Instance fields
           private int rep; 	private int dem; 
    }
    Il problema invece lo trovo nella parte in corsivo. Ho sbattuto la testa dappertutto, ma non sono riuscito a venirne a capo :S. Penso sia da usare qualche metodo della classe Gregorian Calendar, ma non riesco a capire quale nemmeno dalla documentazione API.

    Qualcuno di voi potrebbe aiutarmi a capire come fare?

    Grazie mille in anticipo!!

  2. #2

    Re: [JAVA] - Classe Gregorian Calendar

    Originariamente inviato da tigerjack89 Otterrete una valutazione migliore se il vostro programma, nel caso in cui la situazione sia di parità dopo le ore 20 del primo martedì di Novembre, è in grado di assegnare la vittoria al partito che preferite, pur funzionando correttamente in ogni altro momento dell’anno.
    Suggerimento: usate la classe GregorianCalendar.


    Ora per quanto riguarda la prima parte penso di essere riuscito a risolvere il problema richiesto, in questo modo

    codice:
    public class VotingMachine 
    { 	
           //Constructors
           public VotingMachine() 	
      { 		rep=0; dem=0; 	}
    
           //Methods
     	public void rep() 	
      { 		rep=rep+1;  	} 	 	
            public void dem() 
      { 		dem=dem+1; 	} 	 	
            public int getDem() 	
      { 		return dem; 	} 	 	
            public int getRep() 	
      { 		return rep; 	} 	 
    	public void reset()
      {	rep=0;	dem=0;      }	
    
           //Instance fields
           private int rep; 	private int dem; 
    }
    Il problema invece lo trovo nella parte in corsivo. Ho sbattuto la testa dappertutto, ma non sono riuscito a venirne a capo :S. Penso sia da usare qualche metodo della classe Gregorian Calendar, ma non riesco a capire quale nemmeno dalla documentazione API.
    Intanto i metodi per settare gli attributi chiamali con il prefisso set (quindi non dem e rep, ma setDem, setRep ecc....), ancora meglio se scrivessi dei nomi più descrittivi (tipo setVotiRepubblicani ecc....)

    GregorianCalendar è semplicemente una classe che rappresenta il calendario gregoriano.
    La consegna ti dice: ... se il risultato della votazione sia di parità dopo le ore 20 del primo martedì di novembre....

    Il che vuol dire che ogni volta che recuperi il risultato della votazione (quindi quando richiami i due metodi get), devi controllare in cui recuperi il risultato della votazione sia minore del primo martedi del mese di novembre ore 20:00.

    Per farlo crei un calendario con gregoriancalendar (quando crei una nuova istanza, automaticamente l'oggetto si inizializza con l'orario e data correnti) ed un altro settato con quelle date (ora 20:00 e data prima martedì di novembre (per vedere quale sia il primo martedi di novembre usa sempre gregoriancalendar)), ed usi il metodo before o after per vedere se una data è minore di un'altra.

    Per i metodi della classe, puoi vedere direttamente la reference sul sito di oracle
    GregorianCalendar
    lolide
    Java Programmer

    Informati

  3. #3

    Re: Re: [JAVA] - Classe Gregorian Calendar

    Intanto grazie mille per la tua risposta.

    Originariamente inviato da lolide
    Intanto i metodi per settare gli attributi chiamali con il prefisso set (quindi non dem e rep, ma setDem, setRep ecc....), ancora meglio se scrivessi dei nomi più descrittivi (tipo setVotiRepubblicani ecc....)
    Grazie per il consiglio, sono un novellino della programmazione ad oggetti!! XD
    Si spera ancora per poco

    GregorianCalendar è semplicemente una classe che rappresenta il calendario gregoriano.
    La consegna ti dice: ... se il risultato della votazione sia di parità dopo le ore 20 del primo martedì di novembre....
    Il che vuol dire che ogni volta che recuperi il risultato della votazione (quindi quando richiami i due metodi get), devi controllare in cui recuperi il risultato della votazione sia minore del primo martedi del mese di novembre ore 20:00.
    Non ho capito benissimo questo passaggio. Sembra che mi dici di creare un nuovo oggetto all'interno dei due metodi get. Non penso sia possibile. Cosa ho sbagliato a capire?

    Per farlo crei un calendario con gregoriancalendar (quando crei una nuova istanza, automaticamente l'oggetto si inizializza con l'orario e data correnti) ed un altro settato con quelle date (ora 20:00 e data prima martedì di novembre (per vedere quale sia il primo martedi di novembre usa sempre gregoriancalendar)), ed usi il metodo before o after per vedere se una data è minore di un'altra.
    Il problema è che se creo un oggetto VotingMachine questo si inizializzerà con l'orario in cui l'ho creato. Tuttavia io voglio il risultato al termine della votazione, quindi in un orario presumibilmente diverso da quello in cui ho creato l'oggetto VotingMachine.

    Altro problema che mi pongo è come fare a far tutto ciò senza usare if, else o quant'altro.
    Non li ho ancora studiati in java, li conosco solamente perchè li ho usati in C. E visto che verranno trattati in capitoli successivi, immagino ci sia un modo per farlo senza usarli.


    Aspetto con ansia news
    Grazie ancora

  4. #4
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802

    Re: Re: Re: [JAVA] - Classe Gregorian Calendar

    Originariamente inviato da tigerjack89
    Altro problema che mi pongo è come fare a far tutto ciò senza usare if, else o quant'altro.
    O_o Senza questo oltre l'Hello World non si va
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  5. #5

    Re: Re: Re: [JAVA] - Classe Gregorian Calendar

    Originariamente inviato da tigerjack89
    Non ho capito benissimo questo passaggio. Sembra che mi dici di creare un nuovo oggetto all'interno dei due metodi get. Non penso sia possibile. Cosa ho sbagliato a capire?
    No. Tutte queste cose le devi fare facendo magari un metodo di prova, cioè non puoi sapere quando finisce una votazione.
    Per esempio potresti inserire un metodo concludiVotazione dove controlli i risultati e fai tutto quello che c'è da fare con i calendar.

    Originariamente inviato da tigerjack89
    Altro problema che mi pongo è come fare a far tutto ciò senza usare if, else o quant'altro.
    Non li ho ancora studiati in java, li conosco solamente perchè li ho usati in C. E visto che verranno trattati in capitoli successivi, immagino ci sia un modo per farlo senza usarli.
    Non è logico dare una consegna "se la votazione si conclude prima delle 20 del primo martedì ...." senza permetterti di usare gli if , come dice Alex asd
    lolide
    Java Programmer

    Informati

  6. #6

    Re: Re: Re: Re: [JAVA] - Classe Gregorian Calendar

    Originariamente inviato da lolide
    Non è logico dare una consegna "se la votazione si conclude prima delle 20 del primo martedì ...." senza permetterti di usare gli if , come dice Alex asd
    Quello che pensavo anch'io!! Resta il fatto che essendo un libro universitario strutturato in capitoli, nel terzo capitolo non si parla ancora di if.
    Perciò pensavo che forse c'era qualche metoda da invocare (come compareTo o equals per gli interi, after e before per le date) che mi avrebbe aiutato.
    :S :S :S non ce sto a capi piu nulla!!

    Grazie mille comunque a tutti

  7. #7
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802

    Re: Re: Re: Re: Re: [JAVA] - Classe Gregorian Calendar

    Originariamente inviato da tigerjack89
    Perciò pensavo che forse c'era qualche metoda da invocare (come compareTo o equals per gli interi, after e before per le date) che mi avrebbe aiutato.
    E senza if come verifichi il valore di ritorno di questi metodi?

    Sei proprio sicuro di non aver saltato qualche pezzo?
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  8. #8

    Re: Re: Re: Re: Re: [JAVA] - Classe Gregorian Calendar

    Originariamente inviato da tigerjack89
    Quello che pensavo anch'io!! Resta il fatto che essendo un libro universitario strutturato in capitoli, nel terzo capitolo non si parla ancora di if.
    Perciò pensavo che forse c'era qualche metoda da invocare (come compareTo o equals per gli interi, after e before per le date) che mi avrebbe aiutato.
    :S :S :S non ce sto a capi piu nulla!!

    Grazie mille comunque a tutti
    Curioso questo libro che speiga prima le basi della programmazione ad oggetti delle istruzioni condizionali.Queste ultime sono presenti dalla notte dei tempi anche nei linguaggi procedurali e, a mio avviso,sono molto più basilari dei concetti di classe o incapsulamento, come dimostrano le ovvie difficoltà che incontri. E' come se ti chiedessero di costruire case con i mattoni ma senza collante per attaccarli assieme. Mah..
    Il centro dell'attenzione non è sempre un buon posto in cui trovarsi

    Mai discutere con uno stupido, la gente potrebbe non capire la differenza. (O. W.)

  9. #9

    Re: Re: Re: Re: Re: Re: [JAVA] - Classe Gregorian Calendar

    Originariamente inviato da Alex'87
    E senza if come verifichi il valore di ritorno di questi metodi?

    Sei proprio sicuro di non aver saltato qualche pezzo?
    Ecco appunto...
    Il centro dell'attenzione non è sempre un buon posto in cui trovarsi

    Mai discutere con uno stupido, la gente potrebbe non capire la differenza. (O. W.)

  10. #10

    Re: Re: Re: Re: Re: Re: [JAVA] - Classe Gregorian Calendar

    Originariamente inviato da Alex'87
    E senza if come verifichi il valore di ritorno di questi metodi?

    Sei proprio sicuro di non aver saltato qualche pezzo?
    Non ne ho idea...proprio per questo non sapevo più cosa fare...

    Comunque nessun pezzo saltato, la traccia è proprio come ve l'ho detta e il libro è strutturato proprio cosi; ho letto ogni virgola del libro fino a quel punto e ancora non si parla di if ed else (che ho studiato invece nel linguaggio C).

    Grazie a tutti. Confido nel vostro aiuto

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.