Advertisement
ZeeXy

Soal 2 Pertemuan 1

Oct 3rd, 2023
1,030
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.75 KB | None | 0 0
  1. package Pertemuan1;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.Collections;
  5. import java.util.Scanner;
  6.  
  7. public class YesYes2 {
  8.     public static void main(String[] args) {
  9.         Scanner input = new Scanner(System.in);
  10.         ArrayList<Double> nilaiKelasA = new ArrayList<>();
  11.         ArrayList<Double> nilaiKelasB = new ArrayList<>();
  12.  
  13.         while (true) {
  14.             System.out.println("\nMenu:");
  15.             System.out.println("1. Input Nilai Kelas A");
  16.             System.out.println("2. Input Nilai Kelas B");
  17.             System.out.println("3. Lihat Statistik Kelas A");
  18.             System.out.println("4. Lihat Statistik Kelas B");
  19.             System.out.println("5. Keluar");
  20.             System.out.print("Pilih menu (1/2/3/4/5): ");
  21.             int pilihan = input.nextInt();
  22.  
  23.             switch (pilihan) {
  24.                 case 1:
  25.                     System.out.print("Masukkan nilai PBO untuk Kelas A: ");
  26.                     double nilaiA = input.nextDouble();
  27.                     nilaiKelasA.add(nilaiA);
  28.                     break;
  29.                 case 2:
  30.                     System.out.print("Masukkan nilai PBO untuk Kelas B: ");
  31.                     double nilaiB = input.nextDouble();
  32.                     nilaiKelasB.add(nilaiB);
  33.                     break;
  34.                 case 3:
  35.                     tampilkanStatistik("Kelas A", nilaiKelasA);
  36.                     break;
  37.                 case 4:
  38.                     tampilkanStatistik("Kelas B", nilaiKelasB);
  39.                     break;
  40.                 case 5:
  41.                     System.out.println("Terima kasih! Program selesai.");
  42.                     System.exit(0);
  43.                 default:
  44.                     System.out.println("Pilihan tidak valid. Silakan coba lagi.");
  45.             }
  46.         }
  47.     }
  48.  
  49.     private static void tampilkanStatistik(String kelas, ArrayList<Double> nilaiKelas) {
  50.         if (nilaiKelas.isEmpty()) {
  51.             System.out.println("Tidak ada nilai PBO yang tersimpan untuk " + kelas);
  52.             return;
  53.         }
  54.  
  55.         double rataRata = hitungRataRata(nilaiKelas);
  56.         double nilaiTertinggi = Collections.max(nilaiKelas);
  57.         double nilaiTerendah = Collections.min(nilaiKelas);
  58.  
  59.         System.out.println("Statistik untuk " + kelas + ":");
  60.         System.out.println("Nilai Tersimpan: " + nilaiKelas);
  61.         System.out.println("Rata-rata: " + rataRata);
  62.         System.out.println("Nilai Tertinggi: " + nilaiTertinggi);
  63.         System.out.println("Nilai Terendah: " + nilaiTerendah);
  64.     }
  65.  
  66.     private static double hitungRataRata(ArrayList<Double> nilaiKelas) {
  67.         double total = 0;
  68.         for (double nilai : nilaiKelas) {
  69.             total += nilai;
  70.         }
  71.         return total / nilaiKelas.size();
  72.     }
  73.  
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement