Ciao a tutti ragazzi, sto scrivendo questo codice per un esame.
Praticamente prendo da un database(File di testo) una lista di partecipanti a una lotteria.
Devo estrarre tre nomi per 3 possibili premi.
Il programma funziona tranne nella parte in cui si esclude che chi abbia già vinto un premio(primo estratto) posso vincerne un altro.
Ed è qui che non riesco a capire come fare l'esclusione.
Mi aiutereste please?
codice:
import java.util.*;import java.io.*;
public class GestoreLotteria {
public static ArrayList<Utente>utenti=new ArrayList<Utente>();
public static String nome,cognome,città,data;
public static int num=0;
public static int totaleUtenti;
public static int primo,secondo,terzo;
public static Random estrai=new Random();
public static void main(String[] args) throws FileNotFoundException {
Scanner scan=new Scanner(new File("databaseLotteria2.txt"));
while(scan.hasNext())
{
nome=scan.next();
cognome=scan.next();
città=scan.next();
num=num+1;
utenti.add(new Utente(nome,cognome,città,data,num));
}
totaleUtenti=num;
System.out.println("Utenti presenti nel database:" );
//ESTRAZIONE
for(int i=0;i<utenti.size();i++)
{
System.out.println(utenti.get(i).toString());
primo=estrai.nextInt(totaleUtenti);
secondo=estrai.nextInt(totaleUtenti-primo);
terzo=estrai.nextInt(totaleUtenti-primo-secondo);
}
System.out.println(" ");
System.out.println(" il primo premio va a " +utenti.get(primo).toString());
System.out.println(" il secondo premio va a " +utenti.get(secondo).toString());
System.out.println(" il terzo premio va a " +utenti.get(terzo).toString());
}
}