Senin, 23 April 2012

Program menghitung nilai hasil UTS, UAS & tampilan nilai huruf yg akan di dapat

Soal:

Buatlah program untuk menghitung nilai Hasil dari nilai UTS, UAS dan
menampilkan nilai huruf yang akan didapat.
Ketentuan :
- Masukan banyak data yang diinginkan untuk menentukan banyak data yang
  akan diproses.
- Buatlah sebuah function untuk menghitung nilai Hasil
  Nilai Hasil = (Nilai UAS * 40%) + (Nilai UTS * 60%)
  • Jika Nilai Huruf = A, maka Nilai Hasil >= 80
  • Jika Nilai Huruf = B, maka Nilai Hasil >= 70
  • Jika Nilai Huruf = C, maka Nilai Hasil >= 56
  • Jika Nilai Huruf = D, maka Nilai Hasil >= 47
  • Jika Nilai Huruf = E, maka Nilai Hasil < 47
Tampilan akhir adalah sebuah tabel, seperti dibawah ini:


                   Daftar Nilai Mata Kuliah C++
_________________________________________________________________
No    Nama                            Nilai                        Nilai                        Nilai
         Mahasiswa            UTS       UAS                Akhir                        Huruf
_________________________________________________________________    
...       .........                   ...             ...                    .....                              .....
...       .........                   ...             ...                    .....                              .....
_________________________________________________________________

Script Program:

#include <iostream.h>
#include <conio.h>
#include <iomanip.h>
#include <stdio.h>

garis()
{
cout<<"================================================================"<<endl;
}
nilai(float uts,float uas,float *hasil,char **huruf)
{
*hasil=(uas*0.4)+(uts*0.6) ;
if (*hasil>=80)
{
*huruf="A";
}
else
if (*hasil>=70)
{
*huruf="B";
}
else
if (*hasil>=56)
{
*huruf="C";
}
else
if (*hasil>=47)
{
*huruf="D";
}
else
{
*huruf="E";
}

}
main()
{
int i, j;

struct
{
float hasil,uas,uts;

char nama[50], *huruf;
}mhs[5];

clrscr();

cout<<"\t\tPROGRAM HITUNG NILAI AKHIR MATERI PEMROGRAMAN C++"<<endl;
cout<<"\t\t================================================="<<endl;
cout<<endl;
cout<<"Masukkan jumlah mahasiswa : ";cin>>j;
cout<<endl;

for(i=1;i<=j;i++)

{
cout<<"Mahasiswa ke- "<<i<<endl;
cout<<"Nama Mahasiswa  : ";cin>>mhs[i].nama;
cout<<"Nilai UTS       : ";cin>>mhs[i].uts;
cout<<"Nilai UAS       : ";cin>>mhs[i].uas;
nilai(mhs[i].uts,mhs[i].uas,&mhs[i].hasil,&mhs[i].huruf);
cout<<"Hasil yang di dapat adalah : "<<mhs[i].hasil<<endl;
cout<<"Grade yang di dapat : "<<mhs[i].huruf<<endl;

cout<<endl;
}


garis();
cout<<"No    Nama               Nilai           Nilai           Nilai   "<<endl;
cout<<"      Mahasiswa      UTS       UAS       Akhir           Huruf   "<<endl;
garis();
for(i=1;i<=j;i++)

{

cout<<setiosflags(ios::left)<<setw(6)<<i;
cout<<setiosflags(ios::left)<<setw(15)<<mhs[i].nama;
cout<<setiosflags(ios::left)<<setw(10)<<mhs[i].uts;
cout<<setiosflags(ios::left)<<setw(11)<<mhs[i].uas;
nilai(mhs[i].uts,mhs[i].uas,&mhs[i].hasil,&mhs[i].huruf);

cout<<setiosflags(ios::left)<<setw(17)<<mhs[i].hasil;
cout<<setiosflags(ios::left)<<setw(13)<<mhs[i].huruf<<endl;


}

garis();
getch();
}





4 komentar:

Resep Masakan Mantap mengatakan...

makasih gan ilmunya..
bermanfaat banget :D

mau tanya nih itu di bagian fingsi kan ada **huruf

maksudnya **(bintang dua kali) itu fungsinya buat apa ya gan ? dan kenapa harus 2 ?

Faizal Blog's mengatakan...

makasih gan. ini sangat berguna banget buat saya..

Unknown mengatakan...

Terima Kasih Banyak gan , ini membantu menyelesaikan tugas saya .

Danangaditya nugroho mengatakan...

Makasih kak