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
undefined symbol 'nil'
EmoticonEmoticon