Soal:
Buatlah program manipulasi nilai mhs dengan stuktur , array dan sorting
Desain :
HEADER
Nim : xxxxxx
Nama : xxxxxx
Kehadiran : xx
Nilai Tugas : xx
Nilai UTS : xx
Nilai UAS : xx
Nilai Akhir : proses
Nilai Huruf : proses
Grade : proses
Keterangan : proses
Laporan Nilai Mahasiswa Sistem Informasi
No. | NIM | NAMA | KE HADIRAN | N. TGS | N. UTS | N. UAS | N. AKHIR | N HURUF | GRADE | KET |
99 | XXXX | XXXXXXX | XX | 999 | 999 | 999 | 999 | XXXX | ||
99 | XXXX | XXXXXXX | XX | 999 | 999 | 999 | 999 | XXXX | ||
… | … | ……………. | … | … | … | … | ……………. |
Ketentuan Proses:
- Nim, nama,kehadiran, nilai tugas, nilai uts, nilai uas diinput lewat keyboard
- Nilai akhir = 5% kehadiran+25% nilai tugas + 30% nilai uts + 40% nilai uas
- Nilai Huruf:
Jika nilai akhir >= 85, maka A
Jika nilai akhir >= 70, maka B
Jika nilai akhir >= 60, maka C
Jika nilai akhir >= 50, maka D
Jika nilai akhir < 50, maka E
- Grade
A : sangat memuaskan
B: memuaskan
C : cukup
D : kurang
E : gagal
- Keterangan
Jika nilai akhir >= 60, maka MHS dinyatakan LULUS
Jika nilai akhir <= 60, maka MHS dinyatakan GAGAL
penyelesaian :
#include <conio.h>
#include <iostream.h>
#include <stdio.h>
#include <iomanip.h>
#include <math.h>
void main()
{
int nim[6],i,tmp;
struct
{
char nama [15];
float nilaitgs;
float kehadiran; //struktur array
float nilaiuts;
float nilaiuas;
float nilaiakhir;
}dtmhs[8];
gotoxy(27,3);cout<<" Manipulasi Nilai Mahsiswa"<<endl;
gotoxy(27,5);cout<<" Sistem Informasi"<<endl;
gotoxy(27,7);cout<<" Universitas dian Nuswantoro "<<endl;
gotoxy(2,9);cout<<"___________________________________________________________________________"<<endl;
{
for (i=1;i<=5;i++) //nim yang akan di masukkan
{
cout<<" masukkan NIM "<<i<<":";cin>>nim[i];
cout<<" masukkan nama : "; cin>> dtmhs[i].nama;
cout<<" masukkan kehadiran : "; cin>> dtmhs[i].kehadiran;
cout<<" masukkan Nilai Tugas : "; cin>> dtmhs[i].nilaitgs;
cout<<" masukkan Nilai UTS : "; cin>> dtmhs[i].nilaiuts;
cout<<" masukkan Nilai UAS : "; cin>> dtmhs[i].nilaiuas;
dtmhs[i].nilaiakhir = (dtmhs[i].kehadiran*0.05)+(dtmhs[i].nilaitgs * 0.25) + (dtmhs[i].nilaiuts * 0.3) + (dtmhs[i].nilaiuas * 0.4);//menghitung nilai akhir
cout<<endl;
}
for (i=1;i<5;i++)
for (i=1;i<5;i++)
if (nim[i]>nim[i+1] ) //sortir
{
tmp=nim[i];
nim[i]=nim[i+1];
nim[i+1]=tmp;
}
}
cout<<" Laporan Nilai Mahasiswa Sistem Informasi "<<endl;
cout<<"________________________________________________________________________________"<<endl;
cout<<"NIM Nama Kehadiran Nilai Nilai Nilai Nilai Nilai Grade KET "<<endl;
cout<<" Tugas UTS UAS Akhir Huruf "<<endl;
cout<<"________________________________________________________________________________"<<endl;
for (i=1;i<=5;i++) //hasil pengurutan
{
cout<<setiosflags(ios::left)<<setw(4)<<nim[i];
cout<<setiosflags(ios::left)<<setw(7)<<dtmhs[i].nama;
cout<<setiosflags(ios::left)<<setw(3)<<dtmhs[i].kehadiran;
cout<<setprecision(2)<<" "<<dtmhs[i].nilaitgs;
cout<<setprecision(2)<<" "<<dtmhs[i].nilaiuts;
cout<<setprecision(2)<<" "<<dtmhs[i].nilaiuas;
cout<<setprecision(2)<<" "<<dtmhs[i].nilaiakhir;
if (dtmhs[i].nilaiakhir>=85)
{
cout<<" A "<<" sngat memuaskan"<<" Lulus"<<endl;
}
else if (dtmhs[i].nilaiakhir>=70)
{
cout<<" B "<<" memuaskan"<<" Lulus"<<endl;
}
else if (dtmhs[i].nilaiakhir>=60)
{
cout<<" C "<<" cukup "<<" Lulus"<<endl;
}
else if (dtmhs[i].nilaiakhir>=50)
{
cout<<" D "<<" kurang "<<" gagal "<<endl;
}
else
{
cout<<" E "<<" gagal"<<" gagal"<<endl;
}
}
getch ();
}
//ada 5 kali perulangan
literasi data 1 data2 data3 data4 data5
awal ........ ........ ........ ........ ........
i=1 ........ ........ ........ ........ ........
i=2 ........ ........ ........ ........ ........
seterusnya... Tampilan nya
taaaaraaaa
0 komentar:
Posting Komentar