Advertisement here

Latihan 17 - Program Menghitung Nilai Perkuliahan Input Berulang Pada Java

import java.util.Scanner;
//Perintah untuk menginisialisasi objek yang diinginkan pengguna
public class lat17nilaitotal
//nama nilaitotal = nama kelas
{//untuk membuat suatu sekumpulan perintah (compound statement/block)
    public static void main (String[]args){
        //berisi argument yang diambil dari ruang eksekusi
        char nilaiIndeks; //variabel nilai indeks dengan tipe data char
        int input,masuk; //variabel input,masuk dengan tipe data integer
        double nilaiTugasTot=0; //vatiabel nilaitot dengan tipe data double
        String nilaipre; //variabel nilaipre dengan tipe data string
     
        Scanner a=new Scanner (System.in); //memasukan fungsi scanner a
        Scanner b=new Scanner (System.in); //memasukan fungsi scanner b

        double nilaiUTS,nilaiUAS,nilaiAkhir,nilaiTugas,nilaiQuis;
        //variabel nilaiUTS, nilaiUAS, nilaiAkhir, nilaiTugas, NilaiQuis dengan tipe data double
        double nilaiTugasRata;
        //variabel nilaiTugasRata dengan tipe data double
     
        char lagi='y'; //variabel lagi dengan tipe data char untuk perulangan
     
        while(lagi=='y'){ //perulangan while
         
        try{ //untuk menyediakan penanganan terhadap error atau kesalahan
        System.out.print("Nilai UTS : "); //mencetak kalimat Nilai UTS
        nilaiUTS=a.nextDouble(); //menampung variabel nilaiUTS dengan tipe data double
        System.out.print("Nilai UAS : "); //mencetak kalimat Nilai UAS
        nilaiUAS=b.nextDouble(); //menampung variabel nilaiUAS dengan tipe data double
        System.out.print("Nilai Quis : "); //mencetak kalimat Nilai Quis
        nilaiQuis=b.nextDouble(); //menampung variabel nilai Quis dengan tipe data double
 
        System.out.print("Ada berapa nilai tugas : ");
        //mencetak kalimat Ada berapa nilai tugas
        masuk=a.nextInt(); //menampung variabel masuk dengan tipe data integer
     
        for(int i=1;i<=masuk;i++){
            //variabel dengan ketetapan nilai awal i=1
            //niali i kurang dari sama dengan nilai masuk
            //i++ adalah nilai i+1
            System.out.print("Nilai Tugas Ke -"+i+":");
            //mencetak hasil nilai tugas sesuai dengan banyaknya i
            nilaiTugas=a.nextDouble(); //menampung nilaiTugas dengan tipe data double
            nilaiTugasTot=nilaiTugas+nilaiTugasTot; //rumus nilai total
        }
        nilaiTugasRata=nilaiTugasTot/masuk; //rumus nilai ratarata
        nilaiAkhir=(nilaiTugasRata*0.2+nilaiQuis*0.25+nilaiUTS*0.25+nilaiUAS*0.3); //rumus nilai akhir
     
     
     
        if(nilaiAkhir>=80){ //kondisi jika nilai lebih besar sama dengan 80
            nilaiIndeks='A'; //maka mendapat indeks A
            nilaipre="Baik Sekali"; //dengan nilai predikat Baik Sekali
        }
        else if (nilaiAkhir>=70){ //kondisi jika nilai lebih besar sama dengan 70
            nilaiIndeks='B'; //maka mendapat indeks B
            nilaipre="Baik "; // dengan nilai predikat Baik
        }else if (nilaiAkhir>=50){ //kondisi jika nilai lebih besar sama dengan 50
            nilaiIndeks='C'; //maka mendapat indeks C
            nilaipre="Cukup"; //dengan nilai predikat Cukup
        }else if (nilaiAkhir>=30){ //kondisi jika nilai lebih besar sama dengan 30
            nilaiIndeks='D'; //maka mendapat indeks D
            nilaipre="Kurang"; //dengan nilai predikat Kurang
        }else{ //jika tidak sesuai nilai yang ada maka mendapat indeks E
            nilaiIndeks='E';
            nilaipre="Kurang Sekali"; //dengan nilaipredikat Kurang Sekali
        }

        System.out.println("Nilai Rata-Rata Tugas\t = "+nilaiTugasRata);
        //mencetak hasil Nilai rata-rata tugas
        System.out.println("Nilai Akhir\t = "+nilaiAkhir);
        //mencetak nilai akhir
        System.out.println("Nilai Indeks\t = "+nilaiIndeks);
        //mencetak nilai indeks
           System.out.println("Nilai Predikat\t = "+nilaipre); 
           //mencetak nilai predikat
     
       }catch(NumberFormatException nfe){} ////menangkap eksepsi format nomor
        System.out.print("mau coba lagi (y/t) ?");
        //mencetak kalimat mau coba lagi (y/t)?
     
        String str=lat4_BacaKeyboard.bacaString();
        //memanggil kelas baca keyboard
        lagi = str.charAt(0);
        //Metode ini mengembalikan karakter terletak di String's indeks tertentu
        //Indeks string mulai dari nol
        if(lagi=='Y') lagi ='Y';
        if(lagi=='y') continue; //kondisi untuk perulangan
        else{
            System.out.println("trim\'s.. sudah mau mencoba\n");
            //jika sudah selesai maka akan tercetak kalimat trim's.. sudah mau mencoba
            break;
        } //penutup statement
    }
    }
}

Berikut adalah Program Baca Keyboard Agar Perulangan Berjalan :
import java.io.*;
// perintah untuk memasukan data dari peralatan input keyboard

public class lat4_BacaKeyboard
    //nama baca keyboard = nama kelas
    {//untuk membuat suatu sekumpulan perintah (compound statement/block).
    public static String bacaString(){
         //berisi argument yang diambil dari ruang eksekusi
        int karakter; //variabel karakter dengan tipe data integer
        String string = ""; //variabel string dengan tipe data string
        boolean selesai = false; // variabel selesai dengan tipe data boolean
     
        while(!selesai){ //perulangan
            try { // untuk menyediakan penanganan terhadap error atau kesalahan
                karakter  =System.in.read(); //membaca inputan
                if(karakter<0 ||(char)karakter == '\n')
                //kondisi jika karakter kurang dari 0 maka karakter sebanyak n
                selesai=true;
                else
                if(karakter != '\r')
                string = string+(char)karakter;
            }catch(IOException ioe){
                //kode untuk menangani error exception yang berhubungan dengan input output
                System.err.println("Ada Kesalahan Input Data!");
                //untuk menampilkan pesan error
                selesai=true; //jika benar maka statement akan berhenti
            }
        }
        return string; //mengembalikan string
    }//penutup compound statement
}

Berikut adalah Outputnya :

Next Post Previous Post
No Comment
Add Comment
comment url
Advertisement here
Advertisement here
Advertisement here
Advertisement here