Anda di halaman 1dari 43

Bina Sarana Informatika

MODUL
Algoritma & Pemograman I (C++)

2011

AMIK BSI
WYI

PERTEMUAN 1
MODEL DATA, MASUKAN DAN KELUARAN

Pengembangan bahasa C++


Bahasa C merupakan pengembangan dari bahasa B yang ditulis oleh Ken Thompson pada tahun
1970.

Cara masuk Ke dalam Program C++


Pilih start > all Program > Borland C++ 5.02 >Borland C++

Bagan struktur untuk C++ Model data:


Tipe data Ukuran memori
#include <file header> Char 1 byte
main() Int 2 byte
{ Short 2 byte
Long 4 byte
statement; Float 4 byte
getch(); Double 8 byte
} Long double 10 byte

Control file header:


conio.h >> control untuk keseluruhan input output > clrscr,getch
stdio.h >> standar input output
Digunakan untuk output printf,puts
Input scanf,gets
iostream.h >> digunakan jika input output yang dipakai cout dan cin

printf, gets dan scanf, cout,cin,puts


*format penulisan pada saat penginputan :
printf(“ ....…………….…”);scanf(“%”,&var);
printf(“…………………….”);gets(var); //gets digunakan jika input dengan spasi atau titik
puts(“……………………….”);gets(var); // puts digunakan untuk output dengan disertai pindah
baris
cout<<”………………….”;cin>>var; //cin digunakan untuk penginputan angka, huruf tanpa spasi
cout<<”………………….” ; gets(var); // cout selain berpasangan dengan cin juga bisa dengan
gets

*format penulisan pada saat output :


printf(“\n…………………….: % “,var);
cout<<”……………….. “<<var<<endl;
puts(“……………………..”);puts(var);
endl & \n= pindah baris
\b =backspace
\t =Tab
format varibel untuk output dengan menggunakan printf:
%c = digunakan jika inputan dan outpur berupa 1 karakter
%s = digunakan jika inputan dan outpur berupa >1 karakter
%d = digunakan jika inputan dan outpur dengan tipe data integer
%ld = digunakan jika inputan dan outpur dengan tipe data long integer
%f = digunakan jika inputan dan outpur dengan tipe data float

Keterangan dalam Cpp:


// atau /* ..... */= memberikan keterangan pada program tanpa mepengaruhi jalannya
program

Lat 1 (latihan Puts):


#include <conio.h>
#include <stdio.h>
main();
{
Clrscr();
puts(“ belajar C++”);
puts(“ bisa ga….”);
getch();

Selamat Belajar….. 1
WYI
}

Latihan 2 (latihan printf):


#include <conio.h>
#include <iostream.h>
#include <stdio.h>
main()
{
clrscr(); //digunakan untuk membersihkan layar
cout<<” Belajar C++”<<endl;
printf(“ bisa ga……!!!”);
getch(); //membaca input dan output yang ditulis
}

Konstanta
Konstanta adalah suatu nilai yang nilainya tetap. Terbagi menjadi 2 bagian:
*Konstanta Bilangan
*Konstanta Text Deklarasi Konstanta:
const nama_konstanta=nilai konstanta;
Contoh: const x= 89;

Variabel
Adalah suatu tempat menampung data atau konstanta di memori yang mempunyai
nilai atau data yang dapat berubah-ubah selama proses program.

Dalam Pemberian Nama Variabel mempunyai ketentuan antara lain:


*Tidak boleh ada spasi (contoh: gaji bersih) dan dapat menggunakan tanda
garis bawah (_) sebagai penghubung (contoh : gaji_bersih).
*Tidak Boleh diawali oleh angka dan menggunakan operator Aritmatika.
Penulisan Variabel
Type_data Nm_variabel;
Contoh : char nm[20];//menggunakan kapasitas karena lebih dari 1 karakter

Penentu Format Pada Output Printf


TIPE DATA Penentu Format untuk
printf()
Integer %d
Floating Point
Bentuk Desimal %f
Bentuk Berpangkat %e
Bentuk desimal dan %g
Pangkat
Double Precision %lf
Character %c
String %s
Unsigned Integer %u
Long Integer %ld
Long Unsigned Integer %lu
Unsigned Hexadesimal %x
Integer
Unsigned Octal Integer %o

Latihan 3:
#include <conio.h>
#include <stdio.h>
main()
{
int a=7; //a dan b merupakan contoh pendeklarasian variable.
char b=‟G‟;
clrscr();
printf(“ %c adalah huruf abjad ke- %d”,b,a); //output dengan printf
getch();
}

Selamat Belajar….. 2
WYI

Latihan 3:
#include <conio.h>
#incklude <stdio.h>
main()
{
Char nm[10],kelas[10];
puts(“ masukkan nama anda :”);gets(nm);
printf(“ msukkan kelas anda :”);scanf(“%s”,&kelas); /*input dengan scanf
disesuaikan dengan tipe data %s untuk tipe data char >1 huruf*/
printf(“\n\n”);
puts(“ nama saya adalah :”);puts(nm);
printf(“\n Kelas saya adalah : %6s “,nm); //%6s =dimana 6 merupakan kapasitas
spasi
getch();
}

Latihan 4:
Program hitung nilai rata-rata

Masukkan nama anda :<input>


Masukkan nilai uts anda :<input>
Masukkan nilai uas anda :<input>

Hasil:
Nama saya adalah<nm> dan nilai uts saya adalah<uts> sedangkan nilai uas saya
adalah<uas>

Jawaban:

#include <conio.h>
#include <stdio.h>
#include <iostream.h>
main()
{
char nm[10];
int uts,uas;
clrscr();
cout<<” Masukkan Nama Anda :”;gets(nm);//gets= saat input bisa menggunakan spasi
cout<<” Masukkan Nilai Uts anda:”;cin>>uts; //cin tidak bisa dengan spasi
cout<<” Masukkan nilai Uas Anda :”;cin>>uas;
cout<<endl;
cout<<” Nama saya adalah “<<nm<<” nilai uts saya adalah “<<uts<<” nilai saya
adalah “<<uas<<endl;
getch();
}

Selamat Belajar….. 3
WYI

PERTEMUAN 2 dan 3
OPERATOR

Operator aritmatika operator logika


operator keteranagn
operator keterangan contoh && Perbandingan And
* Perkalian 3*3 || Perbandingan Or
/ Pembagian 6/2 ! Perbandingan Not
+ Penambahan 3+6
- pengurangan 6-2
++ Penambahan
- - Pengurangan
% Sisa pembagian

Operator relasi
operator keterangan
> Lebih besar
< Lebih kecil
>= Lebih besar sama dengan
<= Lebih kecil sama dengan
!= Tidak sama dengan
== Sama dengan

Latihan oprt1: cout<<” Hasil dari


#include <stdio.h> “<<x<<”+”<<y<<”=”<<c<<endl;
#include <conio.h> cout<<” Hasil dari “<<x<<”-
#include <iostream.h> ”<<y<<”=”<<d<<endl;
main() cout<<” Hasil dari
{ “<<x<<”%”<<y<<”=”<<e<<endl;
int x,y,a,b,c,d,e; getch();
clrscr(); }
cout<<” masukkan nilai x : “;cin>>x;
cout<<” masukkan nilai y :”;cin>>y; Latihan oprt2;
a=x*y; #include <stdio.h>
b=x/y; #include <iostream.h>
c=x+y; main()
d=x-y; {
e=x%y; int a=10,b=5;
cout<<” Hasil dari clrscr|();
“<<x<<”*”<<y<<”=”<<a<<endl; cout<<” nilai A =%d”,a);
cout<<” Hasil dari cout<<”\n Nilai ++A =%d “,a);
“<<a<<”/”<<y<<”=”<<b<<endl; cout<<”\n Nilai A=%d “,a);
//untuk hasil koma gunakan output cout<<” \n Nilai B =%d ,”b);
printf cout<<” \n Nilai - - b =%d “,b);
//printf(“ hasil dari %d * %d = getch();
“,a,b,c); }

#include <conio.h> d=x||y;


#include <iostream.h> e=!x;
main() f=!y;
{ cout<<” Hasil dari “<<x<<”&&”<<y<<”=”<<c<<endl;
int x,y,a,b,c,d,e,f; cout<<” Hasil dari “<<x<<”||”<<y<<”=”<<d<<endl;
clrscr(); cout<<” Hasil dari !”<<x<<”=”<<e<<endl;
cout<<” masukkan nilai x : “;cin>>x; cout<<” Hasil dari !”<<y<<”=”<<f<<endl;
cout<<” masukkan nilai y :”;cin>>y; getch();
c=x&&y; }

Selamat Belajar….. 4
WYI
Latihan oprt3:
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
main()
{
int a,b,c,d,e,f,g,h;
clrscr();
cout<<” masukkan nilai a : “;cin>>a;
cout<<” masukkan nilai b :”;cin>>b;
c=a>b;
d=a<b;
e=a>=b;
f=a<=b;
g=a==b;
h=a!=b;
cout<<” Hasil dari “<<a<<”>”<<b<<”=”<<c<<endl; //untuk hasil koma gunakan output printf
cout<<” Hasil dari “<<a<<”<”<<b<<”=”<<d<<endl; //printf(“ hasil dari %d * %d =%d “,a,b,c);
cout<<” Hasil dari “<<a<<”>=”<<b<<”=”<<e<<endl;
cout<<” Hasil dari “<<a<<”<=”<<b<<”=”<<f<<endl;
cout<<” Hasil dari “<<a<<”==”<<b<<”=”<<g<<endl;
cout<<” Hasil dari “<<a<<”!=”<<b<<”=”<<h<<endl;
getch();
}

Latihan 4 (tugas):
Program Latihan Operator
Input
Nim :<input>
Nama :<input>
Nilai tugas :<input>
Nilai absent :<input>
Nilai uts :<input>
Nilai uas :<input>

Output
Mahasiswa dengan Nim ……. Dan Nama ….. mendapat rata-rata sebesar……..

Ketentuan soal:
* tentukan variable untuk input dan output
* rata=(0.1*absent)+(0.2*tugas)+(0.3*uts)+(0.4*uas)
Jawaban:
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
main()
{
Char nim[7],nm[10];
Int ab,tgs,uts,uas;
Float rata;
Clrscr();
cout<<endl;
cout<<” Nim :”;cin>>nim;
cout<<” Nama :”,gets(nm);
cout<<” Nilai Absen :”;cin>>ab;
cout<<” Nilai Tugas :”;cin>>tgs;
cout<<” Nilai UTS :”;cin>>uts;
cout<<” Nilai UAS :”;cin>>uas;
cout<<endl;
rata=(0.1*ab)+(0.2*tgs)+(0.3*uts)+(0.4*uas);
cout<<” NIM :”<<nim<<endl;
cout<<” Nama:”<<nm<<endl;
cout<<” Mahasiswa dengan Nim “<<nim<<” dan Nama “<<nm<<” mendapatkan rata-rata :
“<<rata<<endl;
getch();}

Selamat Belajar….. 5
WYI
Pertemuan 4
Fungsi Manipulasi String

Fungsi strcat()
Digunakan untuk menambahkan string sumber ke bagian akhir string tujuan. File
header yang harus ditambah adalah <string.h> dan <ctype.h>

Syntax:
#include <conio.h>
#include <iostream.h>
#include <string.h>
#include <ctype.h>
main()
{
char a1[20];
char a2[20];
clrscr();
cout<<” masukkan nilai string a1 :”;cin>>a1;
cout<<” masukkan nilai string a2 :”;cin>>a2;
strcat(a1,a2);
cout<<” hasil penggabungan :”<<a1<<endl;
getch();
}

Fungsi strcmp()
Untuk membandingkan antara string pertama dan string kedua. Hasilnya berupa angka
(int)
File header yang harus disertakan adalah string.h

#include <conio.h>
#include <iostream.h>
#include <string.h>
#include <stdio.h>
main()
{
char a1[]=”BSI”;
char a2[]=”BsI”;
char b1[]=”BSI”;
clrscr();
cout<<” Hasil Perbandingan nya : “<<a1<<” dan “<<a2<<” = “;
cout<<strcmp(a1,a2);<<endl;
cout<<” Hasil Perbandingan nya : “<<a1<<” dan “<<b1<<” = “;
cout<<strcmp(a1,a1);<<endl;
getch();
}

Fungsi strcpy()
Digunakan untuk menyalin string asal ke string tujuan
File header yang disertakan adalah string.h

#include <conio.h>
#include <iostream.h>
#include <string.h>
#include <stdio.h>
main()
{
char huruf[20];
char pindah[20];
clrscr();
cout<<” masukkan sembarang kata =”;gets(huruf);
strcpy(pindah,huruf);

Selamat Belajar….. 6
WYI
cout<<” pemindahannya adalah :”<<pindah<<endl;
getch();
}
Fungsi strlen()
Digunakan untuk mencari panjang dari suatu string.

#include <conio.h>
#include <iostream.h>
#include <string.h>
#include <stdio.h>
main()
{
char huruf[20];
char pindah[20];
clrscr();
cout<<” Masukkan sembarang kata =”;gets(huruf);
cout<<”panjang kata yang diinputkan =”;
cout<<strlen(huruf);
getch();
}

Fungsi Strrev()
Digunakan untuk membalikkan letak urutan string.

#include <conio.h>
#include <iostream.h>
#include <string.h>
#include <stdio.h>
main()
{
Char kata[20];
Clrscr();
cout<<”masukkan sembarang kata “;gets(kata);
strrev(kata);
cout<<” hasil perubahan =”<<kata<<endl;
getch();
}

Selamat Belajar….. 7
WYI
Pertemuan 5 dan 6
Percabangan ( If...else)

If......Else If Majemuk dengan pernyataan lebih dari 1


Syntax if sederhana:
If (kondisi1)
If (kondisi1) {
Pernyataan 1; Pernyataan 1.a;
Else Pernyataan 1.b;
Pernyataan2; }
Else
If(kondisi2)
if Majemuk {
Pernyataan 2.a;
If (kondisi1) Pernyataan 2.b;
Pernyataan 1; }
Else Else
If(kondisi2) If(kondisi3)
Pernyataan2; {
Else Pernyataan 3a;
If(kondisi3) Pernyataan 3.b;
Perntaan 3; }
Else Else
Pernyataan4; {
Pernyataan4.a;
Pernyataan 4.b;
}

If=kondisi-1

If sederhana:
Latihan 1:
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
main()
{
double tot_beli, potongan=0, jum_bayar=0;
clrscr();
cout<<” total pembelian :”;cin>>tot_beli;
if (tot_beli>=50000)
potongan=0.2*tot_beli;
else
potongan=0.05*tot_beli;

jum_bayar=tot_beli-potongan;
cout<<”Potongan =”<<potongan<<endl;
cout<<” jumlah bayar adalah :”<<jum_bayar<<endl;
getch();
}

If Majemuk
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
main()
{
float pendapatan,jasa,komisi=0,total=0;
clrscr();
cout<<” Pendapatan hari ini adalah....?”;cin>>pendapatan;
if(pendapatan>=0 && pendapatan<=20000)
{jasa=10000;
komisi=0.1*pendapatan;}

Selamat Belajar….. 8
WYI
else
if(pendapatan<=50000)
{jasa=20000;
komisi=0.15*pendapatan;}
else
{jasa=30000;
komisi=0.2*pendapatan;}
/* Menghitung total */
total=komisi+jasa;
cout<<” Uang Jasa :”<<jasa<<endl;
cout<<” Uang Komisi:”<<komisi<<endl;
cout<<”======================”<<endl;
cout<<” Total :”<<total<<endl;
getch();
}

If Majemuk
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
main()
{
char nm[10],grade;
float nk,nt,nu,na,a,b,c;
clrscr();
cout<<": : : : : : : : : : : : : : : : : : : : : : "<<endl;
cout<<" Program Hitung Nilai Akhir"<<endl;
cout<<": : : : : : : : : : : : : : : : : : : : : : "<<endl;
cout<<" Nama Siswa :";cin>>nm;
cout<<" Nilai Keaktifan :";cin>>nk;
cout<<" Nilai Tugas :";cin>>nt;
cout<<" Nilai Ujian :";cin>>nu;
cout<<": : : : : : : : : : : : : : : : : : : : : : "<<endl;
cout<<endl;
a=0.2*nk;
b=0.3*nt;
c=0.5*nu;
na=a+b+c;
if(na>=80)
grade='A';
else
if(na>=70)
grade='B';
else
if(na>=60)
grade='C';
else
if(na>=50)
grade='D';
else
grade='E';
cout<<endl;

Selamat Belajar….. 9
WYI
cout<<": : : : : : : : : : : : : : : : : : : : : : "<<endl;
cout<<" Program Hitung Nilai Akhir"<<endl;
cout<<": : : : : : : : : : : : : : : : : : : : : : "<<endl;
cout<<" Nama Siswa :"<<nm<<endl;
cout<<" Nilai Keaktifan :"<<a<<endl;
cout<<" Nilai Tugas :"<<b<<endl;
cout<<" Nilai Ujian :"<<c<<endl;
cout<<" Nilai Akhir :"<<na<<endl;
cout<<" Grade nya Adalah :"<<grade<<endl;
cout<<": : : : : : : : : : : : : : : : : : : : : : "<<endl;
getch();
}

Latihan tugas2:

Input

Output

Untuk uang bayar diinput.

Listing:
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
main()
{
char np[10],km,nm[15];
int jml,hrg,ubay,ukem;
float total;
clrscr();
cout<<" "<<endl; //gunakan ctrl+b untuk buat kotak
cout<<" REstauran Menu Spesial"<<endl;

Selamat Belajar….. 10
WYI
cout<<" "<<endl;
cout<<" Nama Pelanggan :";cin>>np;
cout<<" Kode Menu :";cin>>km;
cout<<" Jumlah Beli :";cin>>jml;
cout<<" "<<endl;
if(km=='1') /* Menggunkan kutif dikarenakan tipe data char*/
{strcpy(nm," Paket A");//strcpy untuk hasil dari percabangan yang berbentuk
hrg=50000;} srtring
else
if(km=='2')
{strcpy(nm,"Paket B");
hrg=35000;}
else
{strcpy(nm,"Paket C");
hrg=25000;}
total=hrg*jml;
cout<<endl;
cout<<" "<<endl;
cout<<" Restauran Menu Spesial"<<endl;
cout<<" "<<endl;
cout<<" Nama Pelanggan :"<<np<<endl;
cout<<" Nam Menu :"<<nm<<endl;
cout<<" Harga :"<<hrg<<endl;
cout<<" Jumlah Beli :"<<jml<<endl;
cout<<" "<<endl;
cout<<" Total :"<<total<<endl;
cout<<" Uang Bayar :";cin>>ubay;
ukem=ubay-total;
cout<<" Uang Kembaliannya :Rp. "<<ukem<<endl;
cout<<" "<<endl;
cout<<" Terima KAsi Atas Kunjungannya "<<endl;
getch();
}
Nested IF

If (kondisi1) If (kondisi1)
{ {
If (kondisi 1.a) Pernyataan 1.a;
Pernyataan1.a.1; If (kondisi 1.a)
Else Pernyataan1.a.1;
Pernyataan1.a.2; Else
} Pernyataan1.a.2;
Else }
If (kondisi2) Else
atau If (kondisi2)
{
If (kondisi 1.a) {
Pernyataan2.a.1; Pernyataan 2.a;
Else If (kondisi 1.a)
Pernyataan2.a.2; Pernyataan2.a.1;
} Else
Else Pernyataan2.a.2;
{ }
If (kondisi 3.a) Else
Pernyataan3.a.1; {
Else Pernyataan 3.a;
Pernyataan3.a.2; If (kondisi 3.a)
} Pernyataan3.a.1;
Else
Pernyataan3.a.2;
}

Selamat Belajar….. 11
WYI
Nested IF
Kode Susu Jenis Susu Kode Ukuran Jenis Ukuran Harga
1 Kecil 25000
A Dancow 2 Sedang 20000
3 Besar 15000
1 Kecil 21000
B Milo 2 Sedang 23000
3 Besar 26000
1 Kecil 40000
C Bendera 2 Sedang 35000
3 Besar 30000

Total =hrg*jumlah beli


Tampilan Input:
====================================
Toko Susu Suka-suka
====================================
Nama Pelanggan :
Kode Susu [A/B/C] :
Kode Ukuran[1/2/3]:
Jumlah Beli :
====================================

Tampilan Output
====================================
Toko Susu Suka-suka
====================================
Nama Pelanggan :
Jenis Susu :
Jenis Ukuran :
Harga :
Jumlah Beli :
Total :
====================================
Terima Kasiih Atas Kunjungannya
Listing:
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
main()
{
char np[10],ks,ku,js[15],ju[15],j;
long int hrg,jb,total;
atas:
clrscr();
cout<<” ===============================”<<endl;
cout<<” Toko Susu Suka-Suka”<<endl;
cout<<” ===============================”<<endl;
cout<<” Nama Pelanggan : “;cin>>np;
cout<<” Kode Susu [A/B/C] : “;cin>>ks;
cout<<” Kode Ukuran[1/2/3]: “;cin>>ku;
cout<<” Jumlah Beli : “;cin>>jb;
cout<<”===============================”<<endl;
cout<<endl;
if(ks==‟A‟ || ks==‟a‟)
{strcpy(js,”Dancow”);
if(ku==‟1‟)
{strcpy(ju,”Kecil”);
hrg=25000;}
else
if(ku==‟2‟)
{strcpy(ju,”Sedang”);
hrg=20000;}

Selamat Belajar….. 12
WYI
else
{strcpy(ju,”Besar”);
hrg=15000;}
}
else
if(ks==‟B‟ || ks==‟b‟)
{strcpy(js,”Milo”);
if(ku==‟1‟)
{strcpy(ju,”Kecil”);
hrg=21000;}
else
if(ku==‟2‟)
{strcpy(ju,”Sedang”);
hrg=23000;}
else
{strcpy(ju,”Besar”);
hrg=26000;}
}
else
{strcpy(js,”Bendera”);
if(ku==‟1‟)
{strcpy(ju,”Kecil”);
hrg=40000;}
else
if(ku==‟2‟)
{strcpy(ju,”Sedang”);
hrg=35000;}
else
{strcpy(ju,”Besar”);
hrg=30000;}
}
total=hrg*jb;
cout<<endl;
clrscr();
cout<<” ===============================”<<endl;
cout<<” Toko Susu Suka-Suka”<<endl;
cout<<” ===============================”<<endl;
cout<<” Nama Pelanggan : “<<np<<endl;
cout<<” Jenis Susu : “<<js<<endl;
cout<<” Jenis Ukuran :“<<ju<<endl;
cout<<” Harga :”<<hrg<<endl;
cout<<” Jumlah Beli : “<<jb<<endl;
cout<<” Total : “<<total<<endl;
cout<<”===============================”<<endl;
cout<<” Mau Input Lagi.......???”;cin>>j;
if(j==‟Y‟ ||j==‟y‟)
goto atas;
else
cout<<” Terima Kasih Atas Kunjungannnya.....!”<<endl;
getch();
}

Selamat Belajar….. 13
WYI

// MODUL HALAMAN 72-73


#include "stdio.h"
#include "iostream.h"
#include "conio.h"
main()
{
char nm[20];
int gol,kd,jam,hnr_tetap=300000; //hnr_tetap=300000 adalah untuk nilai tetap
float tj,tp,hnr_lembur,hnr_total;
clrscr();
cout<<"PROGRAM HITUNG HONOR KLARYAWAN KONTRAK PT. DINGIN DAMAI"<<endl;
cout<<"========================================================"<<endl;
gotoxy(4,4);cout<<" Nama Karyawan :";gets(nm);
gotoxy(4,5);cout<<" Golongan :";cin>>gol;
gotoxy(4,6);cout<<" Pendidikan[1=SMU/2=D3/3=S1] :";cin>>kd;
gotoxy(4,7);cout<<" Jam Kerja :";cin>>jam;
cout<<""<<endl;

if(gol==1) //untuk menghitung tunjangan jabatan


tj=0.05*hnr_tetap;
else
if(gol==2)
tj=0.1*hnr_tetap;
else
tj=0.15*hnr_tetap;

if(kd==1) //untuk menghitung tunjangan pendidikan


tp=0.025*hnr_tetap;
else
if(kd==2)
tp=0.05*hnr_tetap;
else
tp=0.075*hnr_tetap;
if(jam>8) //untuk menghitung uang lembur
hnr_lembur=(jam-8)*2500;
else
hnr_lembur=0;
hnr_total=tp+tj+hnr_lembur; //rumus total keseluruhan
clrscr();
cout<<"PROGRAM HITUNG HONOR KLARYAWAN KONTRAK PT. DINGIN DAMAI"<<endl;
cout<<"========================================================"<<endl;
gotoxy(4,4);cout<<" Nama Karyawan :"<<nm<<endl;
gotoxy(4,5);cout<<" Tunjangan Jabatan :"<<tj<<endl;
gotoxy(4,6);cout<<" Tunjangan Pendidikan :"<<tp<<endl;
gotoxy(4,7);cout<<" Honor Lembur :"<<hnr_lembur<<endl;
cout<<"========================================================"<<endl;
gotoxy(4,10);printf(" Honor Total : %0.0f",hnr_total);
cout<<"\n"<<endl;
getch();
}

Selamat Belajar….. 14
WYI
pertemuan 8,9
Materi Switch Case
Syntax:case majemuk Nested Case

Switch(ekspresi char Switch(ekspresi char


atau integer) atau integer)
{ {
Case konstanta-1: Case konstanta-1:
Perintah; Perintah;
Perintah; Switch(ekspresi)
Break; {
Case konstanta-2: Case konstanta-1:
Perintah-1; Perintah;
Perintah-2; Break;
Break; Case konstanta-2:
Default: Perintah-1;
Perintah; Break;
Perintah; Default:
} Perintah;
}
Break;
Case konstanta-1:
 pnyeleksian kondisi Perintah;
Sama seperti fungsi if Switch(ekspresi)
 Case digunakan untuk {
Penyleksian data brtipe Case konstanta-1:
Karakter atau integer Perintah;
 tidak bisa mengunakan Break;
Kondisi dengan relasi Case konstanta-2:
Seperti: > < >= <= != Perintah-1;
Break;
Default:
Perintah;
}
Break;
Perintah;
Switch(ekspresi)
{
Case konstanta-1:
Perintah;
Break;
Case konstanta-2:
Perintah-1;
Break;
Default:
Perintah;
}
}

Selamat Belajar….. 15
WYI

Tampilan Input :
Ketentuan Soal:
Nama Pelanggan :
Kode VCD [A,B,C] : Kode VCD JUdul VCD Harga
Jumlah Pinjam : A Doraemon 4000
B Spongebob 3000
Tampilan output :
******************************** C Dragon Ball 5000
Rental VCD Suka-suka Total =harga*jumlah pinjam
*******************************
Nama pelanggan :
============================
Judul VCD :
Harga :
Jumlah :
===========================
Total :
Jawaban :
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
main()
{
char kd,np[10],jdl[15];
long int hrg,jml,total;
clrscr();
ut<<"***************************"<<endl;
printf(" Nama Peminjam : ");gets(np);
printf(" Kode VCD[A/B/C] : ");scanf("%c",&kd);
printf(" Jumlah Pinjam : ");scanf("%d",&jml);
cout<<"**************************"<<endl;
switch (kd)
{
case 'A':
case 'a':
strcpy(jdl," Doraemon");
hrg=3000;
break;
case 'B':
case 'b':
strcpy(jdl," Spongebob");
hrg=4000;
break;
default:
strcpy(jdl," Dragon ball");
hrg=3500;
}
total=hrg*jml;
clrscr();
cout<<"****************************"<<endl;
cout<<" Rental VCD Suka-Suka "<<endl;
cout<<"****************************"<<endl;
cout<<" Nama Peminjam : "<<np<<endl;
cout<<"----------------------------"<<endl;
cout<<" Judul VCD : "<<jdl<<endl;
cout<<" Harga : Rp."<<hrg<<endl;
cout<<" Jumlah Pinjam:"<<jml<<endl;
cout<<"-----------------------------"<<endl;
cout<<" Total :Rp."<<total<<endl;
cout<<"*****************************"<<endl;
getch();
}

Selamat Belajar….. 16
WYI

Tampilan Input :
Ketentuan Soal:
Menu Spesial :
---------------------------------
Menu Pilihan Menu Harga
1. Nasi Gudek
1 Nasi Goreng Spesial 6500
2. Nasi Soto Betawi
2 Nasi Rames 3500
3. Nasi Liwet
3 Nasi Liwet 5000
4. Nasi Goreng seafood
---------------------------------- 4 Nasi Kuning Spesial 6000
Nama pembeli :
Pilih Menu Pil : Diskon :
Jumlah Beli : Ppn=0.01*jumlah*harga
Total bayar=(harga*jumlah)+ppn

Tampilan Output :

Struk Pembayaran Restoran Menu Spesial


================================
Nama Pembeli :
===============================
Menu pilihan :
Harga :
Jumlah :
===============================
Diskon :
PPN :
---------------------------------------------------
Total Bayar :

Jawaban case_majemuk:
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
main()
{
int pil,jp;
char menu[20],np[10];
float harga,ppn,jb;
clrscr();
cout<<"DAFTAR MENU RUMAH MAKAN SEDERHANA\n";
cout<<" 1. Nasi Goreng seafod\n";
cout<<" 2. Nasi Rames\n";
cout<<" 3. Nasi Liwet\n";
cout<<" 4. Nasi Kuning Spesial\n";
cout<<"\n\n\n Nama Pembeli = ";cin>>np;
cout<<" Pilihan anda adalah = ";cin>>pil;
switch (pil)
{
case 1:
strcpy(menu, "Nasi Goreng Seafod");
harga = 4500;
break;
case 2:
strcpy(menu, "Nasi Rames");
harga = 3500;
break;
case 3:
strcpy(menu, "Nasi Liwet");
harga = 5000;
break;
default:
strcpy(menu, "Nasi Kuning Spesial");

Selamat Belajar….. 17
WYI
harga = 6000;
}
cout<<" Jumlah Porsi = ";cin>>jp;
ppn = 0.10*(jp*harga);
jb = (jp*harga)+ppn;
clrscr();
cout<<endl<<endl<<endl;
cout<<" STRUK PEMBAYARAN\n";
cout<<"************************************\n";
cout<<" Nama Pembeli = "<<np<<endl;
cout<<" Menu Pilihan = "<<menu<<endl;
cout<<" Jumlah Porsi = "<<jp<<endl;
cout<<"===================================="<<endl;
cout<<" Diskon = Rp. "<<disk<<endl;
cout<<" PPN 10 % = Rp. "<<ppn<<endl;
cout<<" Jumlah Bayar = Rp. "<<jb<<endl;
cout<<"************************************\n";
getch();
}

(HALAMAN 72-73 MODUL CPP)


#include "stdio.h"
#include "iostream.h"
#include "conio.h"
main()
{
char nm[20];
int gol,kd,jam,hnr_tetap=300000; //hnr_tetap=300000 adalah untuk nilai tetap
float tj,tp,hnr_lembur,hnr_total;
clrscr();
cout<<"PROGRAM HITUNG HONOR KLARYAWAN KONTRAK PT. DINGIN DAMAI"<<endl;
cout<<"========================================================"<<endl;
gotoxy(4,4);cout<<" Nama Karyawan :";gets(nm);
gotoxy(4,5);cout<<" Golongan :";cin>>gol;
gotoxy(4,6);cout<<" Pendidikan[1=SMU/2=D3/3=S1] :";cin>>kd;
gotoxy(4,7);cout<<" Jam Kerja :";cin>>jam;
cout<<""<<endl;
switch(gol)//untuk menghitung tunjangan jabatan
{
case 1:
tj=0.05*hnr_tetap;
break;
case 2:
tj=0.1*hnr_tetap;
break;
default:
tj=0.15*hnr_tetap;
}
switch(kd) //untuk menghitung tunjangan pendidikan
{
case 1:
tp=0.025*hnr_tetap;
break;
case 2:
tp=0.05*hnr_tetap;
break;
default:
tp=0.075*hnr_tetap;
}
if(jam>8) //untuk menghitung uang lembur
hnr_lembur=(jam-8)*2500;
else
hnr_lembur=0;
hnr_total=tp+tj+hnr_lembur; //rumus total keseluruhan

Selamat Belajar….. 18
WYI
clrscr();
cout<<"PROGRAM HITUNG HONOR KLARYAWAN KONTRAK PT. DINGIN DAMAI"<<endl;
cout<<"========================================================"<<endl;
gotoxy(4,4);cout<<" Nama Karyawan :"<<nm<<endl;
gotoxy(4,5);cout<<" Tunjangan Jabatan :"<<tj<<endl;
gotoxy(4,6);cout<<" Tunjangan Pendidikan :"<<tp<<endl;
gotoxy(4,7);cout<<" Honor Lembur :"<<hnr_lembur<<endl;
cout<<"========================================================"<<endl;
gotoxy(4,10);printf(" Honor Total : %0.0f",hnr_total);
cout<<"\n"<<endl;
getch();

Input:

Output

Selamat Belajar….. 19
WYI
Dengan Menggunakan Percabangan Case (soal halaman 13):
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
main()
{
char np[10],ks,ku,js[15],ju[15],j;
long int hrg,jb,total;
atas:
clrscr();

cout<<” ===============================”<<endl;
cout<<” Toko Susu Suka-Suka”<<endl;
cout<<” ===============================”<<endl;
cout<<” Nama Pelanggan : “;cin>>np;
cout<<” Kode Susu [A/B/C] : “;cin>>ks;
cout<<” Kode Ukuran[1/2/3]: “;cin>>ku;
cout<<” Jumlah Beli : “;cin>>jb;
cout<<”===============================”<<endl;
cout<<endl;
switch(ks)
{
case „A‟:
case ‟a‟:
strcpy(js,”Dancow”);
switch(ku)
{
case „1‟:
strcpy(ju,”Kecil”);
hrg=25000;
break;
case „2‟:
strcpy(ju,”Sedang”);
hrg=20000;
break;
default:
strcpy(ju,”Besar”);
hrg=15000;
}
break;
case „B‟:
case ‟b‟:
strcpy(js,”Milo”);
switch(ku)
{
case „1‟:
strcpy(ju,”Kecil”);
hrg=25000;
break;
case „2‟:
strcpy(ju,”Sedang”);
hrg=20000;
break;
default:
strcpy(ju,”Besar”);
hrg=15000;
}
Break;
Default:
strcpy(js,”Bendera”);
switch(ku)
{
case „1‟:
strcpy(ju,”Kecil”);

Selamat Belajar….. 20
WYI
hrg=25000;
break;
case „2‟:
strcpy(ju,”Sedang”);
hrg=20000;
break;
default:
strcpy(ju,”Besar”);
hrg=15000;
}
}
total=hrg*jb;
cout<<endl;
clrscr();
cout<<” ===============================”<<endl;
cout<<” Toko Susu Suka-Suka”<<endl;
cout<<” ===============================”<<endl;
cout<<” Nama Pelanggan : “<<np<<endl;
cout<<” Jenis Susu : “<<js<<endl;
cout<<” Jenis Ukuran :“<<ju<<endl;

cout<<” Harga :”<<hrg<<endl;


cout<<” Jumlah Beli : “<<jb<<endl;
cout<<” Total : “<<total<<endl;
cout<<”===============================”<<endl;
cout<<” Mau Input Lagi.......???”;cin>>j;
if(j==‟Y‟ ||j==‟y‟)
goto atas;
else
cout<<” Terima Kasih Atas Kunjungannnya.....!”<<endl;
getch();
}

Selamat Belajar….. 21
WYI
Pertemuan 10.
Materi strcmp( digunakn jika menggunakan percabangan if lebih dari satu huruf)
Contoh:
Tampilan Input :
Ketentuan soal:
Nama Pelanggan :
Kode VCD [A,B,C] : Kode VCD JUdul VCD Harga
Jumlah Pinjam : AB Doraemon 4000
AC Spongebob 3000
Tampilan output :
******************************** AD Dragon Ball 5000
Rental VCD Suka-suka
*******************************
Nama pelanggan :
============================
Judul VCD :
Harga :
Jumlah :
===========================
Total :

Jawaban :
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
main()
{
char kd[2],np[10],jdl[15];
long int hrg,jml,total;
clrscr();
cout<<"***************************"<<endl;
printf(" Nama Peminjam : ");gets(np);
printf(" Kode VCD[A/B/C] : ");scanf("%c",&kd);
printf(" Jumlah Pinjam : ");scanf("%d",&jml);
cout<<"**************************"<<endl;
if(strcmp(kd,”AB”)==0 || strcmp(kd,”ab”)==0) //format untuk if lebih dari 1 huruf
{strcpy(jdl,”Doraemon”); //==0 jika kode tidak brurut maka
hrg=4000;} //logika tetap terbaca.
else
if(strcmp(kd,”AC”)==0 || strcmp(kd,”ac”)==0)
{strcpy(jdl,”Spongebob”);
hrg=3000;}
else
{strcpy(jdl,”Dragon Ball”);
hrg=5000;}
total=hrg*jml;
clrscr();
cout<<"****************************"<<endl;
cout<<" Rental VCD Suka-Suka "<<endl;
cout<<"****************************"<<endl;
cout<<" Nama Peminjam : "<<np<<endl;
cout<<"----------------------------"<<endl;
cout<<" Judul VCD : "<<jdl<<endl;
cout<<" Harga : Rp."<<hrg<<endl;
cout<<" Jumlah Pinjam:"<<jml<<endl;
cout<<"-----------------------------"<<endl;
cout<<" Total :Rp."<<total<<endl;
cout<<"*****************************"<<endl;
getch();
}

Selamat Belajar….. 22
WYI

Harga Bedasarkan Ukuran Kaleng susu


Jenis susu KECIL SEDANG BESAR
DANCOW 25000 20000 15000
BENDERA 20000 17500 13500
SGM 22000 18500 15000

Proses dilakukan untuk mendapatkan total pembayaran


Total=harga*jumlah beli

Tampilan sebagai berikut:

Jenis susu dan ukuran diinput, harga otomatis keluar dan untuk jumlah beli
diiput:

Tampilan Output:

Source Kode:
#include "conio.h"
#include "stdio.h"
#include "iostream.h"
main()
{
char jenis[10],ukuran[10];
int hrg,jml;
double total;
clrscr();
cout<<" Toko Kelontong keroncongan"<<endl;
cout<<"========================================"<<endl;
cout<<" A. Susu Dancow"<<endl;
cout<<" 1. Ukuran kecil"<<endl;

Selamat Belajar….. 23
WYI
cout<<" 2. Ukuran Sedang"<<endl;
cout<<" 3. Ukuran Besar"<<endl;
cout<<" B. Susu Bendera"<<endl;
cout<<" 1. Ukuran kecil"<<endl;
cout<<" 2. Ukuran Sedang"<<endl;
cout<<" 3. Ukuran Besar"<<endl;
cout<<" C. Susu SGM"<<endl;
cout<<" 1. Ukuran kecil"<<endl;
cout<<" 2. Ukuran Sedang"<<endl;
cout<<" 3. Ukuran Besar"<<endl;
cout<<"=========================================="<<endl;
cout<<" Masukkan jenis Susu :";cin>>jenis;
cout<<" Masukkan jenis ukuran :";cin>>ukuran;
if(strcmp(jenis,"dancow")==0 || strcmp(jenis,"DANCOW")==0)
{ if(strcmp(ukuran,"kecil")==0 || strcmp(jenis,"KECIL")==0)
hrg=25000;
else
if(strcmp(ukuran,"sedang")==0 || strcmp(jenis,"SEDANG")==0)
hrg=20000;
else
hrg=15000;
}
else
if(strcmp(jenis,"bendera")==0 || strcmp(jenis,"BENDERA")==0)
{ if(strcmp(ukuran,"kecil")==0 || strcmp(jenis,"KECIL")==0)
hrg=20000;
else
if(strcmp(ukuran,"sedang")==0 || strcmp(jenis,"SEDANG")==0)
hrg=17500;
else
hrg=13500;
}
else
{ if(strcmp(ukuran,"kecil")==0 || strcmp(jenis,"KECIL")==0)
hrg=22000;
else
if(strcmp(ukuran,"sedang")==0 || strcmp(jenis,"SEDANG")==0)
hrg=18500;
else
hrg=15000;
}

cout<<endl<<endl;
cout<<" Harga Satuan :"<<hrg<<endl;
cout<<" Jumlah Beli :";cin>>jml;
total=hrg*jml;
cout<<" Harga yang harus Dibayar :"<<total<<endl;
getch();
}

Selamat Belajar….. 24
WYI
Perulangan For
B U : for ( inisialisasi; syarat perulangan; peubah nilai pecahan)
Keterangan :
Inisialisasi = nilai awal untuk variable tertentu.
Syarat Perulangan = kontrol terhadap perulangan untuk menentukan
perulangan diteruskan atau berhenti.
Peubah Nilai = mengatur kenaikan atau penurunan nilai

Contoh1:
// contoh for naik //contoh for Turun
#include<stdio.h> #include<stdio.h>
#include<conio.h> #include<conio.h>
#include"iostream.h" #include"iostream.h"
main() main()
{ {
int a; int a;
clrscr(); clrscr();
for(a= 1; a<= 10; ++a) for(a=10; a>=1; --a)
cout<<a ; cout<<a ;
getch(); getch();
} }
Hasil : 1 2 3 4 5 6 7 8 9 10 Hasil : 10 9 8 7 6 5 4 3 2 1

#include"conio.h"
Contoh 3: bilangan ganjil
#include<iostream.h>
#include<stdio.h> #include"stdio.h"
main()
#include<conio.h>
{
#include"iostream.h" int a, b;
clrscr();
main()
for(a=5; a>=1; a--)
{ {
for(b=5; b<=a; b++)
int a;
{
clrscr(); cout<<a;
}
for (a=1; a<=10; a+=2)
Cout<<”\n”;
printf(" %d ",a); }
getch();
getch();
}
} Tampilannya :
55555
Tampilannya : 1 3 5 7 9
4444
333
22
1

Selamat Belajar….. 25
WYI
While
Perintah while sama dengan for dimana ada syarat yang harus dipenuhi.Perintah akan
dilakukan selama kondisi benar.
Bentuk Umum :
While (Syarat)
Pernyataan;

Atau

While (Syarat)
{
Pernyataan/perintah;
Pernyataan/perintah;
}

Contoh1: Contoh2:
/* While01.cpp */
/*----------------*/ /* While02.cpp */
#include <conio.h> /*----------------*/
#include <stdio.h> #include <conio.h>
#include <iostream.h> #include <stdio.h>
main() #include <iostream.h>
{ main()
int bil=1; {
clrscr(); int bil=2;
while (bil<=10) clrscr();
{ while (bil<=10)
cout<<bil<<” “; {
++bil; cout<<bil<<” “;
} bil+=2;
getch(); }
} getch();
}

Do.....While
Bentuk perulangan dimana melakukan perulangan terlebih dahulu baru masuk ke
kondisi(pengujian perulangan).
Bentuk Umum :
Do
{
Do atau Perintah/pernyataan;
Perintah/pernyataan; Perintah/pernyataan;
While(syarat) }
While(syarat)

/* do While01.cpp */
/*----------------*/
#include <conio.h>
#include <stdio.h>
#include <iostream.h>
main()
{
int bil=2;
clrscr();
do
{
cout<<bil<<” “;
bil+=2;
}
while(bil<=10);
getch();
}

Selamat Belajar….. 26
WYI
Pernyataan goto:
Merupakan instruksi untuk mengarahkan eksekusi program pernyataan yang diawali
dengan suatu label.
Bentuk pemakaian gotob :
goto label;

#include “iostream.h”
#include “stdio.h”
#include “conio.h”
main()
{
int a,b;
char lagi;
atas: // label untuk goto
clrscr();
cout<<”masukkan nilai a:”;
cin>>a;
b=a%2;
printf(“nilai %d %%2 adalah =%d,a,b);
printf(“\n\n Ingin hitung lagi :[y/t]:”);
lagi==getche();
if(lagi==‟Y‟ || lagi==‟y‟)
goto atas; //pemakaian goto

getch();
}

Selamat Belajar….. 27
WYI
Array setelah uts

Variabel Larik atau lebih dikenal dengan ARRAY adalah adalah Tipe terstruktur yang
terdiri dari sejumlah komponen-komponen yang mempunyai tipe yang sama

1. Array Berdimensi Satu

Bentuk Umum pendeklarasian array : Tipe-Data Nama_Variabel[Ukuran]

Keterangan :
Type Data : Untuk menyatakan type data yang digunakan.
Ukuran : Untuk menyatakan jumlah maksimum elemen array.

Contoh Pendeklarasian Array

float Nil_Akhir[6];

Jumlah Elemen Array

Nama Array

Tipe data elemen array


/* atau // : untuk menyatakan keterangan dan tidak berpengaruh dalam jalannya
program

Latihan :
/* ---------------------------- */
/* Program Array Satu Dimensi */
/* ---------------------------- */
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
#include<iomanip.h>
main()
{
int i;
char nm[5][20];
float nk[5],nu[5],na[5];
clrscr();
cout<<" Data Ujian Mahasiswa"<<endl;
cout<<"----------------------------"<<endl;
for(i=1;i<=2;i++)
{
cout<<" Data Ke- "<<i<<endl;
cout<<" Nama : ";gets(nm[i]);
cout<<" Nilai Keaktifan : ";cin>>nk[i];
cout<<" Nilai Ujian : ";cin>>nu[i];
na[i]=(nk[i]+nu[i])/2;
cout<<endl;
}
clrscr();
cout<<" Data Ujian Mahasiswa"<<endl;
cout<<"---------------------------------------------------"<<endl;
cout<<" No. Nama Nkeaktifan NUjian Nilai Akhir"<<endl;
cout<<"---------------------------------------------------"<<endl;
for(i=1;i<=2;i++)
{
cout<<setiosflags(ios::left)<<setw(4)<<i;
cout<<setiosflags(ios::left)<<setw(18)<<nm[i];
cout<<setprecision(2)<<" "<<nk[i];
cout<<setprecision(2)<<" "<<nu[i];
cout<<setprecision(2)<<" "<<na[i]<<endl;
}

Selamat Belajar….. 28
WYI
cout<<"--------------------------------------------"<<endl;
getch();
}

Tampilan input:

Tapilan Output:

2. Array Berdimensi Dua

Bentuk Umum pendeklarasian array : Tipe-Data Nama_Variabel[index-1][index-2]

Keterangan :
 Type Data : Untuk menyatakan type data yang digunakan.
 Index-1 : Untuk menyatakan jumlah baris
 Index-2 : Untuk menyatakan jumlah kolom

Contoh Pendeklarasian Array

int data_jual[3][3];

Jumlah Kolom
Jumlah Baris
Nama Array
Tipe data elemen array

Selamat Belajar….. 29
WYI
Latihan Array dimensi2:
/* =============== */
/* Array Dimensi 2 */
/* =============== */
#include <stdio.h>
#include "conio.h"
#include "iostream.h"
#include "iomanip.h"
main()
{
int i,j;
int data[4][4];
char nama[4][20];
clrscr();

for(i=1;i<=3;i++)
{
cout<<"Data Penjualan "<<i<<endl;
cout<<"Nama Barang : ";cin>>nama[i];
for(j=1;j<=3;j++)
{
cout<<"Data Tahun 200"<<j<<endl;//<<","<<j<<endl;
cout<<"jumlah penjualan : ";cin>>data[i][j];
}
}
clrscr();
cout<<" Data Penjualan Pertahun "<<endl;
cout<<"========================================= "<<endl;
cout<<" No Nama Barang 2001 2002 2003 "<<endl;
cout<<"========================================= "<<endl;

for(i=1;i<=3;i++)
{
cout<<setiosflags(ios::left)<<setw(5)<<i;
cout<<setiosflags(ios::left)<<setw(10)<<nama[i];

for(j=1;j<=3;j++)
{
cout<<setiosflags(ios::right)<<setw(6)<<data[i][j];
cout<<" ";
}
cout<<endl;
}

cout<<"================================================";

getch();
}

Array Matrik1:
#include <stdio.h>
#include "conio.h"
#include "iostream.h"
#include "iomanip.h"
main()
{
int i,j;
int data[2][5]={{2,5,6,4,8},{4,5,8,6,9}};
clrscr();
for(i=0;i<2;i++)
{
for(j=0;j<5;j++)
{
cout<<data[i][j];

Selamat Belajar….. 30
WYI
cout<<" ";
}
cout<<endl;
}
getch();
}

Array matrik2:
/* =============== */
/* Array Dimensi 2 */
/* =============== */
#include <stdio.h>
#include "conio.h"
#include "iostream.h"
#include "iomanip.h"
main()
{
int i,j,k,b;
int data[4][4];

clrscr();

cout<<"Masukan Baris : ";cin>>k;


cout<<"Masukan Kolom : ";cin>>b;

for(i=1;i<=k;i++)
{
for(j=1;j<=b;j++)
{
cout<<"Matrik - "<<i<<" "<<j<<endl;
cout<<"Nilai Matrik : ";cin>>data[i][j];
}
}

cout<<"Data Matrik Ordo "<<k<<","<<b<<endl;


for(i=1;i<=k;i++)
{
for(j=1;j<=b;j++)
{
cout<<setiosflags(ios::right)<<setw(4);
cout<<data[i][j];
cout<<" ";
}
cout<<endl;
}

getch();
}

Selamat Belajar….. 31
WYI
Latihan Array 1:

Input Jumlah Pembeli :

Pembeli ke-
Nama Barng :
Harga Barang :
Jumlah :

Pembeli ke-
Nama Barang :
Harga Barang :
Jumlah :

Tampilan output:

----------------------------------------------
No Nama Barang Harga Jumlah Total
------------------------------------------------
………… ……………………… …………… ………………… …………
………… ……………………… …………… ………………… …………
------------------------------------------------

Ketentuan Soal:
Nama pembeli, nama barang ,harga,dan jumlah diinput
Total=harga*jumlah

Jawaban:
#include <stdio.h>
#include "conio.h"
#include "iostream.h"
#include "iomanip.h"
main()
{
int i;
char nm[8][15],nb[8][15];
int hrg[8],jumlah[8],total[8];
clrscr();
for(i=1;i<=1;i++)
{
cout<<” Pembeli ke-“<<i<<endl;
cout<<” Nama Barang :”;cin>>nb[i];
cout<<” Harga Barang :”;cin>>hrg[i];
cout<<” Jumlah :”;cin>>jumlah[i];
total[i]=hrg[i]*jumlah[i];
cout<<endl;
}
cout<<”-----------------------------------------------“<<endl;
cout<<” No Nama Barang Harga Jumlah Total”<<endl;
cout<<”-----------------------------------------------“<<endl;
for(i=1;i<=3;i++)
{
printf(“%4d %10s %6d %4d %8d \n”,i,nb[i],hrg[i],jumlah[i],
total[i]);
}
cout<<”-----------------------------------------------“<<endl;
getch();
}

Selamat Belajar….. 32
WYI
Latihan Array dimensi 1:
Latihan array if(strcmp)
Tampilan Input:
Data Penjualan Tiket Bioskop Tampilan Input:
============================ Data Penjualan Tiket Bioskop
Nama kasir : ============================
Tanggal : Nama kasir :
============================ Tanggal :
Masukkan Jumlah Inputan : ============================
Masukkan Jumlah Inputan :
Hari ke- ...
Kode Tiket : Hari ke- ...
Jumlah : Kode Tiket :
Jumlah :
Tampilan output:
====================================== Tampilan output:
Bioskop XYZ ======================================
Kasir :<output> Bioskop XYZ
====================================== Kasir :<output>
No |Judul Film| Harga| Jumlah | Total ======================================
====================================== No |Judul Film|Harga | Jumlah | Total
Xx xxxxxx 9999 99 9999 ======================================
Xx xxxxxx 9999 99 9999 Xx xxxxxx 9999 99 9999
====================================== Xx xxxxxx 9999 99 9999
Total keseluruhan :99999 ======================================
Total Jumlah :99 Total keseluruhan :99999
Total Jumlah :99

kentuan soal:
kentuan soal:
Gunakan Fungsi array dan if
Kode tiket Judul film Harga Gunakan Fungsi array dan if
1 My Girl 20000 Kode tiket Judul film Harga
2 Boys Before Flowers 18000 MGL My Girl 20000
3 Full House 15000 BBF Boys Before Flowers 18000
4 Itajurana Kiss 10000 FHS Full House 15000
IJK Itajurana Kiss 10000
Total=harga *jumlah
Total keseluruhn=total dari total Total=harga *jumlah
Total jumlah =total dari jumlah Total keseluruhn=total dari total
Total jumlah =total dari jumlah

Selamat Belajar….. 33
WYI
Function
Function (fungsi) merupakan blok dari kode yang dirancang untuk
melaksanakan tugas khusus. Pada intinya fungsi berguna untuk :
a. Mengurangi pengurangan penulisan program yang berulang atau sama.
b. Program menjadi terstruktur, sehingga mudah dipahami dan
dikembangkan.
/* pembuatan fungsi garis */
Struktur Fungsi garis()
Nama_fungsi(argument) {
printf(“\n----------------------\n”);
{ }
….pernyataan/perintah; main()
….pernyataan/perintah; {
….pernyataan/perintah; clrscr();
} garis();
cout<<”AMIK BSI JAKARTA PUSAT“<<endl;
garis();
Contoh Prototipe Fungsi getche();
Nama fungsi }
Float total(float a,float b);

Tipe parameter
kedua
Tipe parameter pertama
Tipe keluaran fungsi

Parameter pada fungsi:

Selamat Belajar….. 34
WYI

1. Pemanggilan dengan nilai(call by Value)

#include <stdio.h>
#include "conio.h"
#include "iostream.h"
tambah(int m,int n);
tambah(int m,int n) //bisa diletakkan diatas atau dibawah
{
m+=5;
n+=7;
cout<<”\n Nilai M dan N setelah di tambah()”;
cout<<”\n m= “<<m<<” dan N=”<<n<<endl;
}
main()
{
int a,b;
a=5;
b=9;
clrscr();
cout<<” Nilai Sebelum fungsi digunakan :”<<endl;
cout<<” Nilai a=”<<a<<” nilai b=”<<b<<endl;

tambah(a,b); //pemanggilan fungsi

cout<<” Nilai Setelah fungsi digunakan :”<<endl;


cout<<” Nilai a=”<<a<<” nilai b=”<<b<<endl;
getch();
}
2. Pemanggilan dengan Referensi(call by reference)
#include <stdio.h>
#include "conio.h"
#include "iostream.h"
tambah(int *m,int *n); //tanda * untuk menghasilkan nilai pada variabel
main()
{
int a,b;
a=5;
b=9;
clrscr();
cout<<” Nilai Sebelum fungsi digunakan :”<<endl;
cout<<” Nilai a=”<<a<<” nilai b=”<<b<<endl;

tambah(&a,&b); //pemanggilan fungsi

cout<<” Nilai Setelah fungsi digunakan :”<<endl;


cout<<” Nilai a=”<<a<<” nilai b=”<<b<<endl;
getch();
}
tambah(int *m,int *n) //bisa diletakkan diatas atau dibawah
{
*m+=5;
*n+=7;
cout<<”\n Nilai M dan N setelah di tambah()”;
cout<<”\n m= “<<*m<<” dan N=”<<*n<<endl;
}

Selamat Belajar….. 35
WYI
//fungsi return digunakan untuk menghasilkan suatu nilai
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
float segitiga(float alas,float tinggi);
float segitiga(float alas,float tinggi)
{
return ((alas*tinggi)/2);
}
main()
{
float a,t,hasil;
cout<<"\nMasukkan Alas Segitiga :";cin>>a;
cout<<"\nMasukkan Tinggi Segitiga :";cin>>t;
hasil=segitiga(a,t);
printf("\nHasil Luasnya : %4.0f",hasil);
getch();
}

Nilai Konstanta

Inline :
Untuk mengurangi lambatnya dan mempercepat eksekusi terutama program yang
pemanggilan fungsi yang berlebih.

Format fungsi: Inline Nmfungsi(argument)


Nmfungsi (argument);
Nmfungsi(argument) menjadi {
{ Perintah /pernyataan;
Perintah /pernyataan; }
}

Selamat Belajar….. 36
WYI
Latihan1:
Buatlah program dengan menggunakan fungsi, luas() untuk mencari luas,keliling()
untuk mencari kelilingan lingkaran.
Latihan2:
Buatlah program untuk mencari diskon dengan fungsi. Fungsi dengan nama potong()
-jika pembelian kurang dari 1000000 maka tidak dapat diskon.
- jika pembelian >1000000 maka diskon=20%
-jika pembelian >5000000 maka diskon=35%
Input:
Besar pembelian barang Rp:
Output:
Besar diskon yang didapat Rp:
Besar jumlah bayar yang harus dibayar :

Jawaban Latihan1:
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
inline float luas(float r) //format fungsi dgn inline pertama untuk mencari luas
{
return(3.14*r*r);
}
inline float kel(float r) //format fungsi dgn inline kedua untuk mencari keliling
{
return(2*3.14*r);
}
main()
{
float r,l,k;
clrscr();
cout<<” masukkan jari jari lingkaran:”;cin>>r; //input
l=luas(r); //definisi untuk pemanggilan fungsi
k=kel(r); //menggunakan variable berbeda dengan nama fungsi
printf(“ Luas Lingkaran :%0.0f \n”,l); //format tipe data float dengan printf
printf(“ Keliling Lingkaran :%0.0f \n”,k);
getch();
}

Jawaban latihan 2:
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
inline float potong(float pemb)
{
if(pemb>5000000)
return(0.35*pemb);
else
if(pemb>1000000)
return(0.2*pemb);
else
return(0);
}
main();
{
float pemb,pot,tot;
clrscr();
cout<<” Besar pembelian barang :”;cin>>pemb;
pot=potong(pemb);
printf(“ Besar diskon:%0.0f \n”,pot);
tot=pemb-pot;
printf(“ Besar jumlah bayar :%0.0f \n”,tot);
getch();}

Selamat Belajar….. 37
WYI
MACRO
Preprocessor Directives adalah instruksi yang diberikan kepada
compiler, sesaat sebelum proses kompilasi berlangsung. Didalam penggunaan
preprocessor directives selalu dimulai dengan tanda “#”.
Ada beberapa preprocessor directives, diantaranya :
o # define : untuk mendefinisikan suatu nilai tertentu kepada
suatu nama konstanta.
Bentuk Umum : #define nama_konstanta teks, dalam pendeklarasian
#define nama_konstanta sebaiknya ditulis dengan huruf besar, gunanya
untuk membedakan dengan nama_variabel
o #Include : berfungsi untuk memasukkan atau menyertakan file – file
header kedaam program yang dibuat. Dalam penulisan #include ada dua
bentuk penulisan :
#include “nama_file_header” atau #include <nama_file_header>
Contoh 1 :

#include<stdio.h>
#include<iostream.h>
#include<conio.h>
#define PHI 3.14 //definisi makro untuk konstanta phi
#define L(n) PHI*n*n //definisi untuk rumus
main()
{
clrscr();
cout<<”Luas Lingkaran dengan : “<<endl;
cout<<”Jari-Jari =5 adalah “<<L(5)<<endl; //pemanggilan makro
cout<<”Jari-Jari =10 adalah “<<L(10)<<endl;
getch();
}

Contoh 2 :

#include<stdio.h>
#include<iostream.h>
#include<conio.h>

#define awal {
#define akhir }
#define mulai() main()
#define cetak cout
#define masuk cin
#define hapus() clrscr()
#define tahan() getch()
#define LS_KUBUS (sisi*sisi)

mulai()
awal
int sisi,ls_kubus;

hapus();

cetak<<"Program Penggunaan #Define "<<endl;


cetak<<"Masukkan Nilai Sisi Kubus = ";masuk>>sisi;

ls_kubus=LS_KUBUS;
cetak<<"Luas Kubus Adalah = "<<ls_kubus;
tahan();
akhir

Selamat Belajar….. 38
WYI
PEMBUATAN FILE HEADER

File Header adalah suatu file dengan akhiran .h. file ini sebenarnya berisikan deklarasi fungsi dan
definisi konstanta. Selain file-file header standar yang disediakan oleh Turbo C, kita dapat juga membuat file
header sendiri, dengan cara yang sama seperti membuat file editor. Yang harus diperhatikan pada saat
menyimpan file header yang telah dibuat harus digunakan akhiran .h

Contoh : simpan file header tersebut dengan nama : pribadi.h

/* pribadi.h */

#define awal {
#define akhir }
#define mulai() main()
#define cetak cout
#define tampil cprintf
#define masuk cin
#define hapus() clrscr()
#define tahan() getch()
#define warna textcolor

Contoh Penggunaan File Header Sendiri :

#include<stdio.h>
#include<iostream.h>
#include<conio.h>
#include”pribadi.h”

mulai()

awal
int a, b, c;
hapus();
warna(1);
tampil(“PROGRAM PENJUMLAHAN \n”);
cetak<<endl;
cetak<<”Masukan Nilai A = “;masuk>>a;
cetak<<”Masukan Nilai B = “;masuk>>b;
cetak<<endl;
c=a+b;
cetak<<”Hasil dari “<<a<<” + “<<b<<” = “<<c;
tahan;
akhir

Selamat Belajar….. 39
WYI
STRUCTURE

Structure digunakan untuk mengelompokkan sejumlah data yang mempunyai tipe


data yang berbeda. Variable-variabel yang membentuk sebuah struktur
dinamakan elemen struktur.

BU :
Struct nama_tipe_struktur
{
Elemen_struktur;
Elemen_struktur;
Elemen_struktur;
};

Atau

Struct
{
Elemen_struktur;
Elemen_struktur;
Elemen_struktur;
}nama_tipe_struktur;

Latihan Struktur:
#include “conio.h”
#include “stdio.h”
#include “iostream.h”
main()
{
struct
{
char kd,nb[10];
int hrg,jml,total;
}brg;

clrscr();

cout<<” Kode Barang :”;cin>>brg.kd;


cout<<” Nama Barang :”;cin>>brg.nb;
cout<<” Harga Barang:”;cin>>brg.hrg;
cout<<” Jumlah :”;cin>>brg.jml;

brg.total=brg.hrg*brg.jml;

cout<<” Nama Barang :”<<brg.nb<<endl;


cout<<” Harga Barang:”<<brg.hrg<<endl;
cout<<” Jumlah :”<<brg.jml<<endl;
cout<<” Total :”<<brg.total;
getch();
}

Selamat Belajar….. 40
WYI
Latihan Array Dan Struktur

#include “conio.h”
#include “stdio.h”
#include “iostream.h”
main()
{
struct
{
char kd,nb[10];
int hrg,jml,total;
}brg[4];
int i;
clrscr();
for(i=1;i<=3;i++)
{
cout<<” Kode Barang :”;cin>>brg[i].kd;
cout<<” Nama Barang :”;cin>>brg[i].nb;
cout<<” Harga Barang:”;cin>>brg[i].hrg;
cout<<” Jumlah :”;cin>>brg[i].jml;
brg[i].total=brg[i].hrg*brg[i].jml;
cout<<endl;
}
cout<<” No Nama Barang harga Jumlah Total”<<endl;
cout<<”--------------------------------------------------“<<endl;
for(i=1;i<=3;i++)
{
cout<<setiosflags(ios::left)<<setw(4)<<i;
cout<<setiosflags(ios::left)<<setw(8)<<brg[i].nb;
cout<<setprecision(8)<<setw(6)<<brg[i].hrg;
cout<<setprecision(5)<<setw(6)<<brg[i].jml;
cout<<setprecision(8)<<setw(6)<<brg[i].total;
}
cout<<”--------------------------------------------------“<<endl;
getch();
}

Latihan struktur dan fungsi:


#include “conio.h”
#include “stdio.h”
#include “iostream.h”

inline int total( int jml,int hrg)


{
return(hrg*jml);
}
main()
{
struct
{
char kd,nb[10];
int hrg,jml,tot;
}brg;

clrscr();
cout<<” Kode Barang :”;cin>>brg.kd;
cout<<” Nama Barang :”;cin>>brg.nb;
cout<<” Harga Barang:”;cin>>brg.hrg;

Selamat Belajar….. 41
WYI
cout<<” Jumlah :”;cin>>brg.jml;
brg.tot=total(brg.jml,brg.hrg);
cout<<” Nama Barang :”<<brg.nb<<endl;
cout<<” Harga Barang:”<<brg.hrg<<endl;
cout<<” Jumlah :”<<brg.jml<<endl;
cout<<” Total :”<<brg.tot;
getch();
}

Latihan 1:
Buatlah struktur dengan nama nilai, dan buat file header untuk
main,clrscr,cout dan cin.
Dengan ketentuan sebagai berikut:
Nilai akhir =
(10%nilai absen)+(20%*nilai tugas)+(30%*nilai uts)+(40%*nilai UAS)

Tampilan Input:
NIM :
Nama :
Nilai Absen :
Nilai Tugas`` :
Nilai UTS :
Nilai UAS :

Tampilan output:
NIM :
Nama :
Nilai Akhir :

Latihan 2:
Struktur dan array serta fungsi
Ketentuan Soal :
Sebuah Warnet memiliki ketentuan sebagai berikut : Biaya pemakain perjam adalah Rp 5000,00.
Bila pemakaian lebih dari 5 jam mendapatkan potongan 10 % dari totalbiaya, selain itu tidak mendapat
potongan.
1. Buatlah program untuk menghitung biaya tagihannya berdasarkan lama pemakaian
2. Buatlah struktur untuk data pemakai
3. Buatlah sebuah function untuk menghitung potongan

Tampilan Awal Tampilan Akhir

Jumlah Data ? <input> =================================================


RINCIAN TAGIHAN WARNET KOMPUTER
============================ =================================================
PROGRAM TAGIHAN WARNET No NoKomp Nama Lama Pakai Potongan Total Tagihan
KOMPUTER =================================================
============================ … …. … … … …
Data Ke - : <output> =================================================
No Komputer : <input>
Nama Pemakai : <input>
Lama pakai (jam) : <input>
============================

Selamat Belajar….. 42

Anda mungkin juga menyukai