Oleh :
Parito (1304405047)
A!ORATORIUM KOMPUTER
"URUSAN TEKNIK EEKTRO
#AKUTAS TEKNIK UNI$ERSITAS U%A&ANA
'014
KATA PENGANTAR
Puji syukur saya panjatkan kehadapan Tuhan Yang Maha Esa, karena
berkat rahmat-Nyalah saya dapat menyelesaikan laporan resmi Praktikum Konsep
Pemrograman Komputer tepat pada waktunya. dapun tujuan dari penulisan
laporan ini adalah untuk memenuhi tugas mata kuliah Praktikum Konsep
Pemrograman Komputer pada program studi Teknik Elektro !akultas Teknik
"ni#ersitas "dayana. $isamping itu juga untuk memberikan in!ormasi kepada
para pemba%a mengenai salah satu &ahasa pemrograman komputer yakni, &ahasa
'.
(aya mengakui bahwa laporan ini jauh dari sempurna mengingat
terbatasnya kemampuan serta sulitnya men%ari buku ) buku yang dipakai sebagai
a%uan atau re!erensi. "ntuk itu saya sangat mengharapkan kritik dan saran dari
pemba%a demi sempurnanya laporan ini. khir kata saya berharap semoga laporan
ini dapat berguna bagi pemba%a dan dapat memenuhi !ungsinya.
&ukit *imbaran, +, juni +,-.
Penulis
ii
%A#TAR ISI
Kata Pengantar...........................................................................................................
....................................................................................................................................
ii.................................................................................................................................
$a!tar /si....................................................................................................................
....................................................................................................................................
iii................................................................................................................................
$a!tar 0ambar...........................................................................................................
....................................................................................................................................
#..................................................................................................................................
$a!tar Tabel................................................................................................................
....................................................................................................................................
#i................................................................................................................................
$a!tar Kode Program.................................................................................................
....................................................................................................................................
#ii
&ab / Pendahuluan ....................................................................................................
....................................................................................................................................
-
-.- 1atar &elakang ........................................................................................
-
-.+ 2umusan Masalah ...................................................................................
3
-.3 Tujuan......................................................................................................
3
-..Man!aat ....................................................................................................
.
&ab // Tinjauan Pustaka ............................................................................................
4
&ab /// Modul - $asar dasar &ahasa ' ...................................................................
5
iii
3.- Tujuan .....................................................................................................
5
3.+ Tinjauan Pustaka .....................................................................................
5
3.3 Pembahasan dan nalisa .........................................................................
+6
3.. 1ampiran 7orm 1aporan (ementara .......................................................
35
&ab /8 Modul + Perulangan dan (eleksi Kondisi ...................................................
.,
..- Tujuan .....................................................................................................
.-
..+ Tinjauan Pustaka .....................................................................................
.-
..3 Pembahasan dan nalisa .........................................................................
..
... 1ampiran 7orm 1aporan (ementara .......................................................
44
&ab 8 Modul 3 1arik 9rray: .................................................................................
46
4.- Tujuan .....................................................................................................
46
4.+ Tinjauan Pustaka .....................................................................................
46
4.3 Pembahasan dan nalisa .........................................................................
4;
4.. 1ampiran 7orm 1aporan (ementara .......................................................
6;
&ab 8/ Modul . Proje%t ...........................................................................................
65
i#
6.- Tujuan .....................................................................................................
65
6.+ Tinjauan Pustaka .....................................................................................
65
6.3 Pembahasan dan nalisa .........................................................................
<-
6.. 1ampiran 7orm 1aporan (ementara .......................................................
;,
&ab 8// Penutup ...........................................................................................
;-
<.- Kesimpulan .............................................................................................
;-
<.+ (aran........................................................................................................
;-
$a!tar Pustaka ...........................................................................................................
;+
#
%A#TAR GAM!AR
0ambar 3.- Flowchart Program Menampilkan Nama dan Nim................................
+<
0ambar 3.+ Program Menampilkan Nama dan Nim.................................................
+;
0ambar 3.3 Flowchart Program 1uas dan 8olume Kubus.......................................
3,
0ambar 3.. Program 1uas dan 8olume Kubus.........................................................
3-
0ambar 3.4 Flowchart Program 1uas dan 8olume 1imas (egiempat......................
33
0ambar 3.6 Program 1uas dan 8olume 1imas (egiempat........................................
3.
0ambar 3.< Flowchart Program 1uas dan 8olume Keru%ut.....................................
36
0ambar 3.; Program 1uas dan 8olume Keru%ut.......................................................
3<
0ambar ..- Flowchart Program Kon#ersi (atuan Memory......................................
.;
0ambar ..+ Program Kon#ersi (atuan Memory........................................................
4,
#i
0ambar ..3 Flowchart Program "ntuk Menampilkan Tangga &ilangan 0anjil.......
4+
0ambar ... Program "ntuk Menampilkan Tangga &ilangan 0anjil ........................
43
0ambar 4.- Flowchart Program "ntuk Men%ari $ata pada rray /nputan .............
6,
0ambar 4.+ Progam Men%ari (ebuah $ata pada rray /nputan................................
6+
0ambar 4.3 Flowchart Program "ntuk Mengurutkan ngka rray s%ending.......
6.
0ambar 4.. Program Mengurutkan ngka &erdasarkan *umlah rray /nputan.......
66
0ambar 6.- Flowchart Program Kalkulator (ederhana ...........................................
<4
0ambar 6.+ Program Kalkulator sederhana...............................................................
<5
%A#TAR TA!E
#ii
Tabel 3.- Tabel Tipe $ata $asar &ahasa ' ...............................................................
--
Tabel 3.+ Tabel =perasi >ubungan ...........................................................................
-6
Tabel 3.3 Tabel operasi "nary ..................................................................................
-;
Tabel 6.- =perasi ritmatika ....................................................................................
<,
#iii
%A#TAR KO%E PROGRAM
'oding 3.- Program Menampilkan Nama dan Nim .................................................
+;
'oding 3.+ Program Penghitung 1uas dan 8olume Kubus ......................................
3-
'oding 3.3 Program Penghitung 1uas dan 8olume 1imas (egiempat .....................
3.
'oding 3.. Program Penghitung 1uas dan 8olume Keru%ut ....................................
3<
'oding ..- Program Kon#ersi satuan Memory ........................................................
.;
'oding ..+ Program untuk Menampilkan Tangga &ilangan 0anjil...........................
43
'oding 4.- Program Men%ari (ebuah $ata rray pada rray /nputan.....................
6-
'oding 4.+ Program Mengurutkan ngka &erdasarkan *umlah rray /nputan........
64
'oding 6.- Program Kalkulator (ederhana...............................................................
<6
i?
!A! I
PEN%A(UUAN
1)1) atar !ela*a+,
&ahasa pemrograman adalah suatu perangkat lunak dan bahasa yang
digunakan untuk membuat program-program komputer atau sering disebut
sebagai bahasa komputer. &ahasa pemrograman menggunakan sistem tata
bahasa tertentu atau kata-kata unik untuk dijadikan kode yang bisa
menjalankan perintah tertentu pada komputer. &ahasa pemrograman inilah
yang membentuk struktur perangkat lunak sebagai inti dari komputer untuk
menjalankan perangkat keras. Tanpa perangkat lunak yang dibuat
menggunakan bahasa pemrograman, maka perangkat keras tidak akan berjalan
dengan baik atau bahkan tidak dapat berjalan sama sekali.
&ahasa pemrograman dibagi menjadi tiga, yakni bahasa mesin, bahasa
pemrograman tingkat rendah dan bahasa pemrograman tingkat tinggi. &ahasa
mesin hanya dipakai untuk membuat sistem inti perangkat komputer seperti
yang tertanam pada &/=(, %hip-%hip tertentu dan lain sebagainya. &ahasa ini
hanya terdiri dari , dan - saja yang disebut sebagai byte. 1alu ada bahasa
pemrograman tingkat rendah yakni bahasa assembly yang digunakan untuk
berkomunikasi dengan hardware, membantu komputer mengingat memori dan
terdapatnya alamat simbolis yang berhubungan dengan bahasa mesin.
(edangkan bahasa pemrograman tingkat tinggi adalah bahasa pemrogaman
yang memiliki baris perintah yang mendekati bahasa manusia sehingga lebih
mudah digunakan.
$engan hadirnya bahasa ' pada -5<,-an yang merupakan hasil
pengembangan oleh $ennis 2i%thie sepertinya telah menghilang rasa takut
para pemula terhadap pemrograman. Karena bahasa pemrograman '@@ ini
termasuk dalam kategori bahasa pemrograman yang mudah dipahami dan
mudah untuk di mengerti oleh para pemula. (inta?-sinta? dalam @@ sudah
mendekati dengan bahasa dalam kehidupan sehari-hari. >ingga saat ini
penggunaan bahasa ' telah merata di seluruh dunia. >ampir semua perguruan
tinggi di dunia menjadikan bahasa ' sebagai salah satu mata kuliah wajib.
(elain itu, banyak bahasa pemrograman populer seperti P>P dan *a#a
menggunakan sintaks dasar yang mirip bahasa '.
1)') R-.-/a+ Ma/alah
-. pa itu &ahasa pemrograma ' A
+. pa saja dasar-dasar dari pemrograman &ahasa ' A
3. &agaimana %ara penulisan program &ahasa ' yang baik dan benar A
.. &agaimana %ara membuat program dengan menampilkan nama B nim
dan program menghitung luas dan #olume dari kubus,segiempat dan
keru%ut A
4. &agaimana %ara membuat program kon#ersi satuan memory 9byte,
gyga byte, kilo byte dan mega byte: dan program dengan menampilkan
bintang berurut, tangga bilangan dan tangga bilangan prima A
6. &agaimana %ara membuat program yang mampu men%ari sebuah data
pada array inputan dan program mengurutkan angka berdasarkan
jumlah array yang dimasukkan A
<. &agaimana %ara membuat program baru dengan mengaplikasikan
semua penggunaan !ungsi-!ungsi dalam &ahasa ' A
1)3) T-0-a+ Pe+-li/a+
Penulis menyusun laporan ini bertujuan untuk memenuhi tugas praktikum
Pemrograman Komputer. (elain tujuan utama tadi penulisan laporan ini juga
bertujuan untuk penulis dan mahasiswa khususnya mahasiswa Teknik Elektro
"ni#ersitas "dayana dapat lebih memahami mengenai apa itu &ahasa
pemrograman ', penggunaan dasar dari &ahasa ', %ara penulisan &ahasa
pemrograman ' yang baik dan benar, %ara melakukan proses input dan output
yang baik sehingga menghasilkan sebuah program yang bagus, dan mampu
membuat pogram baru dengan mengaplikasikan semua penggunaan !ungsi-!ungsi
dalam &ahasa ' . >arapan penulis dari disusunnya laporan ini adalah semoga
pemba%a dapat mengambil ilmu yang berman!aat dari isi laporan ini, dan supaya
menjadi bekal pembelajaran kita untuk ke depannya.
1)4) Ma+1aat Pe+-li/a+
-...-. "mum
$engan adanya Tulisan ini diharapkan, baik penulis maupun pemba%a
dapat lebih memahami tentang &ahasa pemrograman komputer ', penggunaan
dasar-dasar dari &ahasa ', 'ara penulisan &ahasa pemrograman ' yang baik dan
benar, dan Mampu melakukan proses input dan output yang baik agar
menghasilkan sebuah program yang bagus.
-...+. Khusus
$apat memenuhi tugas membuat 1aporan akhir dari Mata kuliah
Praktikum Konsep Pemrograman Komputer.
!A! II
TIN"AUAN PUSTAKA
')1) Se0arah !aha/a 2
Tahun -5<;, &rian C. Kerninghan B $ennis M. 2it%hie dari T B T
1aboratories mengembangkan bahasa & menjadi bahasa '. &ahasa & yang
di%iptakan oleh Ken Thompson sebenarnya merupakan pengembangan dari
bahasa &'P1 9 &asi% 'ombined Programming 1anguage : yang di%iptakan oleh
Martin 2i%hard. (ejak tahun -5;,, bahasa ' banyak digunakan pemrogram di
Eropa yang sebelumnya menggunakan bahasa & dan &'P1. $alam
perkembangannya, bahasa ' menjadi bahasa paling populer diantara bahasa
lainnya, seperti P('1, &(/', 7=2T2N.
Tahun -5;5, dunia pemrograman ' mengalami peristiwa penting dengan
dikeluarkannya standar bahasa ' oleh meri%an National (tandards /nstitute
9N(/:. &ahasa ' yang di%iptakan Kerninghan B 2it%hie kemudian dikenal
dengan nama N(/ '. Mulai awal tahun -5;,, &jarne (troustrup dari T B T &ell
1aboratories mulai mengembangkan bahasa '. Pada tahun -5;4, lahirlah se%ara
resmi bahasa baru hasil pengembangan ' yang dikenal dengan nama '@@.
(ymbol @@ merupakan operator ' untuk operasi penaikan, mun%ul untuk
menunjukkan bahwa bahasa baru ini merupakan #ersi yang lebih %anggih dari '.
(ebenarnya bahasa '@@ mengalami dua tahap e#olusi. '@@ yang pertama, dirilis
oleh TBT 1aboratories, dinamakan %!ront. '@@ #ersi kuno ini hanya berupa
kompiler yang menterjemahkan '@@ menjadi bahasa '. &orland /nternational
merilis %ompiler &orland '@@ dan Turbo '@@.
Kedua %ompiler ini sama-sama dapat digunakan untuk mengkompilasi
kode
'@@. &edanya, &orland '@@ selain dapat digunakan dibawah lingkungan
$=(, juga dapat digunakan untuk pemrograman Cindows.
Pada e#olusi selanjutnya, &orland /nternational /n%. mengembangkan kompiler
'@@ menjadi sebuah kompiler yang mampu mengubah '@@ langsung menjadi
bahasa mesin 9assembly:. (ejak e#olusi ini, mulai tahun -55, '@@ menjadi
bahasa berorientasi obyek yang digunakan oleh sebagian besar pemrogram
pro!essional.
')') Kera+,*a Pro,ra. !aha/a 2
(etiap program yang ditulis dalam bahasa ' pasti akan memiliki sebuah
!ungsi utama dengan nama main ( ). (elanjutnya jika ingin mende!inisikan !ungsi-
!ungsi lain maka harus dilakukan di luar !ungsi utama tersebut. $alam ', kode
yang diba%a adalah kode-kode yang terdapat di!ungsi utama. *ika ternyata terdapat
pemanggilan !ungsi lain, maka program akan men%ari nama !ungsi tersebut untuk
dieksekusi. (etelah mengeksekusi !ungsi tersebut, maka program akan kembali ke
dalam !ungsi utama, begitu seterusnya
')3) Al,orit.a
lgoritma se%ara sederhana merupakan urutan langkah-langkah logis
untuk menyelesaikan masalah yang disusun se%ara sistematis. Misalkan saja
Dalgoritma akti!itas pagi hari ini sebelum berangkat kerjaE yaitu 9-: turun dari
tempat tidur, 9+: melepas piiama, 93: mandi, 9.: berpakaian, 94: makan pagi, 96:
pergi kerja.
')4) P/e-3o4o3e
Pseudocode merupakan deskripsi tingkat tinggi in!ormal dan ringkas atas
suatu algoritma yang menggunakan suatu tata bahasa yang menyerupai bahasa
pemrograman, tetapi untuk diba%a oleh manusia. Pseudocode mempermudah
pemahaman atas suatu algoritma dan mempermudah implementasi dalam bentuk
kode programnya. Notasi pseudocode adalah yang paling umum di gunakan
dalam penulisan algoritma karena pengkon#ersian ke bahasa pemograman relati!
mudah. Notasi pseudocode terdiri dariF
a. Head 9judul: F memberikan nama pada algoritma. "mumnya nama sudah
dapat memberi gambaran prosedur penyelesaian masalah atau masalah
yang akan diselesaikan.
b. $eklarasi F menyatakan jenis dari setiap elemen data 9#ariabel: yang akan
digunakan dalam algoritma.
%. $eskripsi F merupakan inti prosedur penyelesaian masalah yang meliputi
pernyataan atau operasi, !ungsi, penjelasan, dan lain ) lain.
')5) #lo54hart
7low%hart adalah representasi gra!ik dari langkah-langkah yang harus
diikuti dalam menyelesaikan suatu permasalahan yang terdiri atas sekumpulan
simbol, dimana masing-masing simbol merepresentasikan suatu kegiatan tertentu.
7low%hart diawali dengan penerimaan input, pemrosesan input, dan diakhiri
dengan penampilan output.
Ta6el ')1 Notasi 7low%hart
Terminator Permulaan atau akhir program
0aris alir 9!low line: rah aliran program
Preparation Proses pemberian harga awal
Proses Proses perhitnunganGpengolahan data
/nputGoutput data Proses inputGoutput data
(ub program (ub program
$e%ision Pemilihan kondisi
=n page %onne%tor Penghubung
=!! page %onne%tor Penghubung beda halaman
')7) Ti8e %ata %a/ar
(elain !ungsi utama, pada setiap program kita tidak akan terlepas dari
penggunaan tipe data. $alam '@@ terdapat beberapa tipe data dasar yang telah
dide!inisikan, yaitu yang digolongkan ke dalam tipe bilangan bulat 9integer:,
bilangan riil 9floating-point:, tipe logika 9Boolean:, tipe karakterGteks
9character/string:. Tipe data tersebut digunakan untuk mengklasi!ikasikan
in!ormasi atau data berdasarkan jangkauan nilai dan memori yang dibutuhkan
program.
')7) $aria6el
8ariabel adalah suatu nama yang menyatakan tempat dalam memori
komputer yang digunakan untuk menyimpan suatu nilai dan nilainya dapat diubah
sewaktu-waktu ketika program sedang dieksekusi. (ebelum dapat menggunakan
suatu #ariabel dalam program, #ariabel harus dideklarasikan terlebih dahulu.
$alam &ahasa '@@ terdapat + jenis #ariable yaitu #ariable lokal dan #ariable
global.
a. 8ariabel lokal adalah #ariabel yang hanya dikenali oleh suatu !ungsi saja,
artinya tidak dikenali oleh lingkungan luar di dalam program yang dibuat.
dapun bentuk pendeklarasian #ariabel yang bersi!at lokal ini harus
berada dalam lingkup !ungsi yang dimaksud. Nilai data yang terdapat
didalamnya hanya hidup ketika bagian program tersebut dijalankan.
b. 8ariabel 0lobal merupakan sebuah #ariabel yang dideklarasikan diluar
!ungsi utama atau main9:.
')9) Per4a6a+,a+
$alam bahasa ' salah satu statemen yang sering digunakan adalah
statemen per%abangan. Per%abangan yang dimaksud disini tidak lain adalah suatu
pemilihan statemen yang akan dieksekusi dimana pemilihan tersebut didasarkan
atas kondisi tertentu. (tatemen dalam sebuah blok per%abangan akan dieksekusi
hanya jika kondisi yang dide!inisikan terpenuhi 9bernilai benar:. Terdapat tiga
jenis struktur yang digunakan untuk mengimplementasikan suatu per%abangan,
yaitu dengan menggunakan struktur if, ifelse, dan switch.
'):) Per-la+,a+
Perulangan adalah suatu proses yang melakukan statemen-statemen dalam
sebuah program se%ara terus menerus sampai terdapat kondisi untuk
menghentikannya. (truktur perulangan akan sangat membantu dalam e!esiensi
program. $alam '@@ terdapat tiga buah jenis struktur perulangan, yaitu struktur
for, while, dan do-while.
')10) Arra;
rray adalah sebuah #ariabel yang menyimpan sekumpulan data yang
memiliki tipe sama. (etiap data tersebut menempati lokasi atau alamat memori
yang berbeda-beda. (etiap nilai yang disimpan dalam array disebut dengan
element array, sedangkan nilai urut yang digunakan untuk mengakses array
disebut indeks array. Namun penting sekali untuk diperhatikan bahwa dalam '@@,
indeks array selalu dimulai dari , bukan -. Mende!inisikan tipe elemen array
berarti menetapkan tipe nilai yang dapat disimpan oleh array. Tipe elemen array
dapat berupa tipe sederhana 9integer, real, char, boolean, string:, tipe bentukan
9tipe terstruktur seperti record:, atau bahkan bertipe array lain.
')11) Pro4e3-re
Prosedur merupakan suatu bagian dari program yang dimaksudkan untuk
mengerjakan suatu tugas tertentu dan letaknya terpisah dari program yang
memanggilnya. Perbedaan antara !ungsi dan prosedur adalah, !ungsi juga
dideklarasikan seperti #ariabel, dan mengembalikan nilai !ungsi ke pemanggilnya.
(edangkan prosedur tidak dideklarasikan seperti #ariabel dan tidak
mengembalikan nilai tertentu, tapi dapat memberikan hasil yang ada di dalam
prosedur itu.
')1') Pa//i+, !; Re1ere+4e
Passing b reference adalah melewatkan parameter ke sebuah !ungsi
berdasarkan alamatnya. Melewatkan parameter dengan %ara ini akan
menyebabkan nilai yang terdapat di dalam !ungsi akan sama persis dengan nilai
yang terdapat pada program 9di luar !ungsi:.
')13) Pa//i+, !; $al-e
7ungsi ini akan melewatkan nilai parameter ke dalam sebuah !ungsi untuk
digunakan sesuai proses yang terdapat di dalam !ungsi tersebut. *ika kita
melewatkan parameter dengan %ara ini maka nilai yang dihasilkan oleh !ungsi
tidak akan mempengaruhi nilai yang terdapat pada program 9di luar !ungsi
tersebut:.
')14) Pe.6a+,*it !ila+,a+ A4a*
Terdapat dua !ungsi yang dibutuhkan untuk membangkitkan bilangan
a%ak, yaitu srand() dan rand(). $engan !ungsi sederhana ini, kita bisa membuat
bilangan random semu 9pseudo random !alue:. 7ungsi yang kita masukkan akan
mengolah nilai yang luar biasa besar menjadi angka lain yang lebih bersahabat.
Meski output bilangan random kita akan berbeda tiap detiknya, bilangan random
yang kita bangkitkan masih berupa bilangan random semu.
')15) Meto3e Pe+,-r-ta+ %ata
Pengurutan data atau sorting merupakan jenis operasi penting dalam
pengolahan data yang banyak diterapkan dalam permasalahan sehari-hari. "orting
merupakan proses pengurutan data yang sebelumnya disusun se%ara a%ak sehingga
menjadi tersusun se%ara teratur menurut suatu aturan tertentu. "ort dalam hal ini
diartikan mengurutkan data yang berada dalam suatu tempat penyimpanan,
dengan urutan tertentu baik urut menaik 9ascending: dari nilai terke%il sampai
dengan nilai terbesar, atau urut menurun 9descending: dari nilai terbesar sampai
dengan nilai terke%il.
')17) Meto3e Pe+4aria+ %ata
Pen%arian 9searching: merupakan tindakan untuk mendapatkan suatu data
dalam kumpulan data. "ntuk keperluan men%ari data, terdapat beragam algoritma
pen%arian 9search algorithm:. Yang dimaksud dengan algoritma pen%arian adalah
algoritma yang menerima sebuah argumen a dan men%oba untuk menemukan
sebuah rekaman yang memiliki kun%i a. Pen%arian dapat dilakukan terhadap data
yang se%ara keseluruhan berada dalam memori komputer ataupun terhadap data
yang berada dalam penyimpanan eksternal.
')17) Str-*t-r
(truktur adalah tipe data bentukan yang menyimpan lebih dari satu
#ariabel bertipe sama maupun berbeda. "ntuk membuat tipe data struktur dalam
'@@, kita harus mendeklarasikannya dengan menggunakan kata kun%i struct.
Kumpulan data dalam sebuah struct sangat dianjurkan membentuk sebuah
kesatuan makna berkaitan dengan nama struct-nya.
')19) #ile
File adalah sebuah organisasi dari sejumlah struktur. Masing ) masing
struktur bisa terdiri dari satu atau beberapa field. (etiap field terdiri dari satu atau
beberapa bte. File dapat berupa file biner atau file teks. File biner adalah file
yang pola penyimpanannya di dalam disk dalam bentuk biner, seperti dalam
memori 92M: komputer.
')1:) Stri+,
$alam '@@, string yang digunakan bertipe null terminated string, yaitu
jenis string yang diakhiri oleh karakter null 9HI,J:, bukan nol. Kita tahu bahwa
string adalah kumpulan dari karakter, oleh karena itu jika kita akan
mendeklarasikan #ariabel bertipe string, maka kita harus melebihkan lebar
sebanyak satu karakter untuk posisi karakter null. $alam mengisikan nilai ke
#ariabel yang bertipe string, kita tidak perlu memasukkan karakter null se%ara
manual, karena '@@ se%ara otomatis akan menambahkannya. Terdapat beberapa
!ungsi siap pakai yang berguna untuk menyelesaikan masalah-masalah yang
berkaitan dengan string. "ntuk menggunakan !ungsi-!ungsi tersebut kita harus
menda!tarkan file header string.h 9untuk '@@ lama: atau K%stringL 9untuk '@@
standar:.
!A! III
MO%U I
%ASAR<%ASAR !A(ASA 2
3)1 T-0-a+
-. Memahami mengenai penggunaan dasar dari &ahasa '
+. Mampu menjalankan /$E 9/ntegrated $e#elopment En#iroment)
&ahasa ' untuk melihat hasil dari penulisan &ahasa
3. Memahami %ara penulisan &ahasa pemrograman yang baik B benar
.. Mampu melakukan proses input B output pada program
3)' Ti+0a-a+ P-/ta*a
3.+.- (ejarah
&ahasa ' merupakan perkembangan dari &ahasa &'P1 yang
dikembangkan oleh Martin 2i%hards pada tahun -56<. (elanjutnya &ahasa ini
memberikan ide kepada Ken Thompson yang kemudian mengembangkan &ahasa
yang disebut &ahasa & pada tahun -5<,. Perkembangan selanjutnya dari &ahasa
& adalah &ahasa ' oleh $ennis 2i%thie sekitar tahun -5<,-an di &ell Telephone
1aboratories /n%. 9sekarang adalah TBT &ell 1aboratories:. &ahasa ' pertama
kali digunakan di komputer $igital EMuipment 'orporation P$P--- yang
menggunakan sistem operasi "N/N. >ingga saat ini penggunaan &ahasa ' telah
merata di seluruh dunia. >ampir semua perguruan tinggi di dunia menjadikan
&ahasa ' sebagai salah satu mata kuliah wajib. (elain itu, banyak &ahasa
pemrograman lain seperti P>P dan *a#a menggunakan sintaks dasar yang mirip
&ahasa '.
3.+.+ (truktur Penulisan Kode
Penulisan &ahasa ' tidak mengenal aturan penulisan di kolom tertentu,
jadi bisa dimulai dari kolom manapun. Namun demikian, untuk mempermudah
pemba%aan program dan untuk keperluan dokumentasi, sebaiknya penulisan
&ahasa ' diatur sedemikian rupa sehingga mudah diba%a. &erikut %ontoh
penulisan Program &ahasa ' yang baik dan yang kurang baik F
Kedua Program di atas bila dijalankan akan menghasilkan hasil yang sama
berupa tulisan D&ahasa 'E di layar, namun dari segi penulisannya program
yang pertama tampaknya lebih mudah diba%a dan lebih rapih &ahasa
pemrograman dengan program yang kedua.
3.+.3 Tipe $ata
Tipe data merupakan bagian program yang paling penting karena
tipe data mempengaruhi setiap instruksi yang akan dilaksanakan oleh &ahasa
pemrograman. Misalkan pada sebuah operasi aritmatika yang melibatkan <
dibagi + . *ika dua #ariable tersebut menggunakan tipe data integer maka akan
menghasilkan nilai + , namun jika menggunakan !loat maka akan menghasilkan
3.4,,,,,,. Penggunaan tipe data yang tepat akan membuat proses lebih e!isien,
tepat dan e!ekti!.
#include <stdio.h>
void main()
{
printf("Bahasa C\n");
}
void main()
{
printf("Bahasa C");
}
$alam &ahasa ' terdapat lima tipe data dasar, yaitu F
No Ti8e %ata U*-ra+ Ra+,e (0a+,*a-+) #or.at Ketera+,a+
- 'har - byte - -+; sGd -+< O% KarakterGstring
+ /nt + byte - 3+<6; sGd 3+<6< Oi , Od /ntegerGbilanga
n bulat
3 7loat 4 byte - 3..E-3; sGd
3..E@3;
O! 7loatGbilangan
pe%ahan
. $ouble ; byte - -.<E-3,; sGd
-.<@3,;
Ol! Pe%ahan presisi
ganda
4 8oid , byte - - Tidak bertipe
Ta6el 3)1 Tipe data dasar &ahasa '
#ontoh Program $
#include <stdio.h>
#include <stdli!.h>
void main()
{
int ";
float #;
char $;
dou!le %;
" & ';
() varia!le " diisi den*an ' )(
# & +.,-;
() varia!le # diisi den*an +.,- )(
$ & .C.;
() varia!le $ diisi den*an /ara/ter 0C1 )(
% & 2.,-345';
() varia!le % diisi den*an 2.,-345' )(
printf("6ilai dari " adalah 7 8i\n"9 ");
() :enampil/an isi varia!le " )(
printf("6ilai dari # adalah 7 8f\n"9 #);
() :enampil/an isi varia!le # )(
printf("6ilai dari $ adalah 7 8c\n"9 $);
() :enampil/an isi varia!le $ )(
printf("6ilai dari % adalah 7 8lf\n"9 %);
() :enampil/an isi varia!le % )(
return ';
}
3.+.. Konstanta
Konstanta merupakan suatu nilai yang tidak dapat diubah selama
proses program berlangsung. Konstanta nilainya selalu tetap. Konstanta harus
dide!inisikan terlebih dahulu di awal program. Konstanta dapat bernilai integer,
pe%ahan, karakter dan string. 'ontoh konstanta F 4,P -3P 3.-.P ..4,,,4P HJP
H&ahasa 'J. (elain itu, &ahasa ' juga menyediakan beberapa karakter khusus
yang disebut karakter es%ape, antara lain F
-: Ia F untuk bunyi bell 9alert:
+: Ib F mundur satu spasi 9ba%kspa%e:
3: I! F ganti halaman 9!orm !eed:
.: In F ganti baris baru 9new line:
4: Ir F ke kolom pertama, baris yang sama 9%arriage return:
6: I# F tabulasi #erti%al
<: I, F nilai kosong 9null:
;: IJ F karakter petik tunggal
5: IE F karakter petik ganda
-,: II F karakter garis miring
3.+.4 8ariabel
8ariabel adalah suatu pengenal 9identifier: yang digunakan untuk
mewakili suatu nilai tertentu di dalam proses program. &erbeda dengan konstanta
yang nilainya selalu tetap, nilai dari suatu #ariable bisa diubah-ubah sesuai
kebutuhan. Nama dari suatu #ariable dapat ditentukan sendiri oleh pemrogram
dengan aturan sebagai berikutF
-. Terdiri dari gabungan huru! dan angka dengan karakter pertama harus
berupa huru!. &ahasa ' bersi!at case-sensiti!e artinya huru! besar dan
ke%il dianggap berbeda. *adi antara nim, N/Mdan Nimdianggap berbeda.
+. Tidak boleh mengandung spasi.
3. Tidak boleh mengandung symbol-simbol khusus, ke%uali garis bawah
9underscore:. Yang termasuk symbol khusus yang tidak diperbolehkan
ntara lain F Q, A, O, R, S, B, T, 9, :, -, @, U dsb
.. Panjangnya bebas, tetapi hanya 3+ karakter pertama yang terpakai.
2o+toh 8e+a.aa+ =aria6el ;a+, 6e+ar :
N/M a, ?, namaVmhs, !3,5;, !., nilai, budi
2o+toh 8e+a.aa+ =aria6le ;a+, /alah :
OnilaiVmahasiswa, ;,mahasiswa, rata-rata, ada spasi, pentingS
3.+.6 $eklarasi
$eklarasi diperlukan bila kita akan menggunakan pengenal 9identifier:
dalam program. /denti!ier dapat berupa #ariable, konstanta dan !ungsi.
3.+.6.- $eklarasi 8ariabel
&entuk umum pendeklarasian suatu #ariable adalah F
NamaVtipe namaV#ariabelP
'ontoh F
3.+.6.+ $eklarasi Konstanta
$alam bahasa ' konstanta dideklarasikan menggunakan preprocessor
Rde!ine.
'ontohnya F
3.+.6.3 $eklarasi 7ungsi
7ungsi merupakan bagian yang terpisah dari program dan dapat diakti!kan
atau dipanggil di manapun di dalam program. 7ungsi dalam bahasa ' ada
yang sudah disediakan sebagai !ungsi pustaka seperti print!9:, s%an!9:, get%h9:
dan untuk menggunakannya tidak perlu dideklarasikan. 7ungsi yang perlu
dideklarasikan terlebih dahulu adalah !ungsi yang dibuat oleh programmer.
&entuk umum deklarasi sebuah !ungsi adalah F
TipeV!ungsi namaV!ungsi9parameterV!ungsi:P
'ontohnya F
int ";
(( ;e/larasi " !ertipe inte*er
char #9 huruf9 nim<'=;
(( ;e/larasi varia!le !ertipe char
float nilai;
(( ;e/larasi varia!le !ertipe float
dou!le !eta;
(( ;e/larasi varia!le !ertipe dou!le
int arra#<-=<,=;
(( ;e/larasi arra#
!ertipe inte*er
char )p;
(( ;e/larasi pointer p !ertipe
char
#define >?@ 2.,
#define nim 02',,'-',A1
#define nama 0>BC@DE1
float luasFlin*/aran(int Gari);
void tampil();
int tam!ah(int "9 int #);
3.+.< =perator
3.+.<.- =perator Penugasan
=perator Penugasan 9%ssignment operator: dalam &ahasa ' berupa tanda
sama dengan 9DUE:. 'ontoh F nilai U ;,P U ? T yP
rtinya F #ariable DnilaiE diisi dengan ;, dan #ariable DE diisi dengan
hasil perkalian antara ? dan y.
3.+.<.+ =perator ritmatika
&ahasa ' menyediakan lima operator aritmatika, yaitu F
-. T F untuk perkalian
+. G F untuk pembagian
3. OF untuk sisa pembagian 9modulus:
.. @ F untuk pertambahan
4. F untuk pengurangan
'atatan F operator O digunakan untuk men%ari sisa pembagian ntara dua
bilangan.
Misalnya F
#ontoh Program &$
5 O + U -
5 O 3 U ,
5 O 4 U .
5 O 6 U 3
#include <stdio.h>
#include <stdli!.h>
void main() {
printf("6ilai dari + 4 , & 8i"9 + 4 ,);
() menceta/ hasil + 4 , )(
printf("6ilai dari + H , & 8i"9 + H ,);
() menceta/ hasil + H , )(
printf("6ilai dari + ) , & 8i"9 + ) ,);
() menceta/ hasil + ) , )(
printf("6ilai dari + ( , & 8i"9 + ( ,);
() menceta/ hasil + ( , )(
printf("6ilai dari + \8 , & 8i"9 + 8 ,);
() menceta/ hasil + 8 , )(
}
3.+.<.3 =perator >ubungan 9Perbandingan:
=perator >ubungan digunakan untuk membandingkan hubungan antara
dua buah operand 9sebuah nilai atau #ariable. =perator hubungan dalam bahasa '
O8erator Arti 2o+toh Ketera+,a+
K Kurang dari ? K y pakah ? kurang dari y
KU Kurang dari sama
dengan
? KU y pakah ? kurang dari sama
dengan y
L 1ebih dari ? L y pakah ? lebih dari sama
dengan y
LU 1ebih dari sama dengan ? LU y pkah lebih dari sama
dengan
UU (ama dengan ? UU y pakah ? sama dengan y
SU Tidak sama dengan ? SU y pakah ? tidak sama
dengan y
Ga.6ar 3)' =perator >ubungan
3.+.<.. =perator 1ogika
*ika operator hubungan membandingkan hubungan antara dua buah
operand, maka operator logika digunakan untuk membandingkan logika hasil
dari operator-operator hubungan. =perator logika ada tiga ma%am, yaituF
-. BB F 1ogika N$ 9$N:
+. WW F 1ogika =2 9T":
3. S F 1ogika N=T 9/N0K2N:
3.+.<.4 =perator &itwise
=perator bitwise digunakan untuk memanipulasi bit-bit dari nilai data
yang ada di memori. =perator bitwise dalam bahasa ' F
-. KK F Pergeseran bit ke kiri
+. LL F Pergeseran bit ke kanan
3. B F &itwise N$
.. X F &itwise N=2 9E?%lusi#e =2:
4. W F &itwise =2
6. Y F &itwise N=T
3.+.<.6 =perator "nary
O8erator Arti>Ma*/-3 eta* 2o+toh E?-i=ale+
< "nary minus (ebelum
operator
@ -& T
'
@ 9-&: T
'
@@ Peningkatan dengan
penambahan nilai -
(ebelum dan
sesudah
@@ U @ -
<< Penurunan dengan
pengurangan nilai -
(ebelum dan
sesudah
-- U ) -
SiAeo11 "kuran dari operand dalam
&yte
(ebelum siZeo!9/: <
B "nary N=T (ebelum S <
C &itwise N=T (ebelum Y <
D Menghasilkan alamat
memori operand
(ebelum B <
E Menghasilkan nilai dari
Pointer
(ebelum T <
Ga.6ar 3)3 =perator "nary
=perator "nary merupakan operator yang hanya membutuhkan satu
operand saja. $alam bahasa ' terdapat beberapa operator unary, yaitu F
2atata+ Pe+ti+, B :
=perator peningkatan @@ dan penurunan -- jika diletakkan sebelum atau
sesudah operand terdapat perbedaan. Perhatikan %ontoh berikut F
#ontoh Program & $
() >er!edaan operator penin*/atan 44 #an* dileta//an
di depan
dan di!ela/an* operand )(
#include <stdio.h>
#include <stdli!.h>
void main(){
int "9 nilai;
" & -;
nilai & 44";
() !erarti " & " 4 ;
nilai & ";
)(
printf("nilai & 8d9 " & 8d\n"9 nilai9 ");
nilai & "44;
() !erarti nilai & ";
nilai & " 4 ;
)(
printf("nilai & 8d9 " & 8d\n"9 nilai9 ");
return ';
}
#ontoh Program ' $
3.+.; Komentar
Komentar program hanya diperlukan untuk memudahkan pemba%aan
dan pemahaman suatu program 9untuk keperluan dokumentasi program:. $engan
kata lain, komentar program hanya merupakan keterangan atau penjelasan
program. "ntuk memberikan komentar atau penjelasan dalam bahasa ' digunakan
pembatas GT dan TG atau menggunakan tanda GG untuk komentar yang hanya terdiri
#include <stdio.h>
#include <stdli!.h>
void main() {
int !9 nilai;
! & -;
nilai & HH!;
() !erarti ! & ! H ;
nilai & !;
)(
printf("6ilai ! setelah di/uran*i& 8d"9nilai);
}
dari satu baris. Komentar program tidak akan ikut diproses dalam program 9akan
diabaikan:.
#ontoh Program $
3.+.5 /nput
$alam bahasa ' proses memasukkan suatu data bisa menggunakan
beberapa !ungsi pustaka yang telah tersedia. &eberapa !ungsi pustaka yang
bisa digunakan adalahF
3.+.5.- (%an!9:
7ungsi pustaka s%an!9: digunakan untuk menginput data berupa data
numerik, karakter dan string se%ara ter!ormat. &erikut adalah hal-hal yang perlu
diperhatikan dalam pemakaian !ungsi s%an!9: F
-. 7ungsi s%an!9: memakai penentu !ormat
+. 7ungsi s%an!9: memberi pergantian baris se%ara otomatis
3. 7ungsi s%an!9: tidak memerlukan penentu lebar !ield
.. 8ariabelnya harus menggunakan operator alamat B Kode penentu
!ormat F
a. O% F Memba%a sebuah karakter
b. Os F Memba%a sebuah string
%. Oi, Od F Memba%a sebuah bilangan bulat 9integer:
d. O!, Oe F Memba%a sebuah bilangan pe%ahan 9real:
e. Oo F memba%a sebuah bilangan o%tal
#include <stdio.h>
#include <stdli!.h>
void main() {
printf("Contoh >en**unaan Iomentar");
Ceturn ';
() ;an ini untu/ menahan tampilan di la#ar )(}
!. O? F Memba%a sebuah bilangan heksadesimal
g. Ou F Memba%a sebuah bilangan tak bertanda
#ontoh Program $
3.+.5.+ 0ets9:
-. 7ungsi gets9: digunakan untuk memasukkan data bertipe karakter dan
tidak dapat digunakan untuk memasukkan data numerik.
+. >arus diakhiri dengan penekanan tombol enter
3. 'ursor se%ara otomatis akan pindah baris
.. Tidak memerlukan penentu !ormat
() >ro*ram memasu/an inputan den*an !e!erapa tipe
data )(
#include <stdio.h>
#include <stdli!.h>
void main()
{
int Gumlah;
char huruf9 nim<'=;
float nilai;
printf(":asu//an se!uah !ilan*an !ulat 7 ");
scanf("8d"9 JGumlah );
() mem!aca se!uah !ilan*an !ulat )(
printf(":asu//an deret an*/a 7 ");
scanf("8s"9 Jnim );
() mem!aca se!uah strin* )(
printf(":asu//an se!uah !ilan*an pecahan 7 ");
scanf("8f"9 Jnilai );
() mem!aca se!uah !ilan*an float )(
printf("\n6ilai varia!le #an* Bnda masu//an
adalah 7\n");
printf("Gumlah & 8d\n"9 Gumlah );
printf("nim & 8s\n"9 nim );
printf("nilai & 8f\n"9 nilai );
return ';
}
#ontoh Program$
3.+.5.3 0et%har9:
-. 7ungsi get%har9: digunakan untuk memba%a data yang bertipe karakter
+. >arus diakhiri dengan penekanan tombol enter
3. Karakter yang dimasukkan terlihat pada layar
.. Pergantian baris se%ara otomatis
2ATATAN :
*ika terdapat beberapa proses input 9memasukkan data: sekaligus, maka
sebaiknya ditambahkan !ungsi !!lush9stdin:P setelah !ungsi s%an!9:. 7ungsi
!!lush9stdin: ber!ungsi menghapus bu!!er di dalam alat /G=.
3.+.-, =utput
3.+.-,.- Menampilkan $ata ke 1ayar
-. Menggunakan !ungsi print!9:, puts9:, dan put%har9:.
+. 7ungsi print!9: digunakan untuk menampilkan semua jenis data
9numeri% dan karakter:
3. 7ungsi puts9: digunakan untuk menampilkan data string dan
se%ara otomatis akan diakhiri dengan perpindahan baris.
() >ro*ram inputan tipe data /ara/ter(strin* )(
#include <stdio.h>
#include <stdli!.h>
void main() {
char nama<5'=;
printf(":asu//an nama Bnda 7 ");
*ets(nama);
printf("?ello9 6ama Bnda adalah 8s"9 nama);
return ';
}
.. 7ungsi put%har9: digunakan untuk menampilkan sebuah
karakter.
'ara Mengatur tampilan bilangan pe%ahan 9!loat:.
&entuk umum F
print!9DOm.n!E, argument:P
Keterangan F
m F menyatakan panjang range
n F menyatakan jumlah digit di belakang koma.
argument F nilai atau #ariable yang akan ditampilkan.
'ontoh F
print!9DO4.+!E, nilai:P
rtinya #ariable nilai akan ditampilkan sebanyak 4 digit dengan + digit di
belakang koma.
#ontoh Program &$
() >ro*ram untu/ menampil/an data !erupa !ilan*an
pecahan )(
#include <stdio.h>
#include <stdli!.h>
void main(){
float nilai;
puts(":asu//an nilai Bnda 7 ");
scanf("8f"9 Jnilai);
printf("Bnda memperoleh nilai 8-.5f"9 nilai);
printf("Bpa/ah Bnda telah puas mendapat nilai
8K.,f L"9 nilai);
return ';
}
#ontoh Program '(
3.+.-,.+ Menampilkan data ke printer
"ntuk menampilkan data ke printer dapat menggunakan !ungsi
!print!9:, !puts9: dan !put%9:.
-. 7ungsi !print!9: digunakan untuk men%etak semua jenis tipe data ke
printer dan se%ara otomatis memberikan e!ek perpindahan baris.
+. 7ungsi !puts9: digunakan untuk men%etak tipe data string ke printer
3. 7ungsi !put%9: digunakan untuk men%etak tipe data karakter ke printer
() >ro*ram untu/ menampil/an data !erupa !ilan*an
inte*er dan
strin* )(
#include <stdio.h>
#include <stdli!.h>
void main(){
int umur;
char nama<5'=;
puts(":asu//an nama Bnda 7");
*ets(nama);
puts(":asu//an umur Bnda 7 ");
scanf("8d"9 Jumur);
printf("6ama Bnda 7 8s \n"9 nama);
((tipe data strin*
printf(0Mmur Bnda 7 8d \n19 umur);
((tipe data
inte*er
return ';
}
#ontoh program $
#include <stdio.h>
#include <conio.h>
void main() {
fprintf(stdprn9 0?allo9 Na#a a/an terceta/ di
printer1);
fputs(stdprn9 0Na#a Gu*a a/an terceta/ di printer1);
}
3)3 Pe.6aha/a+ 3a+ A+ali/a
Pembahasan dan analisa akan men%akup penjabaran tujuan dan isi modul
dengan peme%ahan tugas pratikum di setiap modulnya.
3.3.- nalisis dan Pengujian Modul - - $asar-$asar &ahasa '
3.3.-.- /si Modul
Modul ini membahas mengenai struktur bahasa ', dan hal-hal dasar
mengenai penulisan kode program dalam bahasa '. Meliputi penjelasan Tipe
$ata, Konstanta, 8ariabel, $eklarasi, Komentar dan =perator. Pada Modul -
9satu: ini juga dijelaskan bagaimana memasukkan sebuah inputan pada program
dan men%etaknya atau memberikan output ke layar.
3.3.-.+ nalisis dan Pengujian Tugas Pratikum
$alam menganalisa dan menguji tugas pratikum diterapkan langkah-
langkah konsep pemrograman komputer seperti yang sudah dijelaskan pada bab
sebelumnya. Yaitu deskripsi permasalahan, penggambaran peme%ahan masalah,
dan uji%oba program.
A) Me.6-at Pro,ra. ;a+, .e+a.8il*a+ +a.a D +i.
$eskripsi B Peme%ahan
Program meminta user untuk memasukkan inputan berupa nama B
nim kemudian menampilkannya ke layar. >al ini dapat dilakukan dengan
!ungsi sederhana print dan s%an dalam bahasa '.
Rancangan Pseudocode
Algoritma program_tampil_nama_nim
{Bl*oritma #an* a/an menerima inputan user
!erupa /ara/ter dan menampil/ann#a /e la#ar}
Deklarasi
6ama 7 int(5') {untu/ men#impan datanama
pen**una sepanGan* 5' di*it int}
6im 7 int(5') {untu/ men#impan data nim pen**una
sepanGan* 5' di*it int)
Deskripsi
Orite(:asu//an nama anda7)
Cead(nama)
Orite(:asu//an nim anda7)
read(nim)
Orite(6ama anda9 nama)
Orite(6im anda9 nim)
Flowchart
Ga.6ar 3)1 Flowchart Program menampilkan nama dan nim
Kode Program Dalam Bahasa C
GTProgram menampilkan Nama dan N/M MahasiswaTG
Rin%lude Kstdio.hL
Rin%lude Kstdlib.hL
int main9:
[
print!9\UUUUUUUTEKN/K E1EKT2=UUUUUUUIn\:P
print!9\UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUIn\:P
print!9\NM F P2/T=In\:P
GG "ntuk memun%ulkan nama saya dengan menggunakan !ungsi print!
print!9\N/M F -3,..,4,.<In\:P
GG "ntuk memun%ulkan N/m saya dengan menggunakn !ungsi print!
return ,P
]
]
Tampilan Program
Ga.6ar 3)' Program Menampilkan Nama dan Nim
!) Me.6-at Pro,ra. Perhit-+,a+ -a/ D $ol-.e
1) Perhit-+,a+ K-6-/
$eskripsi B Peme%ahan Masalah
Perhitungan 8olume Kubus memiliki rumus sisi ^ sisi ^ sisi
sedangkan 1uas Kubus memiliki rumus 9sisi ^ sisi: ^ 6 9enam: atau luas
sisi dikalikan 6 9enam:. $engan meman!aat kedua rumus tersebut yang
diproses lewat operasi aritmatika dalam bahasa ' dan !ungsi s%an! G print!
untuk input-output program dapat diselesaikan.
Rancangan Pseudocode
Algoritma luas_volume_kubus
{Bl*oritma #an* a/an menerima inputan user
!erupa nilai sisi dan men*olahn#a menGadi luas dan
volume}
Deklarasi
sisi 7 float {varia!el untu/ menampun* nilai sisi}
luas 7 float {varia!el untu/ menampun* hasil
perhitun*an luas}
Polume7float {varia!el untu/ menampun* hasil
perhitun*an volume}
Deskripsi
Orite(:asu//an nilai sisi7)
Cead(sisi)
luas Q (sisi)sisi))K
Polume Q (sisi)sisi)sisi)
Orite(luas) Orite(volume)
.-
Flowchart
Ga.6ar 3)3 Flowchart Program luas dan #olume Kubus
Kode Program Dalam Bahasa C
.
GTProgram menghitung luas kubusTG
Rin%lude Kstdio.hL
Rin%lude Kstdlib.hL
int main9:
[ !loat sP
GGProses $eklarasi 8ariabel, dan /nput dari "ser
print!9\ P2/T= TEKN/K E1EKT2=In\:P
print!9\UUUUUUUUUUUUUUUUUUUUUUUUIn\:P
print!9\P2=02M MEN0>/T"N0 1"(
K"&"(InIn\:P
print!9\(/(/F \:P
s%an!9\O!\,Bs:P
print!9\1"( K"&"( TE2(E&"T $1> F
O.+!\,6TsTs:PGGmenampilkan hasil perhitungan
system 9\pause\:P
return ,P
]
Tampilan Program
Ga.6ar 3)4 Program luas dan #olume kubus
') Perhit-+,a+ i.a/ Se,ie.8at
$eskripsi B Peme%ahan Masalah
Perhitungan 8olume 1imas (egiempat memiliki rumus -G3 ^
panjang 9p: ^ lebar 9l: ^ tinggi 9t: sedangkan 1uas 1imas (egiempat
memiliki rumus _ ^ . ^ tinggi 9t: @ panjang 9p: ^ lebar 9l:. $engan
meman!aat kedua rumus tersebut yang diproses lewat operasi aritmatika
dalam bahasa ' dan !ungsi s%an! G print! untuk input-output program dapat
diselesaikan.
Rancangan Pseudocode
Algoritma luas_volume_limas_segiempat
{Bl*oritma #an* a/an menerima inputan user
!erupa nilai sisi dan men*olahn#a menGadi luas dan
volume}
Deklarasi
p(>anGan*)7 float {varia!el untu/ menampun* nilai
panGan*}
l(Re!ar) 7float {varia!el untu/ menampun* nilai
le!ar}
t(Din**i) 7 float {varia!el untu/ menampun* nilai
tin**i}
Ruas 7 float {varia!el untu/ menampun* hasil
perhitun*an luas}
Polume 7 float {varia!el untu/ menampun* hasil
perhitun*an volume}
Deskripsi
Orite(:asu//an nilai sisi7)
Cead(sisi)
luas Q S T , tin**i (t) 4 panGan* (p) T le!ar (l)
Polume Q (2 T panGan* (p) T le!ar (l) T tin**i (t)
Orite(luas) Orite(volume)
Flowchart
Ga.6ar 3)5 Flowchart Program luas dan #olume limas segiempat
Kode Program Dalam Bahasa C
GTProgram menghitung #olume luas dan #olume limas
segiempatTG
Rin%lude Kstdio.hL
Rin%lude Kstdlib.hL
int main9:
[
GGProses $eklarasi 8ariabel, dan /nput dari "ser
print!9\ P2/T= TEKN/K E1EKT2=In\:P
print!9\UUUUUUUUUUUUUUUUUUUUUUUUIn\:P
print!9\In\:P
print!9\P2=02M MEN0>/T"N0 1"( $N
8=1"ME 1/M( (E0/EMPTIn\:P
!loat sisi, tinggi, lValas, lVselu, luas, #olumeP
print!9\In1(F \:P
s%an!9\O!\, Bsisi:P
print!9\T/N00/F \:P
s%an!9\O!\, Btinggi:P
GGProses Perhitungan
lValas U sisiTsisiP
lVselu U sisiTtinggiG+P
luas U lValas@lVseluP
#olume U lValasTtinggiG3P
GGTampilkan >asil Perhitungan
print!9\InUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU
UUUUUUUUUUUUUIn\:P
print!9\In1"(F O.+!\, luas:P
print!9\In8=1"MEF O.+!In\, #olume:P
system 9\pause\:P
return ,P
]
Tampilan Program
Ga.6ar 3)7 Program 1uas dan #olume limas sgi empat
3) Perhit-+,a+ Ker-4-t
$eskripsi B Peme%ahan Masalah
Perhitungan 8olume Keru%ut memiliki rumus phi ^ jari-jari ^ jari ^
tinggi dibagi 3 9phi ^ r ^ r ^ t: G3 sedangkan 1uas Keru%ut memiliki rumus
*ari-jari @ sisi miring ^ phi ^ jari-jari ^ 9r@s:TphiTr. $engan meman!aat
kedua rumus tersebut yang diproses lewat operasi aritmatika dalam bahasa
' dan !ungsi s%an! G print! untuk input-output program dapat diselesaikan.
Rancangan Pseudocode
Algoritma luas_volume_kerucut
{Bl*oritma #an* a/an menerima inputan user
!erupa nilai sisi dan men*olahn#a menGadi luas dan
volume}
Deklarasi
phi (29,)7 float {varia!el untu/ menampun* nilai
phi}
r(GariHGari)7float {varia!el untu/ menampun*
nilai GariHGari}
s(sisi mirin*)7 float {varia!el untu/ menampun*
nilai sisis mirin*}
t(Din**i 7 float {varia!el untu/ menampun*
nilai tin**i}
Ruas 7 float {varia!el untu/ menampun*
hasil perhitun*an luas}
Polume 7 float {varia!el untu/ menampun*
hasil perhitun*an volume}
Deskripsi
Orite(:asu//an nilai sisi7)
Cead(sisi)
luas Q S ) , tin**i (t) 4 panGan* (p) ) le!ar (l)
Polume Q (2 ) panGan* (p) ) le!ar (l) ) tin**i
(t)
Orite(luas) Orite(volume)
Flowchart
Ga.6ar 3)7 Program 1uas dan #olume Keru%ut
Kode Program Dalam Bahasa C
.
GTProgram menghitung #olume luas dan keru%utTG
Rin%lude Kstdio.hL
Rin%lude Kstdlib.hL
int main9:
[
GGProses $eklarasi 8ariabel, dan /nput dari "ser
print!9\ P2/T= TEKN/K E1EKT2=In\:P
print!9\UUUUUUUUUUUUUUUUUUUUUUUUIn\:P
print!9\In\:P
print!9\P2=02M MEN0>/T"N0 1"( $N 8=1"ME
KE2"'"TIn\:P
print!9\UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU
UUUUIn\:P
!loat jari, sisi, tinggi, lValas, lVselu, luas, #olumeP
print!9\In*ari-*ari lasF \:P
s%an!9\O!\, Bjari:P
print!9\InPanjang (isiF \:P
s%an!9\O!\, Bsisi:P
print!9\InTinggiF \:P
s%an!9\O!\, Btinggi:P
GGmulai Proses Perhitungan
lValas U jariTjariT++G<P
lVselu U jariTsisiT++G<P
luas U lValas@lVseluP
#olume U lValasTtinggiG3P
GGmemun%ulkan >asil Perhitungan
print!9\InUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU
UUUUUUIn\:P
print!9\In1"( PE2M"KN KE2"'"TF O.+!\, luas:P
print!9\In8=1"ME KE2"'"TF O.+!In\, #olume:P
system 9\pause\:P
return ,P
Tampilan Program