You are on page 1of 10

PBC Part II

Halo teman-teman, sekarang gw akan menjelaskan lebih lanjut mengenai pembahasan gw


sebelumnya tentang pemrograman dengan menggunakan bahasa C.
Kalian dah baca artikel gw yang sebelumnya kan? Klo belum, silahkan dibaca.
Klo ga tau, nih tempat downloadnya,
http://www.ziddu.com/download/5804067/PBC.rar.html
klo udah baca dan di praktekkan, trus kita ngapain dong di sini?
Gw cuma mau jelaskan apa yang belum gw jelaskan di artikel sebelumnya, makanya di baca ya,
ohya, awalnya sih gw bikin artikel ini cuma buat anak2 !" #$ doang, tapi berhubung gw juga ada
temen di kelas lain ,jadi anggap aja ini artikel untuk umum, sapa aja boleh baca, boleh nanya, boleh
kritik. %an kasih saran juga boleh,
&iuh,, cape pendahuluannya.,. 'kwk..
kita langsung aja ya,
dalam sebuah kode program , pada awalnya, kita harus menyertakan header agar program yang kita
buat dapat mengenali perintah-perintah kita.
paan tuh maksudnya,
gini nih..saat session tentang algoritma dan pemrograman, khususnya !" #$, ada dosen ()ak %ia*
+antika, berkata klo komputer itu hanya sebuah mesin yang bodoh, yang ga tau apa-apa, kita cuma
memberi perintah doang.
"ah , oleh sebab itulah, kita membuat program tuh kurang lebih sama seperti memerintahkan
komputer, tetapi, komputer ga ngerti apa yang kita perintahkan, dalam pseudocode,kita
menggunakan perintah CET! atau "#ITE atau P#I$T ,tetapi dalam bahasa C, kita
menggunakan perintah P#I$T%. "ah, untuk memakai print& ini, kita harus memasukkan library ke
dalam program agar dia bisa mengenali perintah )-."/0. )erintah P#I$T% untuk mencetak
sesuatu ke layar, perintah &C$% untuk mendapatkan masukan1input dari pengguna program.
)erintah-perintah input output ini sudah terdapat di dalam &T'I(.) . paan sih itu? +tdio.h adalah
suatu &ile yang di dalam nya telah tersimpan perintah perintah dasar bahasa C. jadi program akan
mengetahui perintah yang kita gunakan dari &ile ini nih,, makanya di dalam program, kita
menggunakan perintah
*includ+ ,-tdio.h.
tetapi.. tiap .%2 berbeda-beda, untuk bahasa C, kita masih menggunakan +/%.3.H
tapi nantinya di perkuliahan ./! (./ !inus, nanti .%2 yang kita pakai adalah 4isual +tudio C55.
mungkin nantinya akan menggunakan C&T'I(.)
tapi klo kalian menggunakan %e6-C55, kita masih bisa menggunakan +/%.3.H
oke, lalu bagaimana dengan C3".3.H yang sering gw pake di program2 gw sebelumnya?
+ebenarnya kita ga pake itu juga ga apa2. Gw pake itu karna mau menggunakan perintah
/ETC)012 yang biasanya gw tulis di akhir program. )erintah itu &ungsi nya biar setelah program
selesai menjalankan semua perintah dari kita, program tersebut tidak langsung close (selesai, tapi
rtikel ini dapat di download di +.". %eddy Hermansyah
program akan menunggu kita menekan sembarang tombol, baru deh program di close, ya,, kurang
lebih seperti. 7)ress ny key to Cotinue8..
beberapa hari lalu ada seseorang yang menanyakan ke gw, dia membuat sebuah program untuk
menghitung nilai determinan dari suatu persamaan kuadrat (%,.
program nya simple ko9.
d&sd&
#include <stdio.h>
int main (void)
{
int a, b, c, D ;
printf("Masuan nilai a ! " );
scanf (""d",#a);
printf("Masuan nilai b ! " );
scanf (""d",#b);
printf("Masuan nilai c ! " );
scanf (""d",#c);
D $ (b%b) & ' % a % c ;
printf("(nDeterminan $ "d",D) ;
return );
*
trus dia jalankan, masukkan nilai a,b, dan c ternyata nilai % nya ga keluar, ktanya gitu, trus gw
suruh dia tambahkan kode 3+tch012 di akhir program dengan catatan memasukkan library conio.h
terlebih dahulu.
+etelah itu program dapat berjalan sesuai dengan yang dia inginkan, begitu dehh,,,
"b: perintah 3+tch012 tidak gw sarankan, nanti gw akan berikan cara lain tanpa menggunakan &ungsi
tersebut.
trus, kita harus ha&lin dong perintah yang akan kita pake ada di mana?
;a ga lah, gw sendiri juga ga mengha&al ko9, dengan membiasakan diri untuk membuat program,
nantinya kita akan terbiasa dengan perintah-perintah dasar yang dapat membantu kita dalam
membuat program,
biar kalian tau apa aja sih library dan perintah yang bisa kita pake dalam membuat suatu program,
kalian bisa lihat di manual (help, yang disediakan .%2 nya, biasanya sih tinggal tekan 0< aja,
klo pake 4isual +tudio C55, kita bisa menggunakan &itur =+%" yang di dalamnya menyediakan
penjelasan tentang suatu perintah beserta contoh programnya. tau klo gw biasa cari tau dari situs
http:11www.cplusplus.com1
atau langsung aja di http:11www.cplusplus.com1re&erence1clibrary1
disitu kalian bisa melihat ada yang ditulis c-tdio.h 0-tdio.h1 karena memang sebenarnya sama aja.
c-tdio.h digunakan klo kita dah pakenya C44 sedangkan dalam bahasa C kita menggunakan stdio.h
coba deh klik di bagian library tersebut, nantinya kalian bisa melihat perintah-perintah (synta>, apa
aja sih yang ada di dalam library tersebut,.
rtikel ini dapat di download di +.". %eddy Hermansyah
/rus klo kalian klik lagi printahnya, misalnya kalian klik di print5 maka kalian akan masuk ke
halaman yang berisi penjelasan tentang perintah tersebut, bagaimana menggunakannya dan contoh
program yang bisa kalian coba sendiri di rumah,
selain itu juga ada berbagai tutorial yang bisa kalian coba deh, jadi kalian bisa belajar sendiri
(otodidak,, ga harus nu nggu gw nulis artikel lagi atau dari dosen atau dari aslab nantinya.
%engan latihan mandiri dan membut program secara berkala kalian akan gampang terbiasa dengan
pemrograman dan perintah-perintah yang biasa dipakai.
?adi, tar klo dapet tugas atau 9ui*, kalian bisa mendapatkan nilai tinggi dengan mudah, mudah-
mudahan bisa dapet .) @ deh b iar bisa dapet beasiswa di tahun berikutnya,. ABA
+ekarang gw anggap kalian dah mengerti dengan kalimat berikut ini.
*includ+ ,-tdio.h.
*includ+ 6math.h7
*includ+ 6-trin3.h7
*includ+ ,6-tdli8.h7.
loh ko9 ada yang beda ya??
perbadaannya ga jauh ko9, cuma beda tanda doang, ada yang pake CD ada juga yang pake tanda
kutip 78 lalu bedanya di mana sih? +ebenernya sih ga beda jauh,, cuma sedikit bedanya,
+etau gw sihhh.. klo pake 78 tanda kutip, artinya library itu ada di &older lain, jadi compiler akan
mencari &ile yang bernama string.h. .. loh?? ko9 nyambungnya ke &ile sih??
jadi gini nihh. Eibrary-library standar ter sebut sebenarnya tersimpang dalam sebuah &ile. 0ile ini
daritadi gw bilangnya library, tapi ntar mungkin akan lebih sering disebut dengan h+ad+r . /ipe &ile
nya aja udah .h artinya &ile tersebut adalah sebuah header,
coba deh kalian buka 9: Comput+r trus masuk ke &older tempat .%2 kalian di instal.
Klo %e6-C55 biasanya letaknya ada di C:;'+<=Cpp trus masuk ke &older includ+ , di situ ada
banyak sekali &ile. Klo kalian klik kanan dan properties , kalian bisa lihat type o& &ile nya C )+ad+r
%il+ ,nah klo kalian cari, kalian bisa menemukan -tdio.h . stdio itu sendiri berarti -tandard input
output. ABA klo ketemu,ya ga usah dibuka, gw aja ga ngerti isinya apaan.. hahahaha

oke, jadi gimana nih? )ake 78 atau pake CD. ??
terserah kalian mau pake yang mana aja selama itu adalah library standard yang telah disediakan
oleh .%2 yang kalian gunakan, kalian akan menggunakan tanda kutip kalau kalian menggunakan
header buatan kalian sendiri. Cara bikinnya? Gw juga belum tahu.. hehehe...
humm. /rus mau belajar apa lagi ya??
ABA
oh iya,,.
int main01
apaan sih artinya? /rus maksudnya apaan?? bisa pake yang lain ga?? apakah harus ada??
statement di atas &ungsinya adalah (klo menurut gw, sebagai tanda program utama yang kalian buat,
karna nantinya kita bisa membuat prosedur dan &ungsi juga (tapi tentang prosedur dan &ungsi akan
dijelaskan belakangan,
rtikel ini dapat di download di +.". %eddy Hermansyah
nah, pokoke ini adalah tanda dari program utama kita, kurang lebih seperti itulah menurut gw, klo
yang ini sebenernya gw kurang menguasai ya,. /api gw cuma memberitahukan yang gw tau aja.
+elain int main01 kita bisa menggunakan yang lain ko9.
main (,
6oid main (,
int main (6oid,
trus apa bedanya?? gw juga kurang tau. ;ang gw tau, cuma
-klo int main akan mengembalikan nilai dan pada akhir program kita menuliskan r+turn 02
-trus klo <oid main tidak mengembalikan suatu nilai dan tidak ada r+turn 02 di akhir program
Gitu deh katanya,., tapi apaan sih mengembalikan nilai dan ga mengembalikan nilai??
ya gw masih kurang tau juga.
/api gw yakin nanti saat kuliah kita akan dikasih tau apa bedanya ko9, klo misalnya ga di kasih tau,
sebaiknya kalian tanya aja, klo bisa sih tanya nya ke dosen klo tanya ke aslab, mungkin aja ada
yang ga isa jawab atau pura-pura bisa akhirnya malah kasih tau nya yang kurang tepat,
jadi, lebih baik tanyakan ke ahlinya,
memang sih di tutorial sebelumnya gw menggunakan int main01 tapi gw malah ga pake r+turn 02
di akhir program. ;a itu salah satu kesalahan gw...
trus bagusnya pake yang mana dong???
setau gw sih.. <oid main01 dah jarang dipake karena ga semua compiler C1C55 bisa menerimanya,
jadi gw sarankan pake int main01 dan di akhir program selalu biasakan menulis r+turn 02
&ungsi r+turn 02 ini sendiri artinya kita mengembalikan nilai # kepada mesin, (klo ga salah ya,
biar lebih jelas kalian bisa tanyakan pada senior kalian atau cari di google atau dengan membaca
buku re&erensi.
3ke, itu aja yang bisa gw bagikan tentang int main dan kawan-kawannya,
karna pengetahuan dan pengalaman gw juga terbatas, (klo ga terbatas mah , gw ga usah kuliah
lagi,
trus selama )3= kan kita dah belajar apa aja hayo??
ada yang masih ingat?
Kita pernah menggunakan perintah
c+ta> / print? 3+t- / -can / 8aca? trus ada dowhil+ +nddo? uhmm ada apa lagi sih??
oh ya ada juga operator @ yaitu untuk mencari sisa hasil pembagian (modulus,
trus ada juga 6;n7 untuk mencetak baris baru.. itu kan katanya sih cuma p-+udocod+
ya pseudocode mah cuma kumpulan logika doang, masih belum masuk ke bahasa pemrograman,
jadi bagaimana kita mendeklarikan hal tersebut di dalam bahasa pemrograman C?
c+ta>/print di dalam bahasa C kita menggunakan perintah print5
contohnya
p-+udocod+ : ceta +hallo ,orld-
C : printf (+.ello /orld-);
rtikel ini dapat di download di +.". %eddy Hermansyah
8aca/3+t kita menggunakan -can5
p-+udocod+ : baca 0
C : scanf (+"d-, #0);
nah loh,, ribet ya?
Ga juga ko9.
"ih gw jelasin. @d itu sebagai tanda klo nilai yang kita masukkan ke dalam 6ariabel > itu adalah
desimal
AB artinya nilainya akan dimasukkan ke dalam 6ariabel >, klo mau dimasukkan ke dalam 6ariabel y
ya tinggal ganti jadi A: . tapi perhatikan tanda kutip dan tanda koma, serta tanda titik koma di
akhir baris.
"anti saya akan menjelaskan lebih lanjut, kita skip ke perintah berikutnya dulu ya.
dowhil+ +nddo adalah salah satu bentuk perulangan.
P-+udocod+ :
BCD //nilai x awalnya adalah 1
dowhil+ B,5 //selama nilai x masih lebih kecil dari 5, lakukan perintah yang dibawahnya
c+ta> B //mencetak nilai x (nilai awalnya adlah 1)
BCB4D //menambahkan nilai x sebanyak 1 (sekarang nilai x berubah menjadi 2)
+nddo //perintah dowhile nya dijalankan sampe sini aja, trus naik lagi ke atas
(periksa apakah nilai x masih lebih kecil dari 5? klo iya, cetak x lagi dan x1
lagi)
C cod+ :
int BCD2 //x adalah sebuah nilai integer (angka) dan nilainya adalah 1
whil+ 0B,51 //cek nilai x
E //jika x!5 " true maka semua perintah yang ada di dalam kurung kurawal
//dilaksanakan
print5 06@d7? B12 //mencetak nilai x (perhatikan statement yang diakhiri dengan tanda
//titik koma)
B442 //nilai x akan ditambah 1, jika sebelumnya x"1 maka menjadi x"2
F //tutup kurung kurawal, akhir dari perulangan (seperti enddo)
Eooping
pa yang akan anda lakukan jika membuat program untuk menghitung angka <-<#?
apakah anda ingin mencetaknya satu per satu?
!agaimana jika ingin menampilkan angka <- <### atau <-<,###,### ???
kita dapat menggunakan looping1 perulangan.
da beberapa cara looping dalam bahasa C1C55
pertama dengan menggunakan:
'hile
do-'hile
&or
perulangan while memang sudah dijelaskan,. Ealu apa bedanya dengan do while?
Gw akan mengajak kalian melihat perbedaan antara while dengan do while.
0$1;
/hile (0<1)
{
printf(+"d-, 0);
rtikel ini dapat di download di +.". %eddy Hermansyah
022;
*
0$1;
do
{
printf(+"d-, 0);
022;
*,hile (0<1)
!entuk perulangan while, akan melakukan semua perintah yang berada di dalam kurung kurawal,
perhatikan contoh pertama (while,. )rogram akan memeriksa, selama nilai > lebih kecil dari angka
$, maka program akan melakukan perintah-perintah yang berada di dalam kurung kurawal.
%alam contoh , hanya terdapat 2 perintah yang berada di dalam kurung kurawal, maka selama nilai
> kurang dari $ maka program akan terus menerus melakukan hal yang sama, hingga nilai > F$,
karena sudah tidak memenuhi kondisi1syarat yang diinginkan.
!egitu pula contoh yang kedua, yang membedakannya adalah, pada contoh pertama, program akan
memeriksa nilai > terlebih dahulu. +edangkan pada contoh kedua, program akan melakukan
perintahnya terlebih dahulu baru kemudian memeriksa nilai >,
=emangnya ngaruh?? ya ngaruh lahhh..silahkan saja di coba programnya dan apa yang
membedakannya.. ABA biar makin ngerti...
berikutnya adalah perulangan &or.
!entuk perulangan &or dipakai jika kita ingin melakukan perulangan yang jumlah perulangannya
sudah kita ketahui atau sudah kita tentukan,
pada perulangan while, kita belum tentu tahu berapa kali perulangan tersebut akan berjalan,
sedangkan pada &or, kita dapat menentukannya,
bentuk umumnya adalah
for (nilai variabel awal ; nilai variabel akhir; penambahan yang dilakukan)
contohnya adalah sebagai berikut
for (x=1 ; x<5; x++)
artinya, perulangan akan dimulai dengan nilai >F<, dan akan berakhir jika nilai > lebih kecil dari $
(>C$,. selama perulangan, kita menambahkan nilai > sebanyak <. (>55,. 11perhatikan tanda titik
komanya,
kita langsung ke contoh aja ya biar jelas :
*includ+ ,-tdio.h.
int main01
E
int B2
5or 0BCD2B,52 B441
E
print5 06@d )+llo;n7? B12
F
r+turn 02
F
program di atas akan menghasilkan
D )+llo
G )+llo
H )+llo
4 )+llo
rtikel ini dapat di download di +.". %eddy Hermansyah
Contoh 2 :
*includ+ ,-tdio.h.
int main01
E
int B2 //deklarasikan #ariabel x
int :CG2 //deklarasikan #ariabel y dan assign nilai 2 ke dalam #ariabel y$
5or 0BCD2B,52 B44?:44 1
E
print5 06@d )+llo @d ;n7? B? :12 //mencetak nilai %x &ello y 'n(
F
r+turn 02
F
maka hasilnya sebagai berikut
D )+llo G
G )+llo H
H )+llo 4
4 )+llo 5
!agaimana? +udah jelas dengan perulangan???
jika belum , harap tanyakan ke senior kalian,
jika sudah, (gw anggap dah pada jelas dah ya.. hehehehe...,
gw mau kasih tau klo selain di atas itu, masih ada lagi multi loopin3 misalnya, di dalam &or ada &or
juga., atau di dalam while ada while, atau di dalam while, ada &or nya,, wah,, bingung??? hehehe...
pelan-pelan aja ya..
*includ+ I-tdio.hI
int main01
E
int B?:?n2
print50Ima-u>>an Jumlah 8ari- : I12
-can50I@dI? An12
5or0BCD2 B,Cn2 B441 //ini adalah )or yang pertama
E
5or 0:CD2 :,CB2 :441 //ini adalah )or yang di dalam )or (yang kedua)
E
print50I@d I?:12
F
print50I;nI12 //mencetak baris baru
F
r+turn 02
F
lalu bagaimanakah jalannya program tersebut???
saat program menemui 5or yang pertama, maka ia akan masuk dengan nilai >F<, setelah itu
program akan menemukan 5or yang kedua. =akaaaa... 5or yang kedua akan dijakankan terlebih
rtikel ini dapat di download di +.". %eddy Hermansyah
dahulu hingga selesai, kemudian program kembali ke 5or yang pertama dan nilai > menjadi 2.
ngerti ga? ABA
silahkan dicoba aja ya programnya.
"antinya akan mengeluarkan output seperti berikut.
ma-u>>an Jumlah 8ari- : D0
D
D G
D G H
D G H 4
D G H 4 5
D G H 4 5 6
D G H 4 5 6 7
D G H 4 5 6 7 8
D G H 4 5 6 7 8 K
D G H 4 5 6 7 8 K D0
gw sih aga sulit menjelaskan tentang multi looping, ehm, singkatnya sih, multi looping adalah
gabungan dari minimal 2 looping, bisa &or di dalam &or, atau while di dalam &or, atau &or di dalam
while, atau bagaimana pun itu terserah kalian maunya kaya gimana..
klo multi looping itu , yang di jalankan duluan adalah loop yang paling dalam letaknya., oke?
"gerti ga? Gw harap sih ngerti dah ya..
ABA
In5init+ Loopin3
pa itu in&inite looping? .n&inite looping adalah perulangan yang tak pernah berakhir, program akan
terus berjalan tanpa henti, biasanya dikarenakan karna logic error atau salah algoritma, bisa aja..
contoh program nya nih..
*includ+ ,-tdio.h.
int main01
E
int BCD2
whil+ 0B.01
E
print506@d 7?B12 //ga ada x* nyaa$$$ jadi nilai x tetep aja 1
F
r+turn 02
F
oh ya, selama ini di dalam kode program yang gw buat, terkadang gw menuliskan tambahan
komentar dari gw, biasanya gw pake tanda slash 2> lalu komentar gw, apakah itu akan berpengaruh
pada program??
jawabannya adalah tidak, komentar dapat kita gunakan sebagai catatan, biar program kita mudah
dibaca oleh kita sendiri, dan juga harusnya bisa dibaca dengan orang lain, dengan adanya komentar,
rtikel ini dapat di download di +.". %eddy Hermansyah
seorang programmer dapat mengerti kode programmer lain.
Cara menuliskan komentar setau gw ada 2 macam, yaitu komentar per baris atau per para&ra&.
<. per baris. ;aitu dengan tanda 11lalu disertai dengan komentar,
2. per paragra& di awali dengan tanda 1G lalu di akhiri dengan G1 . tanda ini dapat digunakan
untuk komentar yang panjang hingga lebih dari < bari, saat di kompilasi (compile,
komentar yang kita buat akan di cuekin sama compiler , jadi sama kaya program tanpa komentar,,.
ABA
ehm,, apa lagi ya??
oh ya,,, ada lagi operasi matematika yang sering digunakan neh,, mungkin ada yang kalian belum
tahu..
>F>5<H artinya menjumlahkan nilai > dengan angka <, klo tadinya nilai > adalah < maka
>F <5<, maka nilai > sekarang menjadi >F2. /rus pernyataan di bawah ini juga sama
aja artinya :
>55H
>5F<H
yFy-< yaa..penjelasannya sama seperti di atas lah, paling bentuk lainnya adalah
y--H
y-F<H
!entuk lainnya? >IF2H atau yGFJH
trus ada lagi yang dengan lambang persen,. Klo gw sih bacanya modulus atau mod.
0ungsinya adalah untuk mencari sisa hasil pembagian, (kaya belajar pembagian kelas J+%,
misalnya << bagi @ hasilnya adalah 2. dan sisanya adalah J. maka untuk mendapatkan angka J ini ,
kita menggunakan modulus.
KF << L@H (nilai K nantinya akan di isi (assign, dengan angka J.,
'ahh,, cukup sekian dulu ya dari gw, capek ngetiknya..
masih ada banyak yang ingin gw bagikan, tapi
semoga dengan 2 tutorial yang dah gw bagikan ke u semua,
u orang bisa membuat program yang output nya seperti ini..
<. bintang
M
MM
MMM
MMMM
MMMMM
2. genap ganjil
3anJil
rtikel ini dapat di download di +.". %eddy Hermansyah
3+nap
3anJil
3+nap
3anJil
3+nap
3anJil
J. program untuk menghitung jumlah suatu deret bilangan
(Hitung nilai Mn dan +n dari input yang diketahui,
@. ;a bikin program lain sekreati& kalian dah,, mau buat kerjain temen kalian juga bisa.. atau
mau buat program biar bisa bantu adik kalian yang masih +=) buat selesaikan soal-soal
yang perlu rumus untuk menghitung. ($ot #+comm+nd+d,
rtikel ini dapat di download di +.". %eddy Hermansyah

You might also like