Kamis, 02 Juli 2015

Algoritma Konversi Nilai ke Huruf (C++)


Konversi Nilai ke Huruf, biasanya berkaitan dengan IP (Indeks Prestasi). Indeks prestasi adalah salah satu alat ukur prestasi di bidang akademik/pendidikan. Meskipun bernama "indeks", IP sebenarnya bukanlah indeks dalam pengertian sebenarnya, melainkan semacam rerata terboboti.

Dalam pembahasan kali ini, saya mengambil contoh apabila nilai mahasiswa 0-20 maka dia dapat E, 21-40 dapat B, 41-60 dapat C, 61-80 dapat B, dan 81-100 dapat A (bukan perhitungan IP yang sebenarnya). Dari data tersebut, algoritma yang bisa dibuat adalah sebagai berikut.

Algoritma:
Algoritma KonversiNilai
    {membaca nilai mahasiswa dalam bentuk angka dan menampilkan dalam huruf (81-100 = A, 61-80 = B, 41-60 = C, 21-40 = D, 0-20 = E)}

Deklarasi:
    nilai : integer

Deskripsi:
    read(nilai)

    if nilai>=81 and nilai <=100 then
        write('A')
    else if nilai>=61 and nilai<=80 then
        write('B')
    else if nilai>=41 and nilai<=60 then
        write('C')
    else if nilai>=21 and nilai<=40 then
        write('D')
    else if nilai>=0 and nilai<=20 then
        write('E')
    else
        write('?')
    endif

Source code:
#include <iostream>
//develop251.blogspot.com
using namespace std;

int main(){
    int nilai;
    
    cout << "Masukkan nilai Anda : "; cin >> nilai;
    
    if(nilai>=81 && nilai<=100){
        cout << 'A' << endl;
    }else if(nilai>=61 && nilai<=80){
        cout << 'B' << endl;
    }else if(nilai>=41 && nilai<=60){
        cout << 'C' << endl;
    }else if(nilai>=21 && nilai<=40){
        cout << 'D' << endl;
    }else if(nilai>=0 && nilai<=20){
        cout << 'E' << endl;
    }else{
        cout << '?' << endl;
    }
    
    return 0;
}

Source code dengan class:
#include <iostream>
//develop251.blogspot.com
using namespace std;

class Penilaian{
    private:
        int nilaiAngka;
        char nilaiHuruf;

    public:
        void inputNilaiAngka(){
            cout << "Masukkan nilai Anda : ";
            cin >> nilaiAngka;
        }

        void outputNilaiHuruf(){
            if(nilaiAngka>=81 && nilaiAngka<=100){
                nilaiHuruf = 'A';
            }else if(nilaiAngka>=61 && nilaiAngka<=80){
                nilaiHuruf = 'B';
            }else if(nilaiAngka>=41 && nilaiAngka<=60){
                nilaiHuruf = 'C';
            }else if(nilaiAngka>=21 && nilaiAngka<=40){
                nilaiHuruf = 'D';
            }else if(nilaiAngka>=0 && nilaiAngka<=20){
                nilaiHuruf = 'E';
            }else{
                nilaiHuruf = '?';
            }

            cout << "Nilai Anda : " << nilaiHuruf << endl;
        }
};

int main(){
    Penilaian penilaian;

    penilaian.inputNilaiAngka();
    penilaian.outputNilaiHuruf();

    return 0;
}

Hasil:



Referensi:
  • https://id.wikipedia.org/wiki/Indeks_prestasi

2 komentar