J'ai besoin d'utiliser un lecteur tamponné et un lecteur de fichiers et de le formater sous des colonnes comme celle-ci.lire un fichier texte avec des virgules et des espaces pour calculer GPA
System.out.println(" Name GPA Classes Hours/Grades"
System.out.println(" ------------------ ---- -------- ------------------------ ");
Voici comment je veux calculer la GPA. Multipliez la valeur en points de la lettre par le nombre d'heures-crédits. Le résultat est les points de qualité gagnés. Total des heures de crédit pour la durée; totalisez les points de qualité pour le terme. Diviser les points de la qualité totale des heures de crédit total
Voici les informations contenues dans le fichier texte:
Anagram,Anna,3/A,4/A,3/A,3/A,3/A
Boop,Betty,3/B,3/B,4/B,3/B,3/B,1/B
Chitwilly,Cindy,4/C,3/C,3/C,3/C,3/C
Downer,Debbie,3/D,4/D,4/D,3/D,1/D
Everhappy,Eva,4/B,3/B,3/D
Froghat,Freda,3/F,4/F,4/F,3/F
Getterdone,Gina,4/B,4/B,3/B,3/B,3/C
Hotentott,Heidi,3/D,4/D,4/C,3/C,1/B
Imagooden,Inga,4/B,4/B
Jitterbug,Jeannie,3/B,3/C,4/C,3/F,3/C,1/C
Keeper,Kendra,3/A,3/B,3/C
Lovermore,Lynda,4/A,4/B,4/C,4/D
Moocher,Minnie,3/B,3/C,3/D
Nussbaum,Nancy,4/C,4/D,4/F
Oglethorpe,Olga,3/B
Poppledooper,Penny,3/D,3/F
Qutie,Quinn,2/A,4/C,2/F
Voici ma première tentative. Je suis nouveau à ce sujet, mais je voudrais vraiment comprendre cela parce que mon professeur ne l'a pas expliqué assez bien pour ma compréhension.
import java.io.*;
import java.util.StringTokenizer;
public class p02gpa {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
String file = "p02-grades.txt";
BufferedReader br = new BufferedReader(new FileReader(file));
String rec;
String fmt = "%2d: %-12s %3d %-8s %-20 %n";
System.out.println(" Name GPA Classes Hours/Grades");
System.out.println(" ------------------ ---- -------- ------------------------ ");
while((rec=br.readLine())!= null)
calcDisp(rec);
br.close();
}
//----------------------------------------------------------------------------
public static void calcDisp(String rec)
{
StringTokenizer tok;
String name;
String fname;
String lname;
double ptValue;
double classes;
double qualtyPts;
double hours;
double gpa;
int ctr=0;
tok = new StringTokenizer(rec,",|/|");
lname = tok.nextToken();
fname = tok.nextToken();
name = fname+ " "+lname;
System.out.println(name);
ctr++;
while(tok.hasMoreTokens())
{
String nameS =tok.nextToken();
String letterGrade =tok.nextToken();
System.out.println(letterGrade);
String hrsStr = tok.nextToken();
hours =Integer.parseInt(hrsStr);
System.out.println(hours);
if(letterGrade == "A")
ptValue = 4.0;
if(letterGrade == "B")
ptValue = 3.0;
if(letterGrade == "C")
ptValue = 2.0;
if(letterGrade == "D")
ptValue = 1.0;
if(letterGrade == "F")
ptValue = 0.0;
qualtyPts = ptValue * hours;
gpa = qualtyPts/hours;
Et vous aviez l'intention de nous montrer votre propre tentative de code pour résoudre avec votre question et demander à un responsable d'une question spécifique, non? –
Je suis en train de voter pour fermer cette question hors-sujet parce que, comme écrit, c'est un peu plus d'un dépotoir sans vergogne. –
Je l'ai édité avec ma tentative et l'explication de mon scénario. Ceci est un effort pour une meilleure compréhension avant ma pratique pour venir dans quelques jours. –