Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Motorola razr fold, dalla conchiglia al formato a libro. La recensione
Motorola razr fold, dalla conchiglia al formato a libro. La recensione
Abbiamo provato Motorola razr fold, il pieghevole a libro con display interno LTPO da 8,09 pollici, Snapdragon 8 Gen 5 e batteria da 6000 mAh in 243 grammi. Pennino e custodia sopno già nella confezione, per un foldable che si caratterizza per il pannello luminoso, l'autonomia ottima per la categoria e le fotocamere coerenti e ben sfruttabili. Il listino è di 1999 euro, ma in vendita si trova già a molto meno
Recensione Google Pixel Watch 5: sembra lo stesso, ma al polso la differenza si sente
Recensione Google Pixel Watch 5: sembra lo stesso, ma al polso la differenza si sente
Google Pixel Watch 5 ha affinato una formula già convincente con hardware più veloce, Gemini offline e nuovi strumenti per sport e benessere. Abbiamo provato la versione LTE da 41 mm, comoda anche di notte e ben proporzionata sui polsi piccoli. Il design resta un punto di forza, ma l'autonomia premia ancora il 45 mm e alcune funzioni AI non sono disponibili in Italia: ecco che cosa cambia rispetto a Watch 4 e quale formato conviene scegliere oggi
Nokia Innovation Day 2026: la sovranità europea passa dal mercato unico e dai laboratori italiani del gruppo
Nokia Innovation Day 2026: la sovranità europea passa dal mercato unico e dai laboratori italiani del gruppo
Politica, accademia e industria a confronto su mercato unico, sicurezza e competitività. Nei laboratori di Vimercate, Nokia ha mostrato le nuove generazioni di chip ottici e i test che ogni prodotto deve superare prima di arrivare sul mercato
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 27-04-2009, 16:51   #1
Cory
Member
 
L'Avatar di Cory
 
Iscritto dal: Jan 2009
Città: Trento
Messaggi: 81
[JAVA] Problema programma

Ciao a tutti! Sto scrivendo un programma che simuli delle elezioni. Il funzionamento prevede la presenza di un Urna che genera casualmente i voti che vengono assegnati ai vari candidati. Ora, sulla prima parte ci sono, solamente ho qualche difficioltà a implementare la funzione che dovrebbe assegnare ai vari candidati i voti ricevuti. Vi copio qui il codice che ho scritto finora.

Codice:
import java.util.*;

class Urna{

    int nvotanti=10;
    int voto;
    int ncandidati=3;

    public void checkVoto(int voto, Candidato c){
    
    if(voto==c.num){
    
        c.nvoti++;
        }
    
    }

    public Urna(){

        Random r=new Random(System.currentTimeMillis()/27);
        for(int i=0; i<nvotanti;i++){
        voto=r.nextInt(ncandidati)+1;
        System.out.println("è uscito il voto " + voto);
        checkVoto(voto, Candidato c);
            }
        }
    }



class Candidato{    
    String nome;
    int nvoti;   
    int num;

    public void checkVoto(int voto){

    if(voto==this.num){
        this.nvoti++;
        }

    }

    public Candidato(String nome, int num){

    this.num=num;
    int voto=0;
    this.nome=nome;
    }
}


 class Elezioni {

    Elezioni p=new Elezioni();

public static void main(String [] args){

  Urna x=new Urna();
  Candidato uno=new Candidato("Marco",1);
  Candidato due=new Candidato("Andrea",2);
  Candidato tre=new Candidato("Stefano",3);

  uno.checkVoto(x.voto);
  due.checkVoto(x.voto);
  tre.checkVoto(x.voto);

  System.out.println(uno.nvoti);
  System.out.println(due.nvoti);
  System.out.println(tre.nvoti);
    }

}
grazie in anticipo a chi si prenderà la sbatta di rispondere
Cory è offline   Rispondi citando il messaggio o parte di esso
Old 27-04-2009, 17:07   #2
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Direi che il tuo algoritmo ha perso qualche pezzo.

L'idea generale sembra essere questo:

Data un set di candidati, l'urna, per ogni voto, assegna il voto al candidato corrispondente.

I voti li crea urna. E' un po' strano ma tutto è possibile.

Dunque hai l'insieme dei candidati, lo passi all'urna, l'urna per ogni voto che crea determina a quale dei candidati nel set corrisponda e a quel punto incrementa il valore del campo nvoti di quel candidato.

Non incollo codice perchè mi sa tanto di esercizio scolastico e non è bello.

Ps.: non è bello dare la soluzione, esercizio, scuola, domande e dubbi sono tutti bellissimi :
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
Old 27-04-2009, 17:17   #3
Cory
Member
 
L'Avatar di Cory
 
Iscritto dal: Jan 2009
Città: Trento
Messaggi: 81
diciamo che si tratta di un tentativo di trsposizione di un esercizio che avevo fatto in C++ tempo addietro.

l'idea è proprio come l'hai descritaa, solo non capisco come passare i candidati all'urna!

boh..
Cory è offline   Rispondi citando il messaggio o parte di esso
Old 27-04-2009, 17:30   #4
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Un candidato è un'istanza, come uno, due e tre. Più candidati o sono un array di Candidato o una collezione. Ad esempio:

Candidato[] candidati = { uno, due, tre };

oppure:

java.util.LinkedList<Candidato> candidati = new java.util.LinkedList<Candidato>();
candidati.add(uno);
candidati.add(due);
candidati.add(tre);

Puoi passarli all'urna in costruzione. Se adesso il costruttore di urna è:

public Urna() {...}

Diventerà (nel caso dell'array):

public Urna(Candidato[] candidati) {...

Nel metodo main prima crei i candidati, poi li impacchetti in un array, poi crei l'urna passandogli quell'array.

A questo punto nel costruttore di Urna hai un insieme di candidati. Avendo i candidati puoi dire:

Codice:
per ogni voto 
    per ogni candidato c nell'array candidati
        se voto == c.num
            c.nvoti++
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Motorola razr fold, dalla conchiglia al formato a libro. La recensione Motorola razr fold, dalla conchiglia al formato ...
Recensione Google Pixel Watch 5: sembra lo stesso, ma al polso la differenza si sente Recensione Google Pixel Watch 5: sembra lo stess...
Nokia Innovation Day 2026: la sovranità europea passa dal mercato unico e dai laboratori italiani del gruppo Nokia Innovation Day 2026: la sovranità e...
In sella alla Fiido Nomads Pro: e-bike con motore centrale da 100 Nm per il divertimento a 360 gradi In sella alla Fiido Nomads Pro: e-bike con motor...
ASUS Zenbook 14 (UX3480AA): tanta autonomia con uno chassis bello e robusto ASUS Zenbook 14 (UX3480AA): tanta autonomia con ...
Starship: SpaceX potrebbe tentare di rec...
Federico Veronesi vince i Wildlife Photo...
Samsung Galaxy bloccati dopo l'aggiornam...
L'UE prolunga il periodo di test del pro...
Offerte Amazon di oggi: e-bike da 616€, ...
La missione cino-europea ESA Smile ha in...
Cisco sulle tracce dell’IA nei malware: ...
Nuovo Codice della strada: stop alla PEC...
Blue Origin Constellation Park: un nuovo...
E-bike da 615€ su Amazon: Bodywel F20PRO...
Windows 11 24H2, stop al supporto per Ho...
Gemini 4 Argon disponibile per tutti: co...
Sony avrebbe chiuso Overdrive, lo store ...
Abbiamo scattato con OPPO Find X10 Pro M...
Fino a 21 miliardi per i chip americani:...
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: 21:45.


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