Thursday, October 22, 2015

Menentukan Indeks Nilai Ujian Berdasarkan Nilai Ujian yang Diraih Menggunakan Array

AGUSTINO HALIM (D03112019)
DHITA DEVIACITA (D03112039)
ALGORITMA DAN PEMOGRAMAN 2*


Diketahui :
Indeks nilai mahasiswa ditentukan berdasarkan nilai ujian (N) yang diraihnya. Ketentuan pemberian nilai bobot adalah sebagai berikut:
Nilai ujian ≥ 80 , Bobot nilai = A
70 ≤ nilai ujian < 80 , Bobot nilai = B                                                                             
55 ≤ nilai ujian < 70 , Bobot nilai = C                                                                                      
50 ≤ nilai ujian < 55 , Bobot nilai = D                                                                                  
Nilai ujian < 40 , Bobot nilai = E
          
Petunjuk :

  • Data input = Nama Mhs [I], Mata Kuliah [I], nilai tugas [I], nilai uts [I], nilai uas [I]
  • Data output= Nama Mhs, maka kuliah, nilai ujian, bobot nilai
  • Persamaan , Nilai Ujian = (nilai tugas x 15% + nilai uts x 35% + nilai uas x 50)
  • Gunakan Statement IF ... Then....Else atau Case ....of ....Else
  • Gunakan Tipe Array (Larik) untuk menyatakan indeknya (I)
Ditanya :

  1. Buatlah notasi algoritmiknya
  2. Ubahlah tranlasi dari algoritmik ke dalam bentuk notasi bahasa pemograman untuk menghitung nilai ujian mahasiswa.
Penyelesaian :
A)   Notasi Algoritmik

Algoritma Nilai_Ujian
      Deklarasi
            Nama_Mhs : Array [1..10] of char
            Mata_Kuliah: Array[1..N] of char
            Nilai_Tugas, UTS, UAS: Array [1..N] of Integer
            NU : Array[1..N] of integer
            N : integer
            Bobot : Char
Deskripsi
            Read (Nama_Mhs, Mata_kuliah, Nilai_Tugas, UTS, UAS)
            NU <- ( nilai tugas [I]*0.15) + (nilai uts [I]* 0.35) + (nilai uas[I] *0.5)
            If (NU[I] ≥ 80) Then Bobot <- ‘A’ Else
            If (NU[I] ≥70) and (NU[I]≤80) Then Bobot <- ‘B’ Else
            If (NU[I]≥55) and(NU[I]≤70) Then Bobot <- ‘C’ Else
            If (NU[I]≥50) and(NU[I]≤55) Then Bobot <- ‘D’
            Else Bobot 
<- ‘E’
                        Endif
                  Endif
            Endif
      Endif
            Write (Nama_Mhs, Mata_Kuliah, NU, Bobot)

B)   Notasi Bahasa Pemograman

Program Nilai_Ujian;
Uses Crt;
    Const N=5;
  Var {Deklarasi Variabel}
            Nama_Mhs : Array [1..10] of char;
            Mata_Kuliah: Array[1..N] of char;
            Nilai_Tugas, UTS, UAS: Array [1..N] of Integer;
            NU :Array[1..N] of integer;
            N:integer;
            Bobot : Char;
Begin {Program Utama}
    Clrscr;
{Program input data}
            Write (masukkan Nama mahasiswa= ?’);
            Readln (Nama_Mhs);
            Write (masukkan Nama Matakuliah= ?’);
            Readln (Nama_MataKuliah[I]);
            Write (masukkan Nilai Tugas= ?’);
            Readln (Nilai_Tugas[I]);
            Write (masukkan Nilai UTS= ?’);

            Readln (UTS[I]);
            Write (masukkan Nilai UAS= ?’);

            Readln (UAS[I]);
{Proses Perhitungan}
            NU :=( nilai tugas [I]*0.15) + (nilai uts [I]* 0.35) + (nilai uas[I] *0.5);
{Proses Penyeleksian}
            If (NU[I] ≥ 80) Then Bobot:= ‘A’
                        Else
            If (NU[I] ≥70) and (NU[I]≤80) Then Bobot:= ‘B’
                        Else
            If (NU[I]≥55) and(NU[I]≤70) Then Bobot := ‘C’
                        Else
            If (NU[I]≥50) and(NU[I]≤55) Then Bobot:= ‘D’
                        Else
            Bobot := ‘E’
                        End;
                  End;
            End;
      End;
{Proses output}
            Writeln (‘Nama Mahasiswa =’ , Nama_Mhs[I] : 10);
            Writeln (‘Nama Mata kuliah = ‘ , Mata_kuliah[I]);
            Writeln (‘Nama ujian akhir = ‘ , NU[I] );
            Writeln (‘Bobot nilai = ‘ , Bobot);

End.

No comments:

Post a Comment