Dokumen tersebut membahas tentang program pengolahan data nilai raport siswa menggunakan bahasa pemrograman C++. Program ini memiliki fitur input dan lihat identitas siswa, input dan lihat nilai mata pelajaran, serta menampilkan raport keseluruhan siswa.
1. 1
BAB II
PEMBAHASAN
A. Batasan Masalah
Terdapat pilih menu :
1. Input Nomor Induk Siswa
2. Lihat Nomor Induk Siswa
3. Input Identitas Siswa
4. Lihat Identitas Siswa
5. Input Nilai Mata Pelajaran
6. Lihat Raport Keseluruhan
7. Reset
0. Keluar
Input :
Memilih pilihan pada menu :
Input nomor induk siswa
Input identitas siswa
Input nilai mata pelajaran
Input identitas siswa, terdiri dari :
Nama Siswa
Program Studi Keahlian
Kelas
Semester
Tahun Ajaran
Input Nilai Mata Pelajaran, terdiri dari :
Mata Pelajaran Matematika
Jumlah Ketidak Hadiran
Nilai Tugas
Nilai Ulangan Harian
Nilai UAS
Mata Pelajaran Bahasa Indonesia
Jumlah Ketidak Hadiran
2. 2
Nilai Tugas
Nilai Ulangan Harian
Nilai UAS
Mata Pelajaran Bahasa Inggris
Jumlah Ketidak Hadiran
Nilai Tugas
Nilai Ulangan Harian
Nilai UAS
Mata Pelajaran Kejuruan
Jumlah Ketidak Hadiran
Nilai Tugas
Nilai Ulangan Harian
Nilai UAS
Output :
Lihat Nomor Induk Siswa
Lihat Identitas Siswa
Lihat Raport Keseluruhan
B. Fungsi Kode Dasar (Sintag)
#include <file-header> merupakan preprocessor pada C++ untuk
pemanggil file header yang memuat beberapa perintah dari C++,
misalnya conio.h, iostream.h, dan lain-lain.
Void judul() merupakan suatu prosedur yang digunakan untuk
menyederhanakan perintah, sehingga tidak perlu berulang kali
dalam penulisan perintah yang sama.
Void hasil () merupakan suatu prosedur yang digunakan untuk
menyederhanakan perintah, sehingga tidak perlu berulang kali
dalam penulisan perintah yang sama.
Void input () merupakan suatu prosedur yang digunakan untuk
menyederhanakan perintah, sehingga tidak perlu berulang kali
dalam penulisan perintah yang sama.
3. 3
Void garis () merupakan suatu prosedur yang digunakan untuk
menyederhanakan perintah, sehingga tidak perlu berulang kali
dalam penulisan perintah yang sama.
Void menu () merupakan suatu prosedur yang digunakan untuk
menyederhanakan perintah, sehingga tidak perlu berulang kali
dalam penulisan perintah yang sama.
Void ndisik() merupakan suatu prosedur yang digunakan untuk
menyederhanakan perintah, sehingga tidak perlu berulang kali
dalam penulisan perintah yang sama.
Main() adalah awal mula dari blok program utama.
Tanda() digunakan untuk mengapit argumen fungsi yaitu nilai yang
akan dilewatkan ke fungsi.
Tanda {dan} pada fungsi main() menyatakan awal eksekusi
program. Adapun } pada fungsi main() menyatakan akhir eksekusi
program.
Fungsi Tanda <<, yang diketahui sebagai operator pemasukan
(insertion operators). Tanda tersebut mengatakan kepada kompiler
agar segera menghasilkan output sesuai dengan input anda.
Fungsi Tanda semicolon “ ; ” digunakan untuk mengakhiri sebuah
pernyataan. Setiap pernyataan harus diakhiri dengan sebuah tanda
semicolon.
Integer (int) merupakan tipe data yang berfungsi untuk bilangan
bulat.
Char merupakan data karakter yang terdiri dari sebuah karakter
saja.
Float berfungsi sebagai tipe data angka yg berkoma
Clrscr() digunakan untuk membersihkan layar window dan
memindahkan posisi kursor ke baris 1 kolom 1 (pojok kiri atas).
Gotoxy() digunakan untuk memindahkan kursor ke kolom x, baris
y.
Cout merupakan sebuah objek didalam Borland C++ digunakan
untuk menampilkan suatu data kelayar.
4. 4
Cin merupakan sebuah objeck didalam C++ digunakan untuk
memasukkan suatu data.
Switch()
Getch() (get character and echo) dipakai untuk membaca sebuah
karakter dengan sifat karakter yang dimasukkan tidak perlu diakhiri
dengan menekan tombol ENTER, dan karakter yang dimasukan
tidak akan ditampilkan di layar.
Prosedur Pembuatan Program Pengolahan Data Nilai Raport
Untuk membuat program pengolahan data nilai raport, adapun
langkah-langkahnya sebagai berikut :
a. Install terlebih dahulu program aplikasi Borland C++ pada laptop atau
komputer.
b. Setelah proses instalasi selesai, jalankan program tersebut.
c. Lalu ketik sintag input/masukan di bawah ini :
# include <iostream.h>
# include <conio.h>
# include <stdio.h>
# include <string.h>
void judul()
{
cout<<"tttPROGRAM PENGOLAH DATA RAPORT
DIGITAL"<<endl;
cout<<"ttttSEKOLAH ADA AJA"<<endl;
cout<<"
==========================================================
===================="<<endl;
}
void hasil()
{
cout<<"ttttLAPORAN HASIL BELAJAR"<<endl;
cout<<"tttt SEKOLAH ADA AJA"<<endl;
5. 5
cout<<"
==========================================================
===================="<<endl;
}
void input()
{
cout<<"ttttFORM INPUT NILAI SISWA"<<endl;
cout<<"tttt SEKOLAH ADA AJA"<<endl;
cout<<"
==========================================================
===================="<<endl;
}
void garis()
{ cout<<"-------------------------------------------------------------------------------
"<<endl;}
void menu()
{
gotoxy(28,5);cout<<"Pilihan Menu : "<<endl;
gotoxy(23,6);cout<<"1. Input Nomor Induk Siswa"<<endl;
gotoxy(23,7);cout<<"2. Lihat Nomor Induk Siswa"<<endl;
gotoxy(23,8);cout<<"3. Input Indentitas Siswa"<<endl;
gotoxy(23,9);cout<<"4. Lihat Identitas Siswa"<<endl;
gotoxy(23,10);cout<<"5. Input Nilai Mata Pelajaran"<<endl;
gotoxy(23,11);cout<<"6. Lihat Raport Keseluruhan"<<endl;
gotoxy(23,12);cout<<"7. Reset"<<endl;
gotoxy(23,13);cout<<"0. Keluar";
}
void ndisik()
{
cout<<endl<<endl;
6. 6
cout<<"tt=================================================="
<<endl;
cout<<"tt| PROGRAM PENGOLAH DATA RAPORT |"<<endl;
cout<<"tt|------------------------------------------------|"<<endl;
cout<<"tt| - Abidin (12136578) |"<<endl;
cout<<"tt| - Agustina (12136459) |"<<endl;
cout<<"tt| - Imam Ikhsanudin (12135533) |"<<endl;
cout<<"tt| - Purna Bagas (12137638) |"<<endl;
cout<<"tt| - Sri Mulyani (12137465) |"<<endl;
cout<<"tt|------------------------------------------------|"<<endl;
cout<<"tt| Press Any Key To Continue |"<<endl;
cout<<"tt=================================================="
;getch();
}
main()
{
int nis[2],top=-1,i,op;/*untuk stack*/
int hadir[4],nitu[4],uas[4],uha[4],keha[4];//penilaian
char mapel[4][25]={"Matematika","Bahasa Indonesia","Bahasa
Inggris","Kejuruan"};//mata pelajaran
int kkm[4]={77,77,77,80},na[12],jm=0,rt[4];//nilai
char kelas[4][4],sems[4][4],ta[4][9],prodi[4][30],nama[4][25];//identitas
char ket[20],lagi;
int j;
clrscr();
ndisik();
awal:
clrscr();
judul();
menu();
gotoxy(23,14);cout<<"Masukan Pilihan : ";cin>>op;
7. 7
switch(op)
{
case 1://push
if (top >= 2)
cout<<"Stack penuh!"<<endl;
else
{ printf("Masukan Nomor Induk = ");
scanf("%d",&nis[top+1]);
top++;
}
clrscr();
goto awal;
break;
case 2://view
cout<<"nnData Nomor Induk yang Ada : n";
{
for(i=top; i>=0; i--)
printf("%d ", nis[i]);
printf("n");
}
cout<<"t Press Any Key to Back...";getch();
goto awal;
8. 8
break;
case 3://identitas siswa
clrscr();
judul();
for(i=0;i<=top;i++)
{
cout<<"Nomor Induk Siswa : "<<nis[i]<<endl;
cout<<"Nama Siswa : ";cin>>nama[i];
cout<<"Program Studi Keahlian : ";cin>>prodi[i];
cout<<"Kelas : ";cin>>kelas[i];
cout<<"Semester : ";cin>>sems[i];
cout<<"Tahun Ajaran : ";cin>>ta[i];
cout<<endl;
cout<<"+++++++++++++++++++++++++++++++++++++++++"<<endl;
}
cout<<"t Press Any Key to Back...";getch();
clrscr();
goto awal;
break;
case 4://lihat id
clrscr();
judul();
cout<<endl;
cout<<"ttt=====Daftar Identitas Siswa======="<<endl<<endl;
for(i=0;i<=top;i++)
{
cout<<" Nomor Induk Siswa : "<<nis[i]<<endl;
cout<<" Nama Siswa : "<<nama[i]<<endl;
cout<<" Program Studi Keahlian : "<<prodi[i]<<endl;
cout<<" Kelas : "<<kelas[i]<<endl;
cout<<" Semester : "<<sems[i]<<endl;
9. 9
cout<<" Tahun Ajaran : "<<ta[i]<<endl;
cout<<endl;
cout<<"
+++++++++++++++++++++++++++++++++++++++++"<<endl;
}
cout<<"t Press Any Key to Back...";getch();
goto awal;
break;
case 5://input nilai
clrscr();
input();
for(i=0;i<=top;i++)
{
cout<<"Penilaian Untuk siswa yang bernama
"<<nama[i]<<endl;
cout<<" ##########################################"<<endl;
for(j=0;j<=3;j++)
{
cout<<" Mata Pelajaran "<<mapel[j]<<endl;
cout<<" --->Jumlah Ketidak Hadiran :";cin>>hadir[j];
cout<<" --->Nilai Tugas : ";cin>>nitu[j];
cout<<" --->Nilai Ulangan Harian : ";cin>>uha[j];
cout<<" --->Nilai UAS : ";cin>>uas[j];
cout<<"-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
"<<endl<<endl;
keha[j]=156-hadir[j];
na[j]=(0.1*keha[j])+(0.2*nitu[j])+(0.3*uha[j])+(0.4*uas[j]);
jm=na[j]+jm;
}
}
cout<<"t Press Any Key to Back....";getch();
goto awal;
10. 10
break;
case 6://hasil
clrscr();
hasil();
for(i=0;i<=top;i++)
{
cout<<" Nama : "<<nama[i]<<endl;
cout<<" NIS : "<<nis[i]<<endl;
cout<<" Kelas : "<<kelas[i]<<endl;
gotoxy(52,4);cout<<" Semester : "<<sems[i]<<endl;
gotoxy(52,5);cout<<" Tahun Ajaran : "<<ta[i]<<endl;
}
garis();
cout<<" Mata Pelajaran | KKM | Nilai | Keterangan "<<endl;
garis();
for(j=0;j<=3;j++)
{
if(na[j]>=kkm[j])
{
strcpy(ket,"TUNTAS");
}
else
{
strcpy(ket,"BELUM TUNTAS");
}
gotoxy(3,wherey());cout<<mapel[j];
gotoxy(25,wherey());cout<<kkm[j];
gotoxy(35,wherey());cout<<na[j];
gotoxy(42,wherey());cout<<ket<<endl;
}
garis();
cout<<" Jumlah Nilai : "<<jm<<endl;
11. 11
rt[j]=jm/4;
cout<<" Rata-Rata Nilai : "<<rt[j]<<endl<<endl<<endl;
cout<<"Apakah Anda Ingin Input Lagi ?[Y/T] : ";cin>>lagi;
if(lagi=='Y'||lagi=='y')
{
top=-1;
goto awal;
}
else
return (0);
break;
case 7://reset
char res;
cout<<"Apakah Anda Yakin Ingin Mereset ? [Y/T] : ";cin>>res;
if(res=='Y'||res=='y')
{
top=-1;
goto awal;
}
else
goto awal;
break;
case 0://keluar
return(0);
}
getch();
}
d. Setelah pengisian sintag selesai, maka klik simbol yang terdapat
pada menu dibagian atas untuk menjalankan/running program.
e. Pada saat program dijalankan, maka muncul tampilan keluaran
(output) seperti dibawah ini :
12. 12
f. Masukan/input tombol apapun yang dikehendaki pemakai untuk
masuk kedalam program pengolah data nilai raport digital, maka akan
muncul tampilan :
f. Masukan/input 1 untuk melakukan input nomor induk siswa, maka
akan muncul tampilan :
13. 13
g. Masukan/input 2 untuk melihat nomor induk siswa, maka akan
muncul tampilan :
h. Masukan atau input 3 untuk melakukan input identitas siswa, maka
akan muncul tampilan :
14. 14
i. Masukan atau input 4 untuk melihat identitas siswa, maka akan
muncul tampilan :
j. Masukan atau input 5 untuk melakukan input nilai mata pelajaran,
maka akan muncul tampilan :
k. Masukan atau input 6 untuk melihat raport keseluruhan, maka akan
muncul tampilan :
15. 15
l. Masukan atau input 7 untuk mengembalikan semua data agar
kosong (kembali kosong seperti semula), maka akan muncul
tampilan :
m. Masukan atau input 0 untuk keluar dari program, makan akan
muncul tampilan :