-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
1/84
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
2/84
Tujuan Pertemuan
Mahasiswa mampu:
Menelaskan apa itu !erpikir komputasional danteknik"teknik di dalamnya
Menelaskan !agaimana komputasidiman#aatkan dalam keilmuan #akultas$sekolah
Memahami representasi dan pemrosesan datadan program dalam mesin komputer Menelaskan !agaimana proses dari sour%e %ode
menadi program dengan menggunakankompilator$interpreter
Menelaskan apa yang dimaksud paradigmapemrograman prosedural
KU1072/Pengantar Berpikir Komputasi danPemrograman Prosedural20/01/16 2
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
3/84
Berpikir Komputasional
20/01/16 KU1072/Pengantar Berpikir Komputasidan Pemrograman Prosedural 3
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
4/84
Pengantar &ideo: 'omputational Thinking( ) *igital
)ge +kill #or ,-eryone " .ouTu!e/720pmp
20/01/16 KU1072/Pengantar Berpikir Komputasidan Pemrograman Prosedural 4
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
5/84
Computational ThinkingComputational thinking is the thoughtprocesses involved in formulatingproblems and their solutions so that the
solutions are representedin a form thatcan be eectively carried out by aninformation-processing agent.
3an 'uny4 5arry +nyder4 and 3eannette M 6ing4*emysti#ying 'omputational Thinking #or 8on"
'omputer +%ientists4 2010
20/01/16 KU1072/Pengantar Berpikir Komputasidan Pemrograman Prosedural 5
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
6/84
Kemampuan Berpikir
Komputasional 1!
KU1072/Pengantar Berpikir Komputasidan Pemrograman Prosedural
9Berpikir komputasi memungkinkan kita untukmenggunakan komputasi sesuai dengan ke!utuhan
kita Kemampuan ini akan menadi salah satukemampuan dasaryang harus dimiliki di a!ad 21
;http:$$link%s%muedu$arti%lephp00 ?
Kemampuan dasar ang suda!
ada se"elumna#Kemampuan $em"a%aKemampuan $enulisKemampuan Ber!itung
20/01/16 6
http://link.cs.cmu.edu/article.php?a=600http://link.cs.cmu.edu/article.php?a=600 -
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
7/84
Kemampuan Berpikir
Komputasional 2!Merepresentasikan himpunan keterampilan;skill? dan perilaku ;attitude? yang se%arauni-ersal harus dipelaari dan digunakan4
tidak han"a oleh para computerscientist
Jeanette M. Wing, Computational Thinking,!""#
20/01/16 KU1072/Pengantar Berpikir Komputasidan Pemrograman Prosedural 7
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
8/84
Kemampuan Berpikir
Komputasional #! Teknik"teknik yang digunakan *ekomposisi pesoalan ;problem
decomposition$
Pengenalan pola ;pattern recognition? @eneralisasi pola dan a!straksi ;pattern
generali%ation and abstraction? Aan%angan algoritma ;algorithm design?
)nalisis data dan -isualisasi
KU1072/Pengantar Berpikir Komputasidan Pemrograman Prosedural20/01/16 &
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
9/84
Pemanasan
20/01/16 KU1072/Pengantar Berpikir Komputasidan Pemrograman Prosedural '
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
10/84
Instruksi$0
+iapkan di atas mea selem%ar kertas&'4 pensil4 dan penghapus
Berikan nama( )I*( dan kelasdi pook
kanan atas
20/01/16 KU1072/Pengantar Berpikir Komputasidan Pemrograman Prosedural 10
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
11/84
Instruksi$1
'eritakan hal"hal dan langkah"langkah yang kamulakukan hari ini4mulai dari:
Bangun tidur
sd
Ti%a di kelas untuk mengikutikuliah PTI$B
Tuliskan pada kertas )'ara penulisan !e!as: !oleh teks4 !oleh gam!ar4dll
6aktu : menit
20/01/16 KU1072/Pengantar Berpikir Komputasidan Pemrograman Prosedural 11
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
12/84
Instruksi$2
Berkelompoklah %erduadengan teman dise!elahmu
*ari langkah"langkah yang dikerakan pada
instruksi"14 tandaidari lem!ar milikmu danteman di se!elahmu hal$hal dapatdikatakan sama/mirip
Ingatlah: 'ara )nda dan teman )nda !isa !er!eda
dalam menyatakan hal yang sama$mirip4 misalnyarepresentasi ;gam!ar4 teks?4 kalimat yang!er!eda4 !er!eda tingkat kedetilannya C
6aktu : 10 menit
20/01/16 KU1072/Pengantar Berpikir Komputasidan Pemrograman Prosedural 12
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
13/84
Instruksi$#
Berdasarkan hasil per!andingan se!elumnya4tuliskan ulang ;dalam !entuk tes? di salahsatu lem!ar ;angan lupa menuliskan nama
dan 8IM partner? apa yang dise!ut se!agai:Dal"hal yang dilakukan oleh seorang
mahasis+a kelas ,, pada hari inimulaidari %angun tidur sd ti%a di kelas untuk
mulai mengikuti kuliah PTI$B
6aktu : menit
20/01/16 KU1072/Pengantar Berpikir Komputasidan Pemrograman Prosedural 13
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
14/84
-e%enarn"a apa "ang %aru
saja kalian lakukan..
1420/01/16 KU1072/Pengantar Berpikir Komputasidan Pemrograman Prosedural
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
15/84
Problem Decomposition/
ekomposisi Persoalan 1! Decomposition& ability to break do'n a
task into minute details so that 'e can
clearly e(plain a process to anotherperson or to a computer or even to )ust'rite notes for ourselves
*alam latihan:Tugas indi-idual untuk mendekomposisi hal"hal
yang dilakukan untuk pergi ke kuliah pada hariini
20/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural 15
P bl D iti /
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
16/84
Problem Decomposition/ekomposisi Persoalan 2! $
Contoh
1620/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural
8ama : *easy *u%k 8IM : 1>1EEE Kelas : FF
Keadaan a+al Baru %angun tidur1Bersiap"siap untuk pergi !erolahraga2Pergi dari rumah ke 5apangan +araga ITBGTi!a di +araga ITB
Berolahraga pagi dengan ogging selama setengah am di 5apangan +araPulang ke rumah>Bersih"!ersih rumah7+arapan pagiEMandiHMenyiapkan laptop4 !uku %atatan4 alat"alat tulis4 DP4 ta!let dan memasu10Berpamitan pada orang tua11Menyiapkan motor12Pergi ke kampus dengan menggunakan motor1GMemarkir motor di lapangan parkir )ula Barat1Beralan kaki menuu ruang kuliahKeadaan akhir ti%a di kelas untuk mulai mengikuti kuliah PTI$B
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
17/84
Problem Decomposition/
ekomposisi Persoalan #! 'ontoh lain:
Menelaskan !ahan"!ahan dari suatu masakan
tertentu !erdasarkan %ita rasanya Mendeskripsikan %ara untuk menuu ke rumah
dari kampus
*ekomposisi !ilangan 2>G7 menadi 2102J
101J >100J G10"1J 710"2 *ekomposisi !ilangan menadi #aktor prima4
misalnya: 20 = 2 2
1720/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
18/84
Pattern Recognition/
Pengenalan Pola 1! Pattern recognition& ability to notice
similaritiesor common dierences that helpus make predictions or lead us to shortcuts
*ekomposisi persoalan sering mem!erikanpetunuk ke arah ditemukannya pola ;pattern?
*alam latihan:
Melakukan per!andingan dengan pekeraan temandan menentukan hal"hal yang 9sama$mirip ;danpada saat yang sama menentukan hal"hal yang9!er!eda?
1&20/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
19/84
Pattern Recognition/Pengenalan Pola 2! $ Contoh
1'20/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural
8ama : *easy *u%k 8IM : 1>1EEE Kelas : FF
Keadaan a+al Baru %angun tidur1Bersiap"siap untuk pergi !erolahraga2Pergi dari rumah ke 5apangan +araga ITBGTi!a di +araga ITB
Berolahraga pagi dengan ogging selama setengah am di 5apangan +aragPulang ke rumah>Bersih"!ersih rumah7+arapan pagiEMandiHMenyiapkan laptop4 !uku %atatan4 alat"alat tulis4 DP4 ta!let dan memasuk
10Berpamitan pada orang tua11Menyiapkan motor12Pergi ke kampus dengan menggunakan motor1GMemarkir motor di lapangan parkir )ula Barat1Beralan kaki menuu ruang kuliahKeadaan akhir ti%a di kelas untuk mulai mengikuti kuliah PTI$B
8ama : *onald *u%k 8IM : 1>1HHH Kelas : FF
Keadaan a+al Baru %angun tidur1Persiapan untuk olahraga pagi2Pergi ogging keliling daerah sekitar kos
GMerapikan tempat tidur dan !ersih"!ersih rumah+arapan pagiMandi>Menyiapkan !uku %atatan dan alat tulis untuk kuliah73alan kaki menuu ke pinggir alan 'isitu 5amaEMenunggu angkot 'isitu"Tegalega
H8aik angkot sampai di pertigaan alan Tamansari dan +umur Bandung103alan kaki sampai ruang kuliah am H4 tepat se!elum dosen masuk kelas
Keadaan akhir ti%a di kelas untuk mulai mengikuti kuliah PTI$B
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
20/84
Pattern Recognition/Pengenalan Pola #! $ Contoh
2020/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural
8ama : *easy *u%k 8IM : 1>1EEE Kelas : FF
Keadaan a+al Baru %angun tidur1Bersiap$siap untuk pergi %erolahraga2Pergi dari rumah ke apangan -araga ITB
#Ti%a di -araga ITB'Berolahraga pagi dengan jogging selama setengah jam di apang3Pulang ke rumah4Bersih$%ersih rumah7-arapan pagi5*andi dan ganti %aju
6*en"iapkan laptop( %uku atatan( alat$alat tulis( 8P( ta%let dan10Berpamitan pada orang tua11*en"iapkan motor12Pergi ke kampus dengan menggunakan motor1#*emarkir motor di lapangan parkir &ula Barat1'Berjalan kaki menuju ruang kuliah
Keadaan akhir ti%a di kelas untuk mulai mengikuti kuliah PTI$B
8ama : *onald *u%k 8IM : 1>1HFF
Keadaan a+al Baru %angun tidur1Persiapan olahraga pagi
2Pergi jogging keliling daerah se#*erapikan tempat tidur dan %errumah'-arapan pagi3*andi dan ganti %aju4*en"iapkan %uku atatan dan a
untuk kuliah79alan kaki menuju ke pinggir jalama5*enunggu angkot Cisitu$Tegale6)aik angkot sampai di pertigaaTamansari dan -umur Bandung109alan kaki sampai ruang kuliah
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
21/84
Pattern Recognition/Pengenalan Pola '!
'ontoh lain: )nak"anak mengenali apa yang !enar dan apa yang
salah !erdasarkan pengamatan mereka terhadapsikap$reaksi orang tua dan guru Ini menentukan sikapmereka di masa depan
rang yang !ekera di pasar saham mengamati pola"poladalam harga saham untuk menentukan kapan merekaharus ual atau !eli
*alam ilmu matematika4 kita dapat mengikuti suatu polauntuk menelaskan logika mengapa perkalian antara dua!uah !ilangan negati# hasilnya adalah positi#:
"G G = "H "G 2 = "> "G 1 = "G "G 0 = 0 "G "1 = G "G "2 = > dst
2120/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
22/84
Pattern Recognition/Pengenalan Pola 3!
Pola penualan saham
KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural
to t1 t2 t3 t4 t5 t6
(paka! di t6 akan turun
atau naik )
20/01/16 22
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
23/84
Pattern Generalization and Abstraction
:eneralisasi Pola dan &%straksi
1! Abstraction& ability to *lter information thatis not necessary to solve a certain type ofproblem
Pattern generalization& ability togenerali%e information that is necessary
Merepresentasikan ide atau proses dalamterminologi general ;misalnya -aria!el?sehingga kita dapat menggunakannya untukmeme%ahkan persoalan lain yang 9mirip
Pengenalan pola merupakan dasar daria!straksi dan generalisasi pola
2320/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural
i i d h
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
24/84
Kemiripan pada Contohhal sama/mirip ditandai dengan +arna "ang
sama!
8ama : *easy *u%k 8IM : 1>1GEEE Kelas : FF
Keadaan a+al Baru %angun tidur1Bersiap$siap untuk pergi %erolahraga2Pergi dari rumah ke apangan -araga ITB
#Ti%a di -araga ITB'Berolahraga pagi dengan jogging selama setengah jam di apang3Pulang ke rumah4Bersih$%ersih rumah7-arapan pagi5*andi dan ganti %aju
6*en"iapkan laptop( %uku atatan( alat$alat tulis( 8P( ta%let dan10Berpamitan pada orang tua11*en"iapkan motor12Pergi ke kampus dengan menggunakan motor1#*emarkir motor di lapangan parkir &ula Barat1'Berjalan kaki menuju ruang kuliah
Keadaan akhir ti%a di kelas untuk mulai mengikuti kuliah PTI$B
8ama : *onald *u%k 8IM : 1>1GHFF
Keadaan a+al Baru %angun tidur1Persiapan untuk olahraga pagi
2Pergi jogging keliling daerah se#*erapikan tempat tidur dan %errumah'-arapan pagi3*andi dan ganti %aju4*en"iapkan %uku atatan dan a
untuk kuliah79alan kaki menuju ke pinggir jalama5*enunggu angkot Cisitu$Tegale6)aik angkot sampai di pertigaaTamansari dan -umur Bandung109alan kaki sampai ruang kuliah2420/01/16
KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural
P tt G li ti d Ab t ti
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
25/84
Pattern Generalization and Abstraction
:eneralisasi Pola dan &%straksi2!
'ontoh dari latihan:.ang !eru!ah ditandai dengan di antarkurung L C 8ama : L8ama 8IM : L8IM Kelas : LKelas
Keadaan a+al Baru %angun tidur
1Berolahraga pagi dengan jogging di lokasi ;lokasi -oft+are > 8ard+are
20/01/16
KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural 36
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
37/84
Komponen 8ard+are -nput devices ;piranti
masukan?
utput devices;piranti Keluaran
Microprocessor;'PU?
Memorydan storagedevice;piranti
penyimpanan? /rimary storage
0econdary storage
20/01/16
KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural 37
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
38/84
-oft+are > &lgorithm >
Program 1! Perangkat unak software!memungkinkan penggunamengkomunikasikan suatu persoalan
kepada komputer dan komputermem!erikan solusinya kepada penggunaTanpa perangkat lunak4 komputer hanya mesin
!odoh
20/01/16
KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural 3&
Software * program+ data+ dokumentasi
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
39/84
-oft+are > &lgorithm >
Program 2! &lgoritma: himpunan prosedur langkah perlangkah untuk menyelesaikan suatu persoalan
Pekeraan programmer adalah mengu!ahalgoritmamenadi programkomputerdengan menggunakan %ahasa pemrograman Program komputer dituliskan oleh programmer dalam
!entuk source code
Compiler1interpreterakan mentrans#ormasi sour%e
%ode menadi executable codeyaitu !entuk akhirprogram yang dapat di!erikan kepada user
20/01/16
KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural 3'
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
40/84
Bahasa Komputer
+etiap komputer memproses instruksi dalam%ahasa mesin;machine language? Kode"kode numerik yang digunakan untuk
mengerakan operasi"operasi dasar:
)dding and su!tra%ting num!ers 'omparing num!ers
Mo-ing num!ers
Aepeating instru%tions
Programmer menggunakan %ahasapemrograman tingkat tinggi ;high-levellanguages? Pas%al4 '$'JJ4 Qortran4 Basi%4 3a-a4 dll
20/01/16
KU1072/Pengenalan ,eknologi
-n.ormasi B 40
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
41/84
ari Source odemenjadi
Program
20/01/16
KU1072/Pengenalan ,eknologi
-n.ormasi B 41
-oureode
Programmer
mem"uatsour%e %ode
Compiler
?%jetode
alam "a!asapemrograman tingkat
tinggi mis ++
Pas%al ortran
kompilasi
sour%e %ode
menadi
o"e%t %ode
alam "a!asa
mesin
Penggunaink
@Aeuta%le ode
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
42/84
Contoh Kompilasi dan@ksekusi
20/01/16
KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural 42
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
43/84
Paradigma PemrogramanProsedural
20/01/16
KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural 43
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
44/84
Paradigma Pemrograman Pemrograman/komputer adalah proses
untuk mem#ormulasi persoalan komputasimenadi program /komputer
Paradigma/pemrograman adalah sudutpandang penyelesaian persoalan dengan/program
'ontoh paradigma pemrograman: Paradigma prosedural imperatif!akan
diaarkan di kuliah ini Paradigma !erorientasi o!ek Paradigma deklarati# *ll
20/01/16
KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural 44
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
45/84
Pemrograman Prosedural Program didasari oleh strukturisasi
informasidi dalam memori danmanipulasidari in#ormasi yang disimpan
terse!ut
20/01/16
KU1072/Pengantar Berpikir Komputasi dan
Pemrograman Prosedural 45
Program &lgoritma -truktur ataProgram &lgoritma -truktur ata
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
46/84
Berpikir Prosedural
+eumlah aksi dialankan se%ara !erurutan;sekuensial?
+etiap aksi akan mem!erikan e#ek
eksekusi tertentu )ksi harus selesai ;tidak !isa terus"
menerus? harus ada kontrakmulai danselesai3elas keadaan a+al initial state!
3elas keadaan akhir Dnal state!
KU1072/Pengantar Berpikir Komputasi dan
Pemrograman Prosedural20/01/16 46
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
47/84
Contoh$1
*emasak Kentang untuk *akan*alam Untuk makan malam4 seumlah kentang
harus dikupas dan dimasak
Keadaan awal: kantong kentang tersedia didapur Belum elas apakah kentang tersedia %ukup atau
tidak
Keadaan akhir: masakan dengan !ahandasar kentang tersedia dan siapdihidangkan untuk makan malam
20/01/16
KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural 47
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
48/84
*emasak kentang untuk makan
malam
KU1072/Pengantar Berpikir Komputasi dan
Pemrograman Prosedural
Kentang
tersedia)
Kupas Kentang
Beli kentang
$au
dimasak
apa)
oreng )8e"us )
9up )
:a
,idak
20/01/16 4&
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
49/84
*enuliskan &lgoritma
20/01/16
KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural 4'
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
50/84
-truktur asar Program
Prosedural
20/01/16
KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural 50
ProgramL3udulProgramR +pesiNkasi Program S
K&*U-
R *eklarasi type4 -aria!el4 konstanta4#ungsi4 prosedur S
&:?EIT*&R *eretan langkah algoritmik untuk
penyelesaian persoalan SR *apat meman#aatkan Fo+hart$ notasialgoritmikS
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
51/84
!low hartiagram &lir!
KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural
9elesai9elesai$ulai$ulai
ProsesProses
PilihanPilihan
AlurAlur
AlurAlur
pilihanpilihan
Pilihan
20/01/16 51
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
52/84
Contoh$1
*emasak Kentang untuk *akan*alam
20/01/16
KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural 52
ProgramMakanMalamR Mempersiapkan dan memasak kentang untukmakan malam SR Keadaan awal: kantong kentang tersedia didapur SR Keadaan akhir: masakan dengan !ahan dasarkentang tersedia dan siap dihidangkan untuk
makan malamS
K&*U- R !elum digunakan S
&:?EIT*&
R ow%hart dan notasi algoritmik lihat pada
Glo+hart
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
53/84
Glo+hart*emasak Kentang untuk *akan
*alam
KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural
Beli KentangKentang,ersedia)
oreng Kentangoreng Kentang
,idak
:a
9elesai9elesai
$ulai$ulai
Kupas KentangKupas Kentang
imasakimasak
apa)apa)
8e"us Kentang8e"us Kentang
Buat 9upBuat 9up
goreng
re"us
sup
Beli KentangBeli KentangKentangKentang
,ersedia),ersedia)
20/01/16 53
)otasi &lgoritmik
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
54/84
)otasi &lgoritmik*emasak Kentang untuk *akan
*alam
20/01/16
KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural 54
if kentang_tersedia? = tidak thenBeli_Kentang
{ Di titik ini kentang sudah tersedia }
Kupas_Kentangif pilihan_masakan = gorengthen
Goreng_Kentangelse if pilihan_masakan = rebus then
Rebus_Kentangelse { pilihan_masakan = sup }
Buat_Sup
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
55/84
Contoh$2Per%aikan 9am inding
Keadaan awal: 3am dinding tidakmenunukkan waktu yang tepat
Keadaan akhir: 3am dinding menunukkan
waktu yang tepat Bila arum tidak !ergerak4 ganti !aterai
3ika !ergerak !erarti Baterai masih hiduptinggal dilakukan per!aikan letak arum am
Buat programnya dan !uatlah algoritmanyadalam ow%hart dan notasi algoritmik
20/01/16
KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural 55
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
56/84
Program Per%aikan 9am
inding
20/01/16
KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural 56
ProgramPer!aikan3am*indingR Memper!aiki am dinding yang tidak menunukkanwaktu yang tepat SR Keadaan awal: 3am dinding tidak menunukkan
waktu yang tepat SRKeadaan akhir: 3am dinding menunukkan waktuyang tepat S
K&*U-
R !elum digunakan S&:?EIT*& R ow%hart dan notasi algoritmik lihat pada slide"slide !erikutnya S
Gl h t 1
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
57/84
Glo+hart$1Per%aikan 9am
inding$ulai
;arum
Bergerak)
anti
Baterai Baru
Per"aiki ;arum
panang dan pendekpada lokasi ang tepat
,idak
:a
(pa ang sala!dengan .lo
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
58/84
Glo+hart 2Per%aikan 9am
inding$ulai
;arum
Bergerak)
anti
Baterai Baru
Per"aiki ;arum
panang dan pendekpada lokasi ang tepat
,idak
:a
9elesai
Bagaimana ika
ternata setela!dua !ari am
kem"ali tidak
tepat)20/01/16 5&KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
59/84
)otasi &lgoritmik+etara dengan Qlow%hart"2
20/01/16
KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural 5'
if jarum_bergerak? = tidak thenGanti_Baterai_Baru
{ Di titik ini jarum jam sudah pasti bergerak }Perbaiki_Letak_Jarum_Jam
Glo+hart$#
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
60/84
;arum
Bergerak)
anti
Baterai Baru
Per"aiki ;arum
panang dan
pendek padalokasi ang tepat
,idak
:a
Periksa am
setela! 2 !ari
;am tepat
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
61/84
)otasi &lgoritmik+etara dengan Qlow%hart"G
20/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural61
if jarum_bergerak? = tidak thenGanti_Baterai_Baru
{ Di titik ini jarum jam sudah pasti bergerak }repeat
Perbaiki_Letak_Jarum_JamPeriksa_Jam_Setelah_2_ari
ifjarum_jam_tepat? = tidak thenGanti_Baterai_Baruuntil(jarum_jam_tepat? = !a)
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
62/84
ata
20/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural62
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
63/84
&%straksi ata
KU1072/Pengantar Berpikir Komputasi dan
Pemrograman Prosedural
'0
Suhu Air?
Berat Badan?
KecepatanKendaraan
Bergerak
kemampuan kita untuk
menginterpretasikan
suatu data dengan
konteks masalahnya
20/01/16 63
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
64/84
Persoalan &%straksi
ata
KU1072/Pengantar Berpikir Komputasi dan
Pemrograman Prosedural
Suhu Air?Berat Badan?
Kecepatan
Kendaraan
Bergerak75
derajat
CelciusKilogram
Km/jam
kemampuan kita untukmengerti konteks dan
merepresentasikan
menjadi bentuk lain.
20/01/16 64
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
65/84
ata *ahasis+a Hs ata
Penduduk
KU1072/Pengantar Berpikir Komputasi dan
Pemrograman Prosedural
=-$#
=ama
Kota >a!ir
,anggal >a!ir=ama (a!
=ama -"u
=omor K,P#
=ama
Kota >a!ir
,anggal >a!ir=ama (a!
=ama -"u
StrukturStruktur
ataata
20/01/16 65
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
66/84
Bahasa PemrogramanProsedural
20/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural66
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
67/84
Bahasa Pemrograman
Prosedural )da EIBU&)!ahasa pemrograman di duniasaat ini termasuk !ahasa pemrogramanprosedural
Tidak mungkin semua !ahasa pemrograman
dipelaari di kuliah
leh karena itu yang diaarkan adalah 9!elaarpemrograman melalui pola pikirkomputasional dan paradigma
pemrograman prosedural
Bahasa pemrograman yang diaarkan '$'JJ4Pas%al
20/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural67
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
68/84
Contoh$# *enghitung
Ta%ungan Ta!ungan di !ank selalu !ertam!ah setiap tahun Bank memiliki !unga yang setiap tahun
!ertam!ah B8I memiliki !unga tahunan 10 per tahun
Untuk uang 100 ri!u4 maka setelah satu tahun akanmenadi 110 ri!u
Buatlah program yang menghitung uang kitasetelah satu tahun
Program akan menanyakan uang kita saat ini4kemudian program akan menampilkan uang kitasetelah satu tahun
KU1072/Pengantar Berpikir Komputasi dan
Pemrograman Prosedural20/01/16 6&
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
69/84
Contoh @ksekusi Program *enghitung
Ta%ungan
KU1072/Pengantar Berpikir Komputasi dan
Pemrograman Prosedural
Masukkan tabungan:1000
Tahun Depan =1100
20/01/16 6'
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
70/84
Bagaimana Programdi%uat.
KU1072/Pengantar Berpikir Komputasi dan
Pemrograman Prosedural
20/01/16 70
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
71/84
Program *enghitung
Ta%ungan
20/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural71
ProgramMenghitungTa!unganR Menghitung ta!ungan setelah 1 tahun!erdasarkan masukan dari pengguna S
K&*U-
8ilaiTa!ungan : real R nilai simpanan dalamta!ungan4 dlm rupiah S
&:?EIT*&
R ow%hart dan notasi algoritmik lihat pada slide"slide !erikutnya S
Glo+hart$1 *enghitung
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
72/84
g gTa%ungan
20/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural72
mulai
selesai
input;8ilaiTa!ungan?
8ilaiTa!ungan = 8ilaiTa!unganJ ;8ilaiTa!ungan 01?
output;8ilaiTa!ungan?
Input -aria!el
8ilaiTa!ungan darikey!oard ;masukan
pengguna?
Mengu!ah nilai -aria!el
8ilaiTa!ungan sesuairumus
Menampilkan isi -aria!el8ilaiTa!ungan saat ini
;setelah perhitungan? kemonitor
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
73/84
)otasi &lgoritmik$1
*enghitung Ta%ungan
20/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural73
input( !ilaiTabungan )
!ilaiTabungan !ilaiTabungan " ( !ilaiTabungan #0$1 )
output ( !ilaiTabungan )
Glo+hart$2 *enghitung
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
74/84
g gTa%ungan
20/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural74
mulai
selesai
input;8ilaiTa!ungan?
8ilaiTa!ungan = 8ilaiTa!unganJ ;8ilaiTa!ungan 01?
output;8ilaiTa!ungan?
Menampilkan ke layartulisan 9Masukkan
ta!ungan
Menampilkan ke layartulisan 9Tahun depan
=
output;9Masukkanta!ungan:?
output;9Tahun depan=?
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
75/84
)otasi &lgoritmik$2
*enghitung Ta%ungan
20/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural75
output (%Masukkan tabungan:&)input( !ilaiTabungan )
!ilaiTabungan !ilaiTabungan " ( !ilaiTabungan # 0$1 )
output(%Tahun depan =&)output ( !ilaiTabungan )
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
76/84
KU1072/Pengantar Berpikir Komputasi dan
Pemrograman Prosedural
input(!ilaiTabungan)!ilaiTabungan !ilaiTabungan" (!ilaiTabungan # 0$1)output( !ilaiTabungan )
Program &lgoritma -truktur atProgram &lgoritma -truktur at
)lgoritma
+truktur
*ata
20/01/16 76
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
77/84
Kode Program Bahasa C
KU1072/Pengantar Berpikir Komputasi dan
Pemrograman Prosedural
input(!ilaiTabungan)
!ilaiTabungan !ilaiTabungan " (!ilaiTabungan # 0$1)
output(!ilaiTabungan)
'in !ilaiTabungan
!ilaiTabungan = !ilaiTabungan "
!ilaiTabungan # 0$1
'ut ** !ilaiTabungan
cin: Console Input
(diketikkan lewat
keyboard)
cout: Console Output
20/01/16 77
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
78/84
Kode Program Bahasa Pasal
KU1072/Pengantar Berpikir Komputasi dan
Pemrograman Prosedural
input(!ilaiTabungan)
!ilaiTabungan + !ilaiTabungan " (!ilaiTabungan #0$1)
output(!ilaiTabungan)
readln(!ilaiTabungan)
!ilaiTabungan := !ilaiTabungan "!ilaiTabungan # 0$1
,riteln(!ilaiTabungan)
readln akan
membaca dari hasil
ketik di keyboard
writeln akan menulis
hasil di layar
komputer
20/01/16 7&
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
79/84
Kode Program Bahasa Gortran
KU1072/Pengantar Berpikir Komputasi dan
Pemrograman Prosedural
read #- !ilaiTabungan
!ilaiTabungan = !ilaiTabungan "
!ilaiTabungan # 0$1
print #- !ilaiTabungan
read akan membaca
dari hasil ketik di
keyboard
print akan menulis hasil di
layar komputer
Tanda * mengindikasikan
keluaranmasukan standard(keyboardlayar)
20/01/16 7'
input(!ilaiTabungan)!ilaiTabungan + !ilaiTabungan " !ilaiTabungan #10.
output(!ilaiTabungan)
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
80/84
Program engkap )otasi
&lgoritmik!
20/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural
&0
ProgramMenghitungTa!unganR Menghitung ta!ungan setelah 1 tahun!erdasarkan masukan dari pengguna S
K&*U-
8ilaiTa!ungan : real R nilai simpanan dalamta!ungan4 dlm rupiah S
&:?EIT*&
input; 8ilaiTa!ungan ?8ilaiTa!ungan 8ilaiTa!ungan J
; 8ilaiTa!ungan 01 ?output; 8ilaiTa!ungan ?
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
81/84
Program engkap C!
20/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural
&1
ProgramMenghitungTa!unganR Menghitung ta!ungan setelah 1 tahun!erdasarkan masukan dari pengguna S
K&*U-
8ilaiTa!ungan : real R nilai simpanan dalamta!ungan4 dlm rupiah S
&:?EIT*&
input; 8ilaiTa!ungan ?8ilaiTa!ungan 8ilaiTa!ungan J
; 8ilaiTa!ungan 01 ?output; 8ilaiTa!ungan ?
// rgram MenghitungTabungan// Menghitung tabungan setelah 1 tahun berdasarkan// masukan dari penggunain'lude *istreamusing namespa'e std
int main() { // 23M45 flat !ilaiTabungan
// 36789TM3 'in !ilaiTabungan !ilaiTabungan = !ilaiTabungan " !ilaiTabungan # 0$1 'ut ** !ilaiTabungan return 0}
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
82/84
Program engkap Pasal!
20/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural
&2
ProgramMenghitungTa!unganR Menghitung ta!ungan setelah 1 tahun!erdasarkan masukan dari pengguna S
K&*U-
8ilaiTa!ungan : real R nilai simpanan dalamta!ungan4 dlm rupiah S
&:?EIT*&
input; 8ilaiTa!ungan ?8ilaiTa!ungan 8ilaiTa!ungan J
; 8ilaiTa!ungan 01 ?output; 8ilaiTa!ungan ?
rgram MenghitungTabungan{ Menghitung tabungan setelah 1 tahun berdasarkan
masukan dari pengguna }
{ 23M45 };ar !ilaiTabungan : real
{ 36789TM3 }begin
readln(!ilaiTabungan) !ilaiTabungan := !ilaiTabungan " !ilaiTabungan # 0$1 ,riteln(!ilaiTabungan)end$
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
83/84
Program engkap Gortran!
20/01/16KU1072/Pengantar Berpikir Komputasi
dan Pemrograman Prosedural
&3
ProgramMenghitungTa!unganR Menghitung ta!ungan setelah 1 tahun!erdasarkan masukan dari pengguna S
K&*U-
8ilaiTa!ungan : real R nilai simpanan dalamta!ungan4 dlm rupiah S
&:?EIT*&
input; 8ilaiTa!ungan ?8ilaiTa!ungan 8ilaiTa!ungan J
; 8ilaiTa!ungan 01 ?output; 8ilaiTa!ungan ?
rgram MenghitungTabungan< Menghitung tabungan setelah 1 tahun berdasarkan< masukan dari pengguna
< 23M45
real :: !ilaiTabungan
< 36789TM3 read #- !ilaiTabungan !ilaiTabungan := !ilaiTabungan " !ilaiTabungan # 0$1 print #- !ilaiTabungan
end prgram itung4angDi>ank
-
7/25/2019 KU1072 Mgg01 PengantarBerpikirKomputasi 160815
84/84
Terima Kasih