Forum Flash, Actionscript, PHP e MySQL
Programma cn i thread (ricerca nel vettore più ordinamento)

 
Nuovo Topic   Rispondi    Forum Flash, Actionscript, PHP e MySQL » Programmazione Generale
Precedente  Successivo 
Autore Messaggio
topolus
nuovo utente
nuovo utente



Registrato: 12/05/08 16:43
Messaggi: 1

MessaggioOggetto: Programma cn i thread (ricerca nel vettore più ordinamento)
Inviato: 12.05.08 | 18:02
Rispondi citando

devo realizzare il seguente programma:
All'interno di una scuola sono presenti 4 classi.
All'interno delle classi sono presenti un numero
di studenti X dove 15 <= X <= 25
Ad ogni studente dovrà essere assegnato un voto da O .. 10 (con
almeno una cifra decimale) che rappresenta la propria media scolastica

Si vuole stilare una lista degli studenti dell'istituto con la media
più alta dopo avere estratto il migliore studente di ogni classe.

Per la soluzione del problema viene richiesto l'utilizzo di
2 tipologie di Thread :
1) il primo thread realizzi la ricerca all'interno della
singola classe dello studente con la media più alta
2) il secondo thread ordini la lista dei migliori studenti di
ogni classe e visualizzi la lista complessiva dell'istituto in cui
siano presenti le seguenti informazioni :

Classe di appartenenza
Indice dello studente all'interno della classe
Media dello studente



Per la gestione dell'ordinamento della lista si richiede l'utilizzo
della seguente classe :
 
Codice:
class Studente {
    private String classe;
    private int id;
    private double media;

    public String getClasse()
    {
       return classe;
    }
    public void setClasse(String classe)
    {
       this.classe=classe;
    }


    public int getId()
    {
       return id;
    }
    public int getId(int id)
    {
       this.id=id;
    }


    public double getMedia()
    {
       return media;
    }
    public double getMedia(double media)
    {
       this.media=media;
    }

}


questo è il mio codice fin'ora:

 
Codice:
class Clessidra {
     private int i=0;
    char s[]={'-','\b','\\','\b','|','\b','/','\b','-','\b','\\','\b','|','\b','/','\b'};
    
    public void init(String s)
    { 
      System.out.print("\n"+s+"  ");
      i=0; 
    }
    
    public void attendi()
    {
       i = (++i) % (s.length) ;
       System.out.print(s[i]);
    }
    
}

class Ordina extends Thread{
    private boolean si=false;
    private double []v;

    public Ordina(double []a){
        v=new double [a.length];
        for(int i=0;i<a.length;i++)
        v[i]=a[i];
    }


    public void run(){
        double app;
        try{

        for(int i=0;i<v.length-1;i++)
            for(int j=i+1;j<v.length;j++)
            {
                if(v[i]<v[j]){
                    app=v[j];
                    v[j]=v[i];
                    v[i]=app;
                }
            }
            }catch(Exception e){
                System.out.println(e);
            }
            si=true;
    }

    public double[]getVet(){
        return v;
    }

    public boolean getStato(){
        return si;
    }
}
public class ClasseJava{

    public static void main(String args[]){

        double v1[];
        double v2[];
        double v3[];
        double v4[];

        v1 = creaClasse();
        v2 = creaClasse();
        v3 = creaClasse();
        v4 = creaClasse();

        System.out.println("\n\n Stampa classi non ordinate");

        //Stampa classi non ordinate
        System.out.println("\n\n ###nella classe 4a Inf ci sono "+v1.length+" alunni### \n\n ");
        stampaClasse(v1);
        System.out.println("\n\n ###nella classe 4b Inf ci sono "+v2.length+" alunni### \n\n ");
        stampaClasse(v2);
        System.out.println("\n\n ###nella classe 4a Tele ci sono "+v3.length+" alunni### \n\n ");
        stampaClasse(v3);
        System.out.println("\n\n ###nella classe 4a Ele ci sono "+v4.length+" alunni### \n\n ");
        stampaClasse(v4);
        
        Clessidra c = new Clessidra();
        
        Ordina t1=new Ordina(v1);
        
        Ordina t2=new Ordina(v2);
        Ordina t3=new Ordina(v3);
        Ordina t4=new Ordina(v4);

        t1.start();
        t2.start();
        t3.start();
        t4.start();

        c.init(".....aspetto gli ordinamenti");
        
        while(!(t1.getStato() && t2.getStato() && t3.getStato() && t4.getStato()))
        {
            c.attendi();
        }
        System.out.println();

        v1=t1.getVet();
        v2=t2.getVet();
        v3=t3.getVet();
        v4=t4.getVet();

        //Stampa classi ordinate
        System.out.println("\n\n ###Classe n° 1### "+v1.length+" alunni### \n\n ");
        stampaClasse(v1);
        System.out.println("\n\n ###Classe n° 2### "+v2.length+" alunni### \n\n ");
        stampaClasse(v2);
        System.out.println("\n\n ###Classe n° 3### "+v3.length+" alunni### \n\n ");
        stampaClasse(v3);
        System.out.println("\n\n ###Classe n° 4### "+v4.length+" alunni### \n\n ");
        stampaClasse(v4);
 
         ricerca t5 = new ricerca(v1);
        
        ricerca t6 = new ricerca(v2);
        
        ricerca t7 = new ricerca(v3);
        
        ricerca t8 = new ricerca(v4);
    
        
        t5.start();
        t6.start();
        t7.start();
        t8.start();
        
        while(!((t5.getStato()) && (t6.getStato()) && (t7.getStato()) && (t8.getStato()))){
            System.out.println("...aspetto la ricerca");
        }
        System.out.println("\n\n");
        //alunni migliori per ogni singola classe
        System.out.println("Alunno migliore della 1° classe: "+v1[0]);
        System.out.println("Alunno migliore della 2° classe: "+v2[0]);
        System.out.println("Alunno migliore della 3° classe: "+v3[0]);
        System.out.println("Alunno migliore della 4° classe: "+v4[0]);


    }
    
// da qui nn so che fare
    studente[] = new studente[4];
    
    String[] classi = new String[4];
        v1[i] = "Classe 1";
        v2[i] = "Classe 2";
        v3[i] = "Classe 3";
        v4[i] = "Classe 4";
        double[] media = new double[4];
        v1[i] = t5.getBravo();
        v2[i] = t6.getBravo();
        v3[i] = t7.getBravo();
        v4[i] = t8.getBravo();
        /*
        int[] id = new int[4];
        */
// fino qui
    public static double[] creaClasse(){

        int dimMax=15;
         int x=10;
        double v[]=new double[dimMax + ((int)(Math.random() * x))];

        for(int i=0;i<v.length;i++){
            v[i]=(int)(Math.random()*100);
            v[i]=v[i]/10;
            
        }
        return v;
    }

     
    public static void stampaClasse(double[] v){
        for(int i=0;i<v.length;i++){

            System.out.println("v["+(i+1)+"]: "+v[i]);
        }
    }
}

nn so come collegare la classe sudente al programma per ritornare i valori e mi serve la ricerca del migliore
 
Codice:
 
Codice:


Ultima modifica di topolus il 12.05.08 | 19:02, modificato 2 volte in totale
Torna in cima
Profilo Messaggio privato  
Sponsor
Coach
amministratore
amministratore


Età: -1981
Registrato: 31/01/03 13:50
Messaggi: 4546
Località: Verona

MessaggioOggetto:
Inviato: 12.05.08 | 18:55
Rispondi citando

Ciao topolus e Benvenuto nel Forum.

Ti invito ad editare il tuo topic, dandogli un titolo che rispecchi il tema appunto del topic/problema.
Inoltre ti invito quando posti del codice, a racchiuderlo tra tag CODE per renderlo più leggibile. (vedi BBCode)

.

____________________________________________________________


Il Forum è uno strumento di condivisione, oltre a fare DOMANDE, si possono anche dare RISPOSTE!
Torna in cima
Profilo Messaggio privato [ Nascosto ] HomePage Yahoo Messenger MSN Messenger Skype
Mostra prima i messaggi di:   
Nuovo Topic   Rispondi    Forum Flash, Actionscript, PHP e MySQL » Programmazione Generale Tutti i fusi orari sono GMT + 2 ore
Pagina 1 di 1

Discussioni Simili
Topic Autore Forum Risposte Ultimo Messaggio
Nessun nuovo messaggio Thread in Java cala Programmazione Generale 6 12.06.06 | 12:24 Leggi gli ultimi messaggi
giammy
Nessun nuovo messaggio Un programma per i form deltaweb Linux 2 23.06.08 | 01:56 Leggi gli ultimi messaggi
s3rg3770
Nessun nuovo messaggio Programma per case cala Hardware & Software Upgrade! 2 27.05.07 | 12:26 Leggi gli ultimi messaggi
cala
Nessun nuovo messaggio Programma per spionaggio PC roratonet Hardware & Software Upgrade! 8 20.12.05 | 10:10 Leggi gli ultimi messaggi
Coach
Nessun nuovo messaggio Implementare installazione di un prog... DottPaolo ActionScript & Server Side 5 30.06.08 | 16:06 Leggi gli ultimi messaggi
Coach



 
Vai a:  
Non puoi inserire nuovi Topic in questo forum
Non puoi rispondere ai Topic in questo forum
Non puoi modificare i tuoi messaggi in questo forum
Non puoi cancellare i tuoi messaggi in questo forum
Non puoi votare nei sondaggi in questo forum
Non puoi allegare files in questo forum
Puoi downloadare gli allegati in questo forum



Powered by phpBB © 2001, 2002 phpBB Group - phpBB SEO Designed by coachdesign - © 2003-2005