Come implementare in Java questo programma?
Realizzare un software per la gestione di un ipotetico campionato di velocità. Il software dovrà avere le seguenti caratteristiche:
il campionato è composto da 10 gare;
ogni corridore avrà associato un numero intero che ne rappresenta "il potere", cioè il corridore con numero più alto può vincere, statisticamente, di più rispetto a un'altro con il numero più basso;
un menù per la gestione delle varie fasi come, ad esempio:
l'inserimento in "ordine alfabetico" di un nuovo atleta;
il caricamento da file dell'elenco degli atleti;
generazione random delle posizioni al traguardo per ciascuna gara;
stampa a video l'ordine dell'arrivo al traguardo della singola gara, ordinata per posizione;
stampa a video della classifica della singola gara, ordinata per punteggio, ricordando che il primo al traguardo guadagna 10 punti, il secondo 8, il terzo 6, il quanto 5 e così fino all'ottava posizione;
stampa a video della classifica di tutto il campionato disputato al momento, ordinata per punteggio, ricordando che il primo al traguardo guadagna 10 punti, il secondo 8, il terzo 6, il quanto 5 e così fino all'ottava posizione;
salva la sessione di lavoro su file.
Ecco quello che sono riuscito a fare finora:
Grazie in anticipo per tutti i consigli che mi darette!codice:/* <<<Problema>>> Realizzare un software che simuli i risultati di una competizione fra atleti. <<<Algoritmo>>> * Caricare i nomi della lista degli atleti * Aggiungere nuovo atleta da console * Generare le posizioni casuali degli atleti in arrivo * Stampare gli atleti secondo il loro arrivo Metodi da creare: * Caricare la lista degli atleti da un file .txt * Aggiungere un nuovo atleta da console * Generare le posizioni casuali degli atleti in arrivo Tipi di array: * i nomi; * gli arrivi; * gli atleti; Pseudocodifica: inizio classe Ris_Comp dichiarazione e inizializzazione degli attributi: private String nomi[]; private String arrivi[]; private String atleta[]; int numeroAtleti = 0; Ris_Comp() { this.atleta = atleta; this.arrivi = arrivi; this.nomi = nomi; atleta = new atleta[10]; arrivi = new arrivi[10]; nomi = new nomi[10]; } caricaAtleti() { } aggiugiAtleta() { } generaPosizione() { int cont; per(cont = 0; cont<numeroAtleti; cont++) se (atleta[cont] == (int) Math.random()*10+1) atleta[cont]; } fine classe Ris_Comp */ import java.util.Scanner; import java.util.StringTokenizer; import java.io.IOException; import java.io.FileReader; class Ris_Comp { //dichiaro e inizializzo gli attributi private String nomi[]; private String arrivi[]; private String atleta[]; int numeroAtleti = 0; //metodo costruttore public void Ris_Comp() { atleta = new atleta[10]; arrivi = new arrivi[10]; nomi = new nomi[10]; } //metodo carica atleti da file .txt public void caricaAtleti() { //filereader e scanner } //metodo aggiungi atleta da input(tastiera) public void aggiugiAtleta() { Scanner sc = new Scanner(System.in); System.out.print("Inserire il nome di un atleta: "); } //metodo che genera le posizioni di arrivo public void generaPosizione() { int cont; for(cont = 0; cont<numeroAtleti;cont++) if (atleta[cont] == (int) Math.random()*10 + 1) atleta[cont]; } }

Rispondi quotando

