AGUSTINO
HALIM (D03112019)
DHITA DEVIACITA (D03112039)
ALGORITMA DAN PEMOGRAMAN 2*
Diketahui :DHITA DEVIACITA (D03112039)
ALGORITMA DAN PEMOGRAMAN 2*
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
:
- Buatlah notasi algoritmiknya
- Ubahlah tranlasi dari algoritmik ke dalam bentuk notasi bahasa pemograman untuk menghitung nilai ujian mahasiswa.
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