Confronto valore massimo tra due file

di il
1 risposte

Confronto valore massimo tra due file

Ciao a tutti devo trovare il più alto indice di produttività tra due file diversi(che sarebbero i dipendenti).
Devo:1. fare scan dei file della cartella->ok
2. aprire un file->ok
3. fare il calcolo dell' indice->ok
4. trovare l'indice più alto dei due->qua è il problema
NON SO PROPRIO COME FARE
Questo è il codice:
public static void main(String[] args) {
File[] list = (new File(".")).listFiles();
if(list!=null){
System.out.println("I file contenuti nella cartella sono: ");
for (File fil : list)
{
if (!fil.isDirectory())
{
if(fil.getName().contains(".dio")){
System.out.println(fil.getName());
}
}

}
}
InputStreamReader isr=new InputStreamReader(System.in);
BufferedReader br=new BufferedReader(isr);
try {
System.out.print("Quale dipendente desidera? ");
String dipendente=br.readLine();
FileReader f;
f=new FileReader(dipendente+".dio");
BufferedReader b;
b=new BufferedReader(f);
float sommaPresenze=0;
float indiceProduttività=0;
int q=0;
while(true) {
String s=b.readLine();
if( s==null)
break;
for(int i=0;i<s.length();i++){
char c = s.charAt(i);
switch(c){
case 'p':
sommaPresenze++;
break;

}
}
q+=s.length();

}
indiceProduttività=sommaPresenze*(100)/q;

System.out.println("Le ore di presenza sono: "+sommaPresenze+" ore");
System.out.println("L' indice di produttività è del "+indiceProduttività+"%");
if(indiceProduttività<51.0){
System.out.println(""+dipendente+" è un assenteista");
}
} catch (IOException e) {

e.printStackTrace();
}
}

1 Risposte

  • Re: Confronto valore massimo tra due file

    In genere per trovare il massimo tra più variabili ti basta inizializzare una variabile prima di leggere i valori (in questo caso ti basta ad es. maxIndiceProduttivita = 0), e poi testare se l'indice corrente è maggiore del massimo.
    Quando ciò accade sostituisci il massimo con il valore appena letto.

    PS : non è molto consigliabile l'utilizzo di caratteri speciali come le lettere accentare per il nome delle variabili, spesso li si evita anche nel resto del codice ...
Devi accedere o registrarti per scrivere nel forum
1 risposte