I(PENDA$ULUAN
)()( C * C++ Berbicara tentang C++ biasanya tidak lepas dari C, sebagai bahasa pendahulunya. Pencipta C adalah Brian W. Kerninghan dan Dennis M. Ritchie pada sekitar tahun 1 !2, dan sekitar satu dekade setelahnya diciptakanlah C++, "leh B#arne $tr"ustrup dari %ab"rat"riu& Bell, '()(, pada tahun 1 *+. C++ cukup k"&patibel dengan bahasa pendahulunya C. Pada &ulanya C++ disebut , a better C ,. -a&a C++ sendiri diberikan "leh Rick Mascitti pada tahun 1 *+, yang berasal dari "perat"r incre&ent pada bahasa C. Keisti&e.aan yang sangat berari dari C++ ini adalah karena bahasa ini &endukung pe&r"gra&an yang ber"rientasi "b#ek / 00P 1 0b#ect 0riented Pr"gra&&ing2. )(%. LANGKA$+LANGKA$ MENULISKAN PROGRAM DALAM C++ %angkah3langkahnya 4 Klik Min5W De6el"per $tudi"
atau
Klik Win32 console dan isi na&a pr"gra& pada Project Name, dan l"kasi penyi&panan di Location. ;ika l"kasi tidak diubah &aka pr"gra& yang akan kita buat akan disi&pan di l"kasi de<ault pr"gra&. $etelah selesai lalu klik OK
;ika ingin &e&buat pr"gra& sederhana, klik tap 8iles dan pilih C1C++ $"urce 8iles
>
L!st!ng ,rogram // -->> Menunjukan keterangan program yang tidak akan dieksekusi // Input Program To Convert Temperature From Degrees Fahrenheit To Celcius -!n./01e 2!ostream3 0s!ng names,a.e st14 !nt ma!n56 ? int 8@ d"uble a, b, C@ a A =@ bA @ //untuk aliran input dan output //mengunakan kode yang telah distandartkan //program tama //a!al program //dekalarasi varia"el F se"agai integer //dekalarasi varia"el a#"#C se"agai dou"le //memasukan nilai $ ke varia"ale a //memasukan nilai % ke varia"ale "
.o0t 22 7"A$8U 9UADI: P;<=<&722en1/4 .o0t 22 en1/4 .o0t 22 7Program To Con>ert Tem,erat0re 9rom Degrees 722en1/4 .o0t 22 7 9ahrenhe!t To Ce/.!0s722en1/4 .o0t 22 7????????????????????????????????????????????722en1/4 .o0t 22 7In,0t Tem,erat0re !n Degree 9arenhe!t @ 74 .!n 33 94 C @ 59+;%6AaBC4 //nput nilai F //rumus prigram
.o0t 22 7Tem,erat0re !n Degree 9arenhe!t @ 722 9 22en1/4 .o0t 22 7Tem,erat0re !n Degree Ce/.!0s @ 722 C 22en1/4 ret0rn &4 D //akhir program
;ika tidak terdapat err"r &aka pr"gra& sudah benar. Ke&udian klik B0!/1 dan pilih Com,!/e (Cntrl + F7)
(ekan 8es
Tam,!/an ,rogram
$as!/ aFh!r
1B
11
%(90ngs! ma!n 56 8ungsi ini &en#adi a.al dan akhir eksekusi pr"gra& C++. ma!n adalah na&a #udul <ungsi. Melihat bentuk seperti itu dapat kita a&bil kesi&pulan bah.a batang tubuh pr"gra& uta&a berada didala& <ungsi &ain/ 2. Berarti dala& setiap pe&buatan pr"gra& uta&a, &aka dapat dipastikan se"rang pe&r"gra& &enggunakan &ini&al sebuah <ungsi. Pe&bahasan lebih lan#ut &engenai <ungsi akan diterangkan ke&udian. Hang sekarang c"ba ditekankan adalah kita &enuliskan pr"gra& uta&a kita didala& sebuah <ungsi &ain/2. ;( Komentar K"&entar tidak pernah dic"&pile "leh c"&piler. Dala& C++ terdapat 2 #enis k"&entar, yaitu4 ;enis 1 4 1I K"&entar anda diletakkan di dala& ini Bisa &engapit lebih dari satu baris I1 ;enis 2 4 11 K"&entar anda diletakkan disini / hanya bisa perbaris 2 H(Tan1a Sem!.o/on (anda se&ic"l"n , @ J digunakan untuk &engakhiri sebuah pernyataan. $etiap pernyataan harus diakhiri dengan sebuah tanda se&ic"l"n. I( Mengena/ .o0t51!Ca.a : Co0t6 Pernyataan c"ut &erupakan sebuah "b#ek di dala& C++, yang digunakan untuk &engarahkan data ke dala& standar "utput /cetak pada layar2 Contoh : C include Ei"stre&9 Knt &ain / 2 ? c"ut EE , Lai, $ela&at &enggunakan C++ ,@ D (anda , EE , &erupakan sebuah "perat"r yang disebut "perat"r ,penyisipan1peletakanJ
12
1+
;(%() DEKLARASI #ARIABEL Bentuk u&u&nya 4 -a&aFtipe na&aF6ariabel @ C"nt"h 4 int R@ 11 Deklarasi & "ertipe integer char y, huru<, ni&S1BT@ 11 Deklarasi varia"le "ertipe char <l"at nilai@ 11 Deklarasi varia"le "ertipe 'loat d"uble beta@ 11 Deklarasi varia"le "ertipe dou"le int arrayS=TS:T@ 11 Deklarasi array "ertipe integer C"nt"h 4
0utputnya 4
;(%() DEKLARASI KONSTANTA a. Menggunakan key."rd c"nst C"nt"h 4 c"nst <l"at PK A +.1:1=2 >=@ Berbeda dengan 6ariable, k"nstanta berna&a tidak dapat diubah #ika telah diinisialisasi b. Menggunakan Cde<ine C"nt"h 4 Cde<ine PK +.1:1=2 >= Keuntungan &enggunakan Cde<ine apabila dibandingkan dengan .onst adalah kecepatan k"&pilasi, karena sebelu& k"&pilasi dilaksanakan, k"&piler perta&a kali &encari sy&b"l Cde<ine /"leh sebab itu &engapa C dikatakan prep"cess"r directi6e2 dan &engganti se&ua Phi dengan nilai +.1:1=2 >=.
1:
C"nt"h 4
;(; TIPE DATA (ipe data dapat dikel"&p"kkan &en#adi atas dua &aca& 4 1. (ipe Dasar. 2. (ipe Bentukkan. ;(;() TIPE DASAR 'dalah tipe yang dapat langsung dipakai. T!,e Dasar Char Knt %"ng 8l"at D"uble l"ng d"uble UF0ran Memor! KangFa0an N!/a! 5CJte6 1 2 : : * 1B 312* hingga +12! 3+2!>* hingga ++2!>! 32.1:!.:+*.>:* hingga 2.1:!.:+*.>:! +,:U3+* hingga +,:U+* 1.!U3+B* hingga 1.!U+B* +.:U3: +2 hingga 1.1U: +2 >3! 1=31> 1 K0m/ah D!g!t Pres!s! 3 3 3
1=
(ipe data yang berhubungan dengan bilangan bulat adalah char, int, l"ng. $edangkan lainnya berhubungan dengan bilangan pecahan. ;(;()() KARAKTER * STRING LITERAL $tring adalah gabungan dari karakter C"nt"h 4 $tring , Bela#ar , -) %iteral ,B, Pan#ang $tring strlen/2 -) na&a <ungsi untuk &enghitung pan#ang string 8ungsi strlen/2 dideklarasikan dala& <ile string.h. ;adi bila anda ingin &enggunakan <ungsi strlen/2, &aka prep"cess"r directi6e di&asukkan dala& pr"gra& diatas &ain/2. C"nt"h4 CincludeEstring.h9 harus -) Karakter
0utputnya4
Perhat ikan, bah.a disetiap akhir baris pernyataan diakhiri dengan tanda titik V k"&a /se&ic"l"n2 , @ ,. Perhatikan, bah.a 4 W Xn W dihitung satu karakter. Xn disebut ne.line karakter Undl #uga &erupakan ne.line karakter / sa&a kegunaannya seperti Xn 2. Dala& C++, selain Xn terdapat #uga beberapa karakter khusus yang biasa disebut escape se(uence characters, yaitu
1>
Keterangan Karakteeer ber3'$CKK n"l / karakter null 2 Karakter bell Karakter backspace Karakter ganti hala&an / <"r&<eed 2 Karakter baris baru / ne.line 2 Karakter carriage return / ke a.al baris 2 Karakter tab h"riY"ntal Karakter tab 6ertika Karakter X Karakter W Karakter , Karakter O Karakter yang nilai "ktalnya adalah """ / + digit "ctal 2 Karakter yang nilai heksadesi&alnya adalah hh /2 digit heksadesi&al 2
;(;()(% KE8"ORD * IDENTI9IER Dala& bahasa pe&r"gra&an, suatu pr"gra& dibuat dari ele&en3ele&en sintaks indi6idual yang disebut t"ken, yang &e&uat na&a 6ariable, k"nstanta, key."rd, "perat"r dan tanda baca. C"nt"h 4
0utput 4 Pr"gra& diatas &e&perlihatkan 1= t"ken, yaitu &ain, /, 2, ?, int, n, A, >>, @, c"ut, EE, endl, return, B dan D ("ken n adalah suatu 6ariable ("ken >>,B adalah suatu k"nstanta ("ken int, return dan endl adalah suatu key."rd ("ken A dan EE adalah "perat"r ("ken/, 2, ?, @, dan D adalah tanda baca Baris perta&a berisi suatu prep"cess"r directi6e yang bukan bagian sebenarnya dari pr"gra&
1!
+ Pen#u&lahan / 'dd 2 &+n 3 Pengurangan / $ubstract 2 &Vn I Perkalian / Multiply 2 &In 1 Pe&bagian / Di6ide 2 &1n P $isa Pe&bagian Knteger / M"dulus 2 &Pn 3 -egasi / -egate 2 3& -B 4 0perat"r seperti "perat"r negasi /32 disebut unary "perat"r, karena &e&butuhkan hanya satu buah "perand. 0perat"r P /&"dulus2 digunakan untuk &encari sisa pe&bagian antara dua bilangan. Misalnya 4 P 2 A 1, P+AB C"nt"h 4
1*
0utput 4
Karena tipe datanya adalah int, &aka *212>A+, supaya dapat &erepresentasikan nilai yang sebenarnya, gunakan tipe data <l"at. Cara lain penulisan dengan &enggunakan "perat"r arit&atika 4 &A&+n &A&3n &A&In &A&1n &A&Pn & +A n & 3A n & IA n & 1A n & PA n
H()(; OPERATOR $UBUNGAN 5PERBANDINGAN6 0perat"r Lubungan digunakan untuk &e&bandingkan hubungan antara dua buah "perand /sebuah nilai atau 6ariable2. 0perat"r hubungan dala& bahasa C++ O,erator AA QA 9 E 9A EA Art! $a&a dengan /bukan assign&ent 2 (idak sa&a dengan %ebih besar %ebih kecil %ebih besar atau sa&a dengan %ebih kecil atau sa&a dengan RA Ay R QA y R9y REy R 9A y R EA y Contoh 'pakah R sa&a dengan y 'pakah R tidak sa&a dengan y 'pakah R lebih besar dari y 'pakah R lebih kecil dari y 'pakah R lebih dari sa&a dengan y 'pakah R kurang dari sa&a dengan y
C"nt"h4
0utputnya 4
H()(H OPERATOR NAIK DAN TURUN 5 INCREMENT DAN DECREMENT 6 0perat"r incre&ent -) + + 0perat"r decre&ent -) 33 C"nt"h 4
0utputnya 4
(erlihat bah.a "perat"r pre3incre&ent dan p"st3incre&ent &e&iliki akibat yang sa&a, yaitu &ana&bah nilai satu pada & dan &e&asukkan nilai tersebut ke&bali ke & /&A&+12. Lal yang sa&a #uga ter#adi pada "perat"r pre3decre&ent dan p"st3decre&ent yang &e&berikan akibat yang sa&a, yaitu &engurangi nilai satu dari n / n A n 3 12.
2B
(etapi bila digunakan sebagai sub3ekspresi, "perat"r p"st3incre&ent dan pre3 incre&ent &enun#ukkan hasil yang berbeda C"nt"h 4
0utputnya 4
Pen#elasan 4 Dala& penugasan yang perta&a, & adalah pre3incre&ent, &enaikkan nilainya &en#adi >!, yang selan#utnya di&asukkan ke n. Dala& penugasan kedua, & adalah p"st3incre&ent, sehingga >! di&asukkan dahulu ke n baru ke&udian nilai &3nya dinaikkan, itu sebabnya &engapa nilai & A >* dan n A >!. Dala& penugasan ketiga, & adalah p"st3incre&ent, sehingga nilai & / A >* 2 dita&pilkan dahulu / ke layar 2 baru ke&udian nilai & dinaikkan &en#adi > . Dala& penugasan kee&pat, & adalah pre3incre&ent, sehingga nilai & dinaikkan dahulu &en#adi !B baru ke&udian dita&pilkan ke layar. $upaya lebih paha&, perhatikan pula c"nt"h diba.ah. C"nt"h 4
21
Pen#elasan 4 Dala& penugasan untuk n, perta&a kali & dinaikkan /++&2 &en#adi >, ke&udian & diturunkan ke&bali &en#adi =, karena adanya 33&. $ehingga nilai & sekarang adalah = dan nilai & A = inilah yang die6aluasi pada saat penugasanperkalian dilakukan. Pada baris terakhir, ketiga sub3ekspresi die6aluasi dari kanan ke kiri. H()(I OPERATOR BIT"ISE 0perat"r EE 99 ) [ \ ^ char Berikut ini diberikan tabel kebenaran untuk "perat"r l"gika P A ' "perat"r B '-D ' B B 1 1 ]0R ' B B 1 1 B B 1 B 1 P B 1 1 B B B 1 B 1 P B B B 1 0R ' B B 1 1 B B 1 B 1 P B 1 1 1 Deskripsi 5eser n bit ke kiri / le<t shi<t 2 5eser n bit ke kanan / right shi<t 2 Bit.ise '-D Bit.ise 0R Bit.ise ]0R Bit.ise -0( C"nt"h & EE n & 99 n &)n &[n &\n ^&
-B 4 $eluruh "perat"r bit.ise hanya bisa dikenakan pada "perand bertipe data int atau
22
C"nt"h 4
0utput 4
Pen#elasan 4 -ilai keluaran diatas, tergantung dari #enis c"&piler yang digunakan. Lasil diatas &erupakan keluaran dari c"&piler (urb" C++. Pada (urb" C++ besar dari integer adalah 2 byte atau sa&a dengan 1> bit, untuk &engetahuinya digunakan perintah c"utEEsiYe"</int2EEendl@ 11 7ntuk &engetahui besar dari int Maka 4 *21B A BBBBBBBBB1B1BB1B2 dan 2>1B A BBBBBBBBBBB11B1B2 $ehingga 4 *2 EE 2 -) BBBBBBB1B1BB1BBB2 A +2*1B *2 99 2 -) BBBBBBBBBBB1B1BB2 A 2B1B *2 ) 2> -) BBBBBBBBB1B1BB1B2 BBBBBBBBBBB11B1B2
333333333333333333333333333333333333333333 )
BBBBBBBBBBB1BB1B2 A 1*1B dan begitu #uga untuk "perasi 0R dan ]0R. ^*2 -) digunakan 2Zs c"&ple&ent, yaitu
2+
*21B A BBBBBBBBB1B1BB1B2 lalu dinegasikan tiap bitnya &en#adi 111111111B1B11B12 ke&udian %$B dita&bah 1 &en#adi 111111111B1B111B A >=:=:1B nilai ini &elebihi #angkauan &aksi&u& int yang berkisar di 3+2!>* sa&pai +2!>!, sehingga nilai yang keluar yaitu *+. Cara lain penulisan dengan &enggunakan "perat"r bit.ise 4 & A & EE n & A & 99 n &A&)n &A&[n &A&\n :z :z :z :z :z & EEA n & 99A n & )A n & [A n & \A n
;()(L OPERATOR LOGIKA 0perat"r l"gika digunakan untuk &enghubungkan dua atau lebih ungkapan &en#adi sebuah ungkapan berk"ndisi. 0perat"r )) [[ Q C"nt"h 4 Deskripsi l"gic '-D l"gic 0R l"gic -0( C"nt"h & )) n & [[n Q&
0utputnya 4
Pen#elasan 4 Lasil keluaran dari "perat"r l"gika adalah B dan 1. B #ika keluarannya salah dan 1 #ika keluarannya benar.
2:
;()< OPERATOR KONDISI 0perat"r k"ndisi digunakan untuk &e&per"leh nilai dari dua ke&ungkinan ungkapan* O ungkapan+ 4 ungkapan, Bila nilai ungkapan* benar, &aka nilainya sa&a dengan ungkapan+, bila tidak &aka nilainya sa&a dengan ungkapan, C"nt"h 4
0utputnya 4
;(% STATEMEN IBO Pada C++ terdapat 2 #enis K10 dasar, yaitu4 a. $tate&en Knput adalah $tate&en 1 <ungsi yang digunakan untuk &e&baca data dari inputing de6ice /keyb"ard1&"use2, c"nt"h 4 c"ut /character "ut2 b. $tate&en 0utput adalah $tate&en yang digunakan untuk &enuliskan data ke layar &"nit"r, c"nt"h 4 cin /character in2 C"nt"h 14
2=
C"nt"h 24
0utputnya 4
C"nt"h +4
0utput 4
2>
I#( PEMILI$AN
$uatu $truktur dasar alg"rit&a yang &e&iliki satu atau lebih k"ndisi
tertentu di&ana sebuah instruksi dilaksanakan #ika sebuah k"ndisi1persyaratan terpenuhi. 'da beberapa bentuk struktur dasar pe&ilihan ini 4 H() PERN8ATAAN i! $ebuah pernyataan 3 3 !f sa#a dan e/se yang dapat dipakai &untuk &enga&bil keputusan berdasarkan suatu k"ndisi. Bentuk pernyataan ini ada dua &aca& 4
Bent0F Um0mnJa Sat0 Kas0s: !f /k"ndisi2 pernyataan @ Pernyataan dilaksanakan #ika dan hanya #ika k"ndisi yang diinginkan terpenuhi, #ika tidak pr"gra& tidak &e&berikan hasil apa3apa. C"nt"h 4
0utputnya 4
2!
Pen#elesan 4 (a&pak bah.a kalau usia yang di&asukkan lebih dari atau sa&a dengan 1!, pr"gra& tidak &enghasilkan apa3apa. Bent0F Um0mnJa D0a Kas0s : !f /k"ndisi2 pernyataan1 @ e/se pernyataan2@ Pernyataan1 dilaksanakan #ika dan hanya #ika k"ndisi yang diinginkan terpenuhi, #ika tidak, lakukan pernyataan2. ;ika 'nda tidak &e&pergunakan pernyataan else pr"gra& tidak akan err"r, na&un #ika anda &e&pergunakan pernyataan else tanpa didahului pernyataan i', &aka pr"gra& akan err"r. ;ika pernyataan1 atau pernyataan2 hanya terdiri dari satu baris, &aka tanda ? D tidak diperlukan, na&un #ika lebih &aka diperlukan. Bent0F Um0mnJa BanJaF Kas0s :
2*
C"nt"h 14
C"nt"h 24
0utputnya 4
Pen#elesan 4 (erlihat bah.a kalau usia yang di&asukkan lebih dari 1!, pr"gra& akan &e&beri pesan $ela&at Men"nt"n. $elain dari !f _ e/se, #uga dikenal bentuk !f _ e/se !f( 'dapun perbedaannya diilustrasikan "leh dua c"nt"h diba.ah ini.
C"nt"h + 4
0utputnya4
Mengapa O Karena c"nt"h 2 sa&a sa#a #ika ditulis seperti diba.ah ini C"nt"h : 4
H(% PERN8ATAAN "#itc$ Pernyataan s !.h adalah pernyataan yang digunakan untuk &en#alankan salah satu pernyataan dari beberapa ke&ungkinan pernyataan, berdasarkan nilai dari sebuah ungkapan dan nilai penyeleksian. Pernyataan !f_e/se !f #a&ak dapat dibangun dengan pernyataan s !t.hBent0F Um0mnJa : s !t.h /ekspresi2 ? .ase k"nstanta1 4 pernyataan1 @ CreaF @ .ase k"nstanta2 4 pernyataan2 @ CreaF @ .ase k"nstanta+ 4 pernyataan+ @ CreaF @ 4 4 .ase k"nstanta- 4 pernyataan- @ CreaF @ 1efa0/t 4 pernyataanlain@ D Lal V hal yang perlu diperhatikan adalah 4 1. Dibelakang key."rd case harus diikuti "leh sebuah k"nstanta, tidak b"leh diikuti "leh ekspresi ataupun 6ariable. 2. K"nstanta yang digunakan bertipe int atau char +. ;ika bentuknya seperti diatas &aka apabila ekspresi sesuai dengan k"nstanta2 &aka pernyataan2, pernyataan+ sa&pai dengan pernyataanlain dieksekusi. 7ntuk &encegah hal tersebut, gunakan key."rd CreaF4- ;ika key."rd CreaF digunakan &aka setelah pernyataan2 dieksekusi pr"gra& langsung keluar dari pernyataan s !t.h- $elain digunakan dala& s !t.h# key."rd "reak banyak digunakan untuk keluar dari pernyataan yang berulang / l""ping 2.
.- pernyataanlain dieksekusi #ika k"nstanta1 sa&pai k"nstanta- tidak ada yang &e&enuhi ekspresiC"nt"h 4
0utput 4
#( PENGULANGAN
$ebuah 1 kel"&p"k instruksi diulang untuk #u&lah pengulangan tertentu. Baik yang terdi<inisikan sebelu&nya ataupun tidak. $truktur pengulangan terdiri atas dua bagian 4 1. K"ndisi pengulangan yaitu ekspresi b""lean yang harus dipenuhi untuk &elaksanakan pengulangan 2. Ksi atau badan pengulangan yaitu satu atau lebih pernyataan /aksi2 yang akan diulang. Perintah atau n"tasi dala& struktur pengulangan adalah 4 1. Pernyataan h!/e 2. Pernyataan 1o(( h!/e +. Pernyataan for
I() PERN8ATAAN #$ile Pernyataan h!/e &erupakan salah satu pernyataan yang berguna untuk &e&pr"ses suatu pernyataan atau beberapa pernyataan beberapa kali. Pernyataan h!/e &e&ungkinkan state&en3state&en yang ada didala&nya tidak diakukan sa&a sekali. Bent0F Um0mnJa : h!/e /k"ndisi2 ? Pernyataan @ D
C"nt"h4
0utput 4
Pen#elasan 4 Pr"gra& diatas digunakan untuk &engulangan tulisan sebanyak 1B kali I(% PERN8ATAAN %o&#$ile Pernyataan 1o_ h!/e &irip seperti pernyataan h!/e, hanya sa#a pada 1o_ h!/e pernyataan yang terdapat didala&nya &ini&al akan sekali dieksekusi. Bent0F Um0mnJa : 1o ? pernyatan @ D h!/e/k"ndisi2@
C"nt"h 4
I(; PERN8ATAAN !or Pernyataan for digunakan untuk &enghasilkan pengulangan/l""ping2 beberapa kali tanpa penggunaan k"ndisi apapun. Pada u&u&nya l""ping yang dilakukan "leh <"r telah diketahui batas a.al, syarat l""ping dan perubahannya. Pernyataan <"r digunakan untuk &elakukan l""ping. Pada u&u&nya l""ping yang dilakukan "leh <"r telah diketahui batas a.al, syarat l""ping dan perubahannya. $ela&a kondisi terpenuhi, &aka pernyataan akan terus dieksekusi. Bent0F Um0mnJa : for /inisialisasi @ k"ndisi @ perubahan2 ? /tatement0 D
C"nt"h4
Pr"gra& diatas akan &ena&pilkan bilangan yang banyaknya tak terhingga sehingga dapat &e&buat k"&puter anda berhenti beker#a. C"nt"h diatas #uga &erupakan prinsip &e&buat b"& pr"gra& / c"nt"hnya 4 b"& &ail 2 Pernyataan 'or dapat berada di dala& pernyataan 'or lainnya yang biasa disebut nested 'or
C"nt"h 4
TUGAS 1. Buatlah pr"gra& untuk &encari apakah bilangan tersebut gan#il atau genap, di&ana bilangan &erupakan piranti &asukkan 2. Buatlah pr"gra& untuk &enseleksi suatu bilangan dengan ketentuan sebagai berikut 4 BEAnilai E+B +BEAnilai E >B >BEAnilaiEA1BB 4 -ilai rendah 4 -ilai sedang 4 -ilai tinggi
+. Buatlah pr"gra& dala& bentuk &enu yang &a&pu &enghitung 4 a. %uas dan Keliling Bu#ur sangkar b. %uas dan Keliling persegi pan#ang c. %uas dan keliling lingkaran :. =. Buatlah pr"gra& untuk &encetak deret 1B IIII III II *!>=:+21