Anda di halaman 1dari 10

LAPORAN PRATIKUM PENGANTAR KODING

Oleh
Nama : Calvin M. P Sinaga
Nim : 22073011
Dosen Pengampu : Novi Febrianti A.G, S.Pd.,M.Pd.T

UNIVERSITAS NEGERI PADANG


2022
Laporan Praktikum Pengantar Coding Minggu 15
“MEMBUAT SEBUAH PROGRAM APLIKASI PADA DEV C++”
Pada pertemuan minggu ke 15, Mahasiswa diberikan tugas untuk menyusun sebuah
program aplikasi sederhana yang dapat digunakan dalam kehidupan sehari-hari yang dapat
membantu mempermudah pekerjaaan seseorang. Contohnya program kasir (pada Modul 10) dsb.
Maka Saya akan membuat program yang serupa namun memiliki fungsi yang berbeda yaitu
“Program Menghitung Nilai UTS, UAS, Tugas dan Quiz (Maksimal 3 Orang)”
- Script/ Program
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<string.h>

#define N 3
#define MID 0.25
#define UAS 0.30
#define TGS 0.30
#define QSZ 0.15

typedef struct MHS{


char nama [30];
char nim [4];
}MHS;

typedef struct NILAI{


double mid;
double uas;
double tugas;
double quiz;
double nAkhir;
char nHuruf;
}NILAI;

typedef struct DATAMHS{


MHS mhs;
NILAI nilai;
}DATAMHS;

void judul();
void bacaMhs();
void bacaNilai(int i);
void infoMhs(int i);
double hitungAkhir(double m,double u,double t,double q);
char konversiHuruf(double na);
int cariData(char nimnya[]);
void urutkan();

DATAMHS dataMhs[N];

main(){
int i,posisi;
char nimnya[4];

judul();
bacaMhs();
printf("\nMenampilkan Identitas Seluruh Mahasisiwa\n");
printf("Tekan Enter...");
getch();
for(i=0;i<N;i++){
infoMhs(i);
printf("\n");
}

printf("\nMencari Mahasiswa melalui NIM\n");


printf("Tekan Enter...");
getch();
printf("\nKetikkan NIM yang dicari:");
gets(nimnya); fflush(stdin);
posisi = cariData(nimnya);
if(posisi !=-999){
printf("\nData ditemukan...\n");
infoMhs(posisi);
}
else printf("\nData tidak ditemukan...\n");
printf("Selesai...Tekan Enter...");
getch();
}

void judul(){
printf(" Program Pengelolaan Data Mahasiswa\n ");
printf("=============================================\n");
printf("Tekan tombol enter...");
getch();
}

void bacaMhs(){
int i;
char namanya[30];
char nimnya[4];

printf("\n\nMembaca identitas sejumlah Mahasiswa\n");


printf("=============================================\n");
for(i=0;i<N;i++){
printf("Ketikkan nama Mahasiswa : ");
gets(namanya); fflush(stdin);
printf("Ketikkan NIM Mahasiswa : ");
gets(nimnya); fflush(stdin);
strcpy(dataMhs[i].mhs.nama,namanya);
strcpy(dataMhs[i].mhs.nim,nimnya);
bacaNilai(i);
}
printf("\nEntri Data selesai... Tekan enter...");
getch();
}

void bacaNilai(int i){


double midnya, uasnya, tugasnya, quiznya, nAkhirnya;
char nHurufnya;

printf("\nKetikka nilai MID :");


scanf("%lf", &midnya); fflush(stdin);
printf("Ketikkan nilai UAS :");
scanf("%lf", &uasnya); fflush(stdin);
printf("Ketikkan nilai Tugas :");
scanf("%lf", &tugasnya); fflush(stdin);
printf("Ketikkan nlai Quiz :");
scanf("%lf", &quiznya); fflush(stdin);
dataMhs[i].nilai.mid = midnya;
dataMhs[i].nilai.uas = uasnya;
dataMhs[i].nilai.tugas = tugasnya;
dataMhs[i].nilai.quiz = quiznya;
nAkhirnya = hitungAkhir(midnya,uasnya,tugasnya,quiznya);
nHurufnya = konversiHuruf(nAkhirnya);
dataMhs[i].nilai.nAkhir = nAkhirnya;
dataMhs[i].nilai.nHuruf = nHurufnya;
printf("\n");
}

void infoMhs(int i)
{
char namanya[30];
char nimnya[4];
double nAkhirnya;
char nHurufnya;

printf("\n\nInformasi Identitas Mahasiswa\n");


printf("=============================================\n");
strcpy(namanya, dataMhs[i].mhs.nama);
strcpy(nimnya, dataMhs[i].mhs.nim);
nAkhirnya = dataMhs[i].nilai.nAkhir;
nHurufnya = dataMhs[i].nilai.nHuruf;
printf("Nama Mahasiswa :%s\n", namanya);
printf("\tNilai Akhir :%0.1lf\n", nAkhirnya);
printf("\tNilai Huruf :%c\n", nHurufnya);
printf("=============================================\n");
}
double hitungAkhir(double m, double u, double t, double q){
double nAkhirnya = m*MID+u*UAS+t*TGS+q*QSZ;
return nAkhirnya;
}

char konversiHuruf(double na){


char nHurufnya;
if((na>=81.0)&&(na<=100.0))
nHurufnya = 'A';
else if(na>=76.0)
nHurufnya = 'B';
else if(na>=56.0)
nHurufnya = 'C';
else if(na>=45.0)
nHurufnya = 'D';
else nHurufnya = 'E';

return nHurufnya;
}
int cariData(char nimnya[]){
int i,posisi;
for(i=0;i<N;i++){
if(!strcmp(nimnya,dataMhs[i].mhs.nim)){
posisi = i;
break;
}
else{
posisi =-999;
}
}
return posisi;
}

void urutkan(){
int indexMaks,i,j;
DATAMHS temp;

for(i=0;i<N;i++){
indexMaks = i;
for(j=i+1;j<N;j++){

if(dataMhs[i].nilai.nAkhir>dataMhs[indexMaks].nilai.nAkhir){
indexMaks = j;
}
}
if(indexMaks != i){
temp = dataMhs[indexMaks];
dataMhs[indexMaks] = dataMhs[i];
dataMhs[i] = temp;
}
}
}
- Program saat di-Run

Anda mungkin juga menyukai