Skip to content

Instantly share code, notes, and snippets.

@ilhamarrouf
Created January 20, 2019 16:15
Show Gist options
  • Save ilhamarrouf/0120035916cb61c2be20c8b0690f611c to your computer and use it in GitHub Desktop.
Save ilhamarrouf/0120035916cb61c2be20c8b0690f611c to your computer and use it in GitHub Desktop.
Task Week 7
import java.util.*;
import java.io.*;
public class IndexPrestasiSiswa {
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
ArrayList<String> courses = new ArrayList<>();
ArrayList<String> courseNames = new ArrayList<>();
ArrayList<String> courseGrades = new ArrayList<>();
ArrayList<Integer> universityCreditUnits = new ArrayList<>();
Scanner courseReader = new Scanner(System.in);
Scanner courseNameReader = new Scanner(System.in);
Scanner courseGradeReader = new Scanner(System.in);
Scanner universityCreditUnitReader = new Scanner(System.in);
int results[] = new int[15];
int menu;
int coursesCount = 0;
int gradeTotal = 0;
int grade;
int isExists = 0;
double finalResult = 0;
int universityCreditUnitsCount = 0;
String choice = "Y";
String courseCode;
while (choice.equals("Y")) {
System.out.print("\033[H\033[2J");
System.out.println("Pendataan dan Perhitungan IPS (Indeks Prestasi Semester)");
System.out.println("1.Pendataan Mata Kuliah");
System.out.println("2.Perhitungan IPS");
System.out.println("3.Update Grade");
System.out.println("4.Keluar");
System.out.print("Masukkan pilihan anda : ");
menu = reader.nextInt();
switch (menu) {
case 1:
System.out.print("\033[H\033[2J");
System.out.print("Masukan jumlah mata kuliah : ");
coursesCount = reader.nextInt();
for (int x = 1; x <= coursesCount; x++) {
System.out.print("\033[H\033[2J");
System.out.print("Masukkan kode mata kuliah : ");
courses.add(courseReader.next());
System.out.print("Masukkan nama mata kuliah : ");
courseNames.add(courseNameReader.nextLine());
System.out.print("Masukkan grade mata kuliah : ");
courseGrades.add(courseGradeReader.next());
System.out.print("Masukkan jumlah SKS : ");
universityCreditUnits.add(universityCreditUnitReader.nextInt());
}
break;
case 2:
System.out.print("\033[H\033[2J");
System.out.println("");
System.out.println("Matakuliah yang anda ambil adalah : ");
System.out.printf("%-9s %10s %20s %10s\n","Kode","Matkul","grade","SKS");
for (int x = 0; x < coursesCount; x++) {
System.out.printf("%-14s", courses.get(x));
System.out.printf("%-23s", courseNames.get(x));
System.out.printf("%-13s", courseGrades.get(x));
System.out.printf("%-10s", universityCreditUnits.get(x));
System.out.println("");
switch (courseGrades.get(x)) {
case "A":
grade = 4;
break;
case "B":
grade = 3;
break;
case "C":
grade = 2;
break;
case "D":
grade = 1;
break;
default:
grade = 0;
break;
}
results[x] = grade * universityCreditUnits.get(x);
gradeTotal = gradeTotal + results[x];
universityCreditUnitsCount = universityCreditUnitsCount + universityCreditUnits.get(x);
}
finalResult = gradeTotal / universityCreditUnitsCount;
System.out.println("Nilai IPS Anda adalah : " + finalResult);
break;
case 3:
System.out.print("\033[H\033[2J");
System.out.print("Masukkan kode mata kuliah : ");
courseCode = reader.next();
for (int x = 0; x < coursesCount; x++) {
if (courses.get(x).equals(courseCode)) {
isExists = 1;
System.out.print("Masukkan grade baru : ");
courseCode = reader.next();
System.out.printf("%-9s %10s %20s %10s\n","Kode","Matkul","grade","SKS");
courseGrades.set(x, courseCode);
for (int a = 0; a < coursesCount; a++) {
System.out.printf("%-14s", courses.get(a));
System.out.printf("%-23s", courses.get(a));
System.out.printf("%-13s", courseGrades.get(a));
System.out.printf("%-10s", universityCreditUnits.get(a));
System.out.println("");
}
System.out.println("");
}
}
if (isExists != 1) {
System.out.println("Kode mata kuliah yang anda input tidak tersedia!");
System.out.println("");
}
break;
case 4:
System.exit(0);
break;
default:
System.out.println("Menu tidak tersedia!");
break;
}
System.out.print("Kembali ke menu utama? (Y/T) : ");
try {
choice = bufferedReader.readLine();
} catch (IOException e) {
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment