#include
#include
typedef struct
{
char nama [20];
int nim;
int sks;
float ipk;
float pembayaran;
}Mahasiswa;
void input(Mahasiswa *M);
void tampil(Mahasiswa M);
void editIPK(Mahasiswa *M);
void tampilData(Mahasiswa M);
int main()
{
Mahasiswa M;
input(&M);
getch();
tampil(M);
getch();
editIPK(&M);
tampil(M);
getch();
}
void input(Mahasiswa *M)
{
printf("==========Input Data Mahasiswa==============");
printf("\nNama : ");scanf("%s",&(*M).nama);
printf("NIM : ");scanf("%d",&(*M).nim);
do{
printf("IPK : ");scanf("%f",&(*M).ipk);
if((*M).ipk<0 || (*M).ipk>4)
printf("Input lagi\n");
}while((*M).ipk<0 || (*M).ipk>4);
if((*M).ipk>=2)
printf("\n,,,,,Status Mahasiswa tidak di DO,,,,,,\n");
else
if((*M).ipk<2)
printf("\n,,,,,Status Mahasiswa di DO,,,,,,\n");
}
void tampil(Mahasiswa M)
{
printf("\n=============Tampil Data Mahasiswa=============");
printf("\nNama : %s",M.nama);
printf("\nNIM : %d",M.nim);
printf("\nIPK : %.2f",M.ipk);
printf("\nSKS : %d",ipkh(M));
printf("\nHarga Per SKS : %d",harga(M));
float temp;
temp=harga(M)*ipkh(M);
printf("\nTotal Pembayaran : %.2f",temp);
}
int ipkh(Mahasiswa M)
{
if(M.ipk<=2.00)
return 15;
else
if(M.ipk>2.01 && M.ipk<=2.5)
return 18;
else
if(M.ipk>2.51 && M.ipk<=2.99)
return 21;
else
if(M.ipk>=3 && M.ipk<=4.00)
return 24;
printf("\nPer SKS : %d",harga(M));
printf("\nSKS : %d",ipkh(M));
}
int harga(Mahasiswa M)
{
if(M.nim<=4000)
return 80000;
else if(M.nim==4001 || M.nim==5000)
return 90000;
else if(M.nim>5000)
return 100000;
else return 0;
}
void editIPK(Mahasiswa *M)
{
float temp;
printf("\n==========Edit Data Mahasiswa===============\n");
printf("Masukkan IPK mahasiswa : ");scanf("%f",&(*M).ipk);
// (*M).ipk=temp;
printf("\nIPK sekarang : %.2f\n",(*M).ipk);
}
void tampilData(Mahasiswa M)
{
printf("\n=============Tampil Data Mahasiswa=============");
printf("\nNama : %s",M.nama);
printf("\nNIM : %d",M.nim);
printf("\nIPK : %.2f",M.ipk);
printf("\nSKS : %d",ipkh(M));
printf("\nHarga Per SKS : %d",harga(M));
float temp;
temp=harga(M)*ipkh(M);
printf("\nTotal Pembayaran : %.2f",temp);
}


Tidak ada komentar:
Posting Komentar