Khikmatul Umroh
12.1A.35
Sistem Informasi
Tugas 3
1. Buatlah program untuk menghitung nilai rata-rata dari seorang siswa, denganketentuan sebagai berikut :▪ Nama Siswa, Nilai Pertandingan I, Nilai Pertandingan II, Nilai
Pertandingan III diinput.▪ Nilai Rata-rata merupakan hasil dari Nilai Pertandingan I, II dan III
dibagi dengan 3.▪ Ketentuan Juara• Jika nilai rata-rata yang dihasilkan lebih besar dari 80, maka menjadi
Juara I• Jika nilai rata-rata yang dihasilkan lebih besar dari 75, maka menjadi
Juara II• Jika nilai rata-rata yang dihasilkan lebih besar dari 65, maka menjadi
Juara III• Selain itu tidak juara
inputan programnya :
#include <stdio.h> /* file header untuk inisial clrscr*/
#include <conio.h> /* file header untuk Inisial getch */
#include <iostream.h> /* file header untuk menampilkan perintah cout yang Merupakan fungsi keluaran (digunakan untuk menampilkan data ataupun tulisan)*/
main() /* merupakan awal mula dari blok program utama*/
{ /* sebagai punctuator yang awal blok program hingga akhir blok program*/
char nama[30], *juara; /* masukkan karakter*/
int n1,n2,n3,nr; /*tipe data untuk angka numerik yang tidak menggunakan koma*/
cout<<" PROGRAM HITUNG NILAI RATA-RATA "<<endl; /*cout untuk menampilkan pesan ke standar output*/
cout<<endl; /*endl untuk melakukan perintah Newline atau pindah baris*/
cout<<"Nama Siswa =";gets(nama); /*Tampilan Nama Siswa*/
cout<<"Nilai Pertandingan 1 =";cin>>n1; /*Menampilkan inputan nilai pertandingan 1*/
cout<<"Nilai Pertandingan 2 =";cin>>n2; /*Menampilkan inputan nilai pertandingan 2*/
cout<<"Nilai Pertandingan 3 =";cin>>n3; /*Menampilkan inputan nilai pertandingan 3*/
nr=(n1+n2+n3)/3; /*Variabel untuk menghitung nilai rata-rata (n1+n2+n3/2)*/
if(nr>80) /*kondisi if(nilairata lebih dari 80)*/
{
juara=" menjadi juara 1"; /*jika nilai lebih dari 80,maka mendapat juara 1*/
}
else /*else(kondisi yang lain)*/
if(nr>75) /*nilairata yang lebih dari 75*/
{
juara=" menjadi juara 2"; /*jika nilairata lebih dari 75,maka mendapat juara 2*/
}
else /*kondisi yang lain*/
if(nr>65) /*jika nilairata lebih dari 65*/
{
juara=" menjadi juara 3"; /*jika nilairata lebih dari 65,maka mendapat juara 3*/
}
else /*kondisi yang lain*/
if(nr<65) /*jika nilairata kurang dari 65*/
{
juara=" tidak mendapat juara"; /*jika nilairata kurang dari 65,maka tidak mendapat juara*/
}
cout<<endl; /*endl untuk melakukan perintah Newline atau pindah baris*/
cout<<" Siswa yang bernama "<<nama<<endl; /*Menampilkan nama siswa*/
cout<<" Memperoleh nilai rata-rata "<<nr<<endl; /*Menampilkan Hasil nilai rata-rata yang di peroleh*/
cout<<""<<juara; /*Menampilkan juara yang diperoleh*/
cout<<" dari hasil perlombaan yang diikutinya"; /*Menampilkan Hasil perlombaan yang di ikuti*/
getch(); /*berfungsi sebagai penahan dari tampilan hasil */
}
outputan yang di tampilkan :
2. Buatlah program untuk menghitung nilai akhir seorang siswa dari kursus
yang diikutinya. Dengan ketentuan sebagai berikut :▪ Nama Siswa, Nilai Keaktifan, Nilai Tugas dan Nilai Ujian diinput.▪ Proses yang dilakukan untuk mendapatkan nilai murni dari masingmasing nilai, adalah▪ Nilai Murni Keaktifan = Nilai Keaktifaan dikalikan dengan 20%.▪ Nilai Murni Tugas = Nilai Tugas dikalikan dengan 30%▪ Nilai Murni Ujian = Nilai Ujian dikalikan dengan 50%▪ Nilai Akhir adalah Nilai Murni Keaktifan + Nilai Murni Tugas + Nilai
Murni Ujian▪ Ketentuan Nilai Huruf• Jika nilai Akhir yang dihasilkan lebih besar dari 80, maka mendapat
grade “A”• Jika nilai Akhir yang dihasilkan lebih besar dari 70, maka mendapat
grade “B”• Jika nilai Akhir yang dihasilkan lebih besar dari 56, maka mendapat
grade “C”• Jika nilai Akhir yang dihasilkan lebih besar dari 46, maka mendapat
grade “D”• Selain itu mendapat grade “E”
inputan programnya :
#include <iostream> /* file header untuk menampilkan perintah cout yang Merupakan fungsi keluaran (digunakan untuk menampilkan data ataupun tulisan)*/
#include <conio> /* file header untuk Inisial getch */
#include <stdio> /* file header untuk inisial clrscr*/
main() /* merupakan awal mula dari blok program utama*/
{ /* sebagai punctuator awal blok program hingga akhir blok program*/
char nama[80]; /* tipe data untuk karakter tunggal, bisa berupa alpabet ataupun angka*/
int nilai1, nilai2, nilai3; /*tipe data untuk angka numerik yang tidak menggunakan koma ,untuk nilai1,nilai2,nilai3*/
float nilaiakhir, murni1, murni2, murni3; /*tipe data yang digunakan float karena berupa bilangan pencacah /desimal*/
cout<<" PROGRAM HITUNG NILAI AKHIR\n\n"; /*Menampilkan Program Hitung Nilai aAkhir*/
cout<<" Nama Siswa : "; /*Menampilkan Nama Siswa */
gets(nama); /*berfungsi input data pada program, yang berbasis karakter(nama)*/
cout<<" Nilai Keaktifan : "; /*Menampilkan nilai keaktifan*/
cin>>nilai1; /*inputan nilai 1*/
cout<<" Nilai Tugas : "; /*Menampilkan nilai tugas*/
cin>>nilai2; /*inputan nilai 2*/
cout<<" Nilai Ujian : "; /*Menampilkan nilai ujian*/
cin>>nilai3; /*inputan nilai 3*/
murni1 = 20 * nilai1 /(float)100; /*Variabel untuk menghitung nilai1, (20*nilai 1)*/
murni2 = 30 * nilai2 /(float)100; /*Variabel untuk menghitung niali2, (30*nilai 2)*/
murni3 = 50 * nilai3 /(float)100; /*Variabel untuk menghitung nilai3, (50*nilai 3)*/
nilaiakhir = murni1 + murni2 + murni3; /*Variabel menghitung nilai akhir yaitu murni 1+murni 2+murni 3*/
clrscr(); /*untuk membersihkan layar diatas*/
cout<<" Siswa yang bernama "<<nama<<endl; /*Tampilan Nama Siswa */
cout<<" Dengan nilai yang dipresentasikan."<<endl; /*Menampilkan nilai yang dipresentasikan*/
cout<<" Nilai Murni Keaktifan : "<<murni1<<endl; /*Menampilkan inputan nilai murni keaktifan*/
cout<<" Nilai Murni Tugas : "<<murni2<<endl; /*Menampilkan inputan nilai murni tugas*/
cout<<" Nilai Murni Ujian : "<<murni3<<endl<<endl; /*Menampilkan inputan nilai murni ujian*/
cout<<" Jadi siswa yang bernama "<<nama; /*Menampilkan inputan Nama siswa*/
cout<<" memperoleh nilai akhir sebesar "<<nilaiakhir; /*menampilkan nilai akhir*/
cout<<" dengan grade "; /*Menampilkan inputan grade*/
if(nilaiakhir>=80){ /*kondisi(nilai akhir lebih dari sama dengan 80*/
cout<<"A"; /*Menampilkan Grade A*/
}
else if(nilaiakhir>=70){ /*kondisi lain (jika nilai akhir lebih dari sama dengan 70*/
cout<<"B"; /*Menampilkan Grade B */
}
else if(nilaiakhir>=56){ /*kondisi lain(jika nilai akhir lebih dari sama dengan 56*/
cout<<"C"; /*Menampilkan Grade C*/
}
else if(nilaiakhir>=46){ /*kondisi lain(jika nilai akhir lebih dari sama dengan 46*/
cout<<"D"; /*Menampilkan Grade D*/
}
else{ /*kondisi lain selain nilai A,B,C, dan D*/
cout<<"E"; /*Menampilkan Grade E */
}
getch(); /*berfungsi sebagai penahan dari tampilan hasil */
}
outputan yang di tampilkan :
3. PT. DINGIN DAMAI, memberi gaji pokok kepada karyawan kontraknya
sebesar Rp. 300,000 perbulan, dengan memperoleh tunjangan-tunjangan sebagai
berikut :▪ Tunjangan Jabatan
Golongan Persentase
1 5%
2 10%
3 15%
Logikanya : Jika seorang karyawan tersebut dengan golongan 3, maka
mendapatkan tunjangan sebesar 15% * Rp. 300,000• Tunjangan Pendidikan
Tingkat Persentase
Pendidikan
SMA 2.5%
D1 5%
D3 20%
S1 30%
Jika seorang karyawan tersebut dengan Tingkat Pendidikan S1, maka
mendapatkan tunjangan pendidikan sebesar 30% * Rp. 300,000
Honor Lembur
Jumlah jam kerja normal sebanyak 8 jam, Honor lembur diberikan jika jumlah
jam kerja lebih dari 8 jam, maka kelebihan jam kerja tersebut dikalikan dengan
Rp. 3500 untuk setiap kelebihan jam kerja karyawan tersebut.
inputan programnya :
#include <conio.h > /* file header untuk Inisial getch */
#include <stdio.h > /* file header untuk inisial clrscr*/
#include <stdlib.h > /* file header Untuk melakukan berbagai operasi, termasuk konversi,kontrol proses, lingkungan, sinyal, pencarian .*/
main() /*Merupakan awal mula dari blok program utama*/
{ /* sebagai punctuator yang awal blok program hingga akhir blok program*/
int jam_kerja, golongan_jabatan; /*Tipe data untuk jam kerja ,golongan jabatan*/
char nama[15],golongan_pendidikan[9]; /*Masukkan karakter ,masukkan golongan pendidikan*/
long int gaji_pokok = 300000, honor_lembur_per_jam = 3500, honor_lembur, tunjangan_jabatan, tunjangan_pendidikan, total_honor; /*memakai long karena memakai jumlah banyak */
printf(" \n PROGRAM HITUNG GAJI KARYAWAN\n"); /* menampilkan informasi/pesan kelayar "program Hitung Gaji Karyawan".*/
printf("\n PT DINGIN DAMAI\n");
printf("\n================================================\n\n");
printf(" Nama Karyawan : "); scanf("%s", &nama); /*Menampilkan nama karyawan */
printf(" Golongan Jabatan : "); scanf("%d", &golongan_jabatan); /*Menampilkan golongan jabatan*/
printf(" Golongan Pendidikan : "); scanf("%s", &golongan_pendidikan); /*Menampilkan golongan pendidikan*/
printf(" Jumlah Jam Kerja : "); scanf("%d", &jam_kerja); /*Menampilkan jumlah jam kerja*/
if(golongan_jabatan==1) /*kondisi if(jika golongan jabatan 1 ,maka hitung tunjangan jabatan =5* gaji pokok /100)*/
{
tunjangan_jabatan =5 * gaji_pokok /100;
}
else if(golongan_jabatan==2) /*kondisi lain (jika golongan jabatan 2, maka hitung
tunjangan jabatan =10* gaji pokok/100)*/
{
tunjangan_jabatan = 10 * gaji_pokok /100;
}
else if(golongan_jabatan==3) /*kondisi lain (jika golongan jabatan 3,maka hitung tunjangan jabatan =15*gaji pokok/100 )*/
{
tunjangan_jabatan = 15 * gaji_pokok /100;
}
if ((golongan_pendidikan,"sma")|| (golongan_pendidikan,"SMA")) /*if kondisi= jikagolongan pendidikan "sma"/"SMA" , maka hitung tunjangan pendidikan =2.5*gaji pokok/100*/
{
tunjangan_pendidikan = 2.5 * gaji_pokok /100;
}
else if ((golongan_pendidikan,"d1")|| (golongan_pendidikan,"D1")) /*kondisi lain=jika golongan pendidikan "d1"/"D1", maka hitung tunjangan pendidikan =5*gaji pokok/100*/
{
tunjangan_pendidikan = 5 * gaji_pokok /100;
}
else if ((golongan_pendidikan,"d3")|| (golongan_pendidikan,"D3")) /*kondisi lain=jika golongan pendidikan "d3"/"D3",maka hitung tunjangan pendidikan =20*gaji pokok/100*/
{
tunjangan_pendidikan = 20 * gaji_pokok /100;
}
else if((golongan_pendidikan,"s1")||(golongan_pendidikan,"S1")) /*kondisi lain=jika golongan pendidikan "s1"/S1", maka hitung tunjangan pendidikan =30*gaji pokok/100*/
{
tunjangan_pendidikan = 30 * gaji_pokok /100;
}
if (jam_kerja >= 8) /*if kondisi= jika jam kerja lebih dari sama dengan 8, maka htung honor lembur=jam kerja *honor lembur perjam*/
{
honor_lembur = jam_kerja * honor_lembur_per_jam;
}
else if (jam_kerja <=8) /*if kondisi lain =jika jam kerja kurang dari sama dengan 8, maka hitung honor lembur=jam kerja * 0 /tidak mendapatkan honor lembur*/
{
honor_lembur = jam_kerja * 0;
}
total_honor = tunjangan_jabatan + tunjangan_pendidikan + honor_lembur + gaji_pokok; /*Variabel menghitung data total honor=
//Ouput Data tunjangan jabatan+honor lembur+gaji pokok*/
printf(" \n Karyawan yang bernama %s \n",nama); /*Menampilkan nama karyawan */
printf(" Tunjangan Jabatan : Rp. %Id \n",tunjangan_jabatan); /*Menampilkan hasil tunjangan jabatan */
printf(" Tunjangan Pendidikan : Rp. %Id \n",tunjangan_pendidikan); /*Menampilkan hasil tunjangan pendidikan*/
printf(" Honor Lembur : Rp. %Id \n",honor_lembur); /*Menampilkan hasil honor lembur*/
printf(" Gaji Pokok : Rp. %Id \n",gaji_pokok); /*Menampilkan hasil gaji lembur*/
printf(" _________________+\n"); /*Menampilkan proses jumlah */
printf(" Total Honor : Rp. %Id \n\n\n",total_honor); /*Menampilkan hasil total honor*/
getch (); /*berfungsi sebagai penahan dari tampilan hasil */
}
outputan yang di tampilkan :