menghitung nilai ipk mahasiswa C++

  menghitung nilai ipk mahasiswa C++



Analisis masalah :
                -input data mahasiswa menggunakan array.
               -data nilai dalam array semuanya dijumlah dengan terlebih dahulu di kali sks 
                -setelah selesai jumlah semua di bagi jumlah sks 
         













#include<iostream>
#include<conio.h>
#include<ctype.h>
#include<stdlib.h>
#include<stdio.h>
#include<windows.h>
using namespace std;

 class ipk {
 public:

  int i,a;
    
   struct
   {
      char nim[10];
      char nama[15];
      char matkul[15];
      
        char fakultas[40];
        char prodi[20];
        char alamat[50];
      float nilai;
   } mhs[80];

 void masuk(int a);
 void hasil(int a);

    private:
    int jum,bnilai[170],sks[170];
        string nil[20];
        float tmutu=0;
           int mutu[170];
 };

  void ipk::masuk( int a){

 // untuk inputan data terdapar parameter a untuk jumlh mhs
for(i=1; i<=a; i++)
   {    
  
      cout<<"Data Ke -"<<i<<" "<<endl;
      cout<<" NIM = "; cin>>mhs[i].nim;
      cout<<" Nama = "; cin>>mhs[i].nama;
      cout<<" fakultas = "; cin>>mhs[i].fakultas;
      cout<<" prodi = "; cin>>mhs[i].prodi;
      cout<<" alamat = "; cin>>mhs[i].alamat;
      cout<<" jumlah matkul = "; cin>>jum;
      cout<<endl;
      awal:
      for(i=1; i<=jum; i++){
          cout<<" nama matkul : ";cin>>mhs[i].matkul;
          cout<<" Nilai    :    ";cin>>nil[i];
     
         if(nil[i]=="a" || nil[i]=="A"){
   bnilai[i]=4;
   }
  else if(nil[i]=="b" || nil[i]=="B"){
   bnilai[i]=3;
   }
  else if(nil[i]=="c" || nil[i]=="C"){
   bnilai[i]=2;
   }
  else if(nil[i]=="d" || nil[i]=="D"){
   bnilai[i]=1;
   }
  else if(nil[i]=="e" || nil[i]=="E"){
   bnilai[i]=0;
   }
  else{
   cout<<"Masukkan HANYA A,B,C,D,E!!\a";
   goto awal;
    }
   

  kond:
      cout<<"Bobot SKS [1..4]: "; cin>>sks[i];

  if(sks[i]>=1 && sks[i]<=4){
   sks[i]=sks[i];
 
}
  else{
   cout<<"Masukkan HANYA Angka 1-4!!\a";
   goto kond;
   }
  mutu[i]=bnilai[i]*sks[i];
   
   
   
   
      cout<<endl;
   } 
 }

}

void ipk::hasil(int a){

 

     cout<<"\a\nHASIL\a";
float tmutu=0, tbobot=0;
 for(int o=1; o<=jum; o++){
  tmutu+=mutu[o];
  tbobot+=sks[o];
}
  float ipk;
 ipk=tmutu/tbobot;
 cout<<"========================\a";
for(i=1; i<=a; i++)
   {
    cout<<"Data Ke -"<<i<<" "<<endl;
    cout<<"Nama      = "<<mhs[i].nama<<endl;
    cout<<"NIM       = "<<mhs[i].nim<<endl;
    cout<<"fakultas  = "<<mhs[i].fakultas<<endl;
    cout<<"prodi     = "<<mhs[i].prodi<<endl;
    cout<<"alamat    = "<<mhs[i].alamat<<endl;
    cout<<"Nilai IPK = "<<ipk<<endl; // merupakan variable penyimpan nilai lalu di bagi 9 untuk mencari ipk
   
 }
 cout<<"\a\a========================"<<endl;
 for(i=1; i<=jum; i++){
     cout<<"matkul : "<<mhs[i].matkul<<" nilai : "<<nil[i]<<endl;
 }
 getch();
}

 main()
 {
ipk x;
int a;
cout<<" jumlah mhs ";cin>>a;
 x.masuk(a);
 x.hasil(a);   

      
  
 }
output :





1 komentar


EmoticonEmoticon