m:w4ww4n
CONTROL STRUCTURES
SEQUENTIAL/ URUTAN Program dijalankan mulai dari perintah paling atas/ awal sampai paling akhir secara berurutan/ sekuensial. BRANCHING/ PERCABANGAN Penyeleksian kondisi (TRUE/ FALSE) untuk menentukan proses selanjutnya LOOPING/ PERULANGAN Mengulangi proses selama syarat/ kondisi tertentu terpenuhi
SEQUENTIAL/ URUTAN
Entry Action 1
Action 2
Action 3
Exit
BRANCHING/ PERCABANGAN
Entry Condition 1 TRUE FALSE
Action 3
Exit
LOOPING/ PERULANGAN
Entry
Action 1
Action 2 Looping 1 Y Y if 1 T if 2
Looping 2
T Action 3 Exit
IF - ELSE
Biasa digunakan untuk seleksi nilai/ data Kondisi jamak ((kondisi_1) &&/ || (kondisi_2)) if (kondisi=TRUE) jalankan_statement_ini if (kondisi=TRUE) statement_1 else statement_2 // if kondisi=FALSE if (kondisi=TRUE) statement_1 else if (kondisi=TRUE) statement_2 else statement_3 // if kondisi=FALSE if (kondisi=TRUE) if (kondisi=TRUE) nested_statement
SWITCH - CASE
Biasa digunakan untuk membuat menu dalam program
switch (variabel_pilihan) { case nilai_1 : statemen_1; break; case nilai_2 : statemen_2; break; case nilai_3 : statemen_3; break; default: statemen_default; }
Bisa berbentuk nested/ bersarang
LOOP FOR
Syntax source code lebih ringkas Biasa dipakai untuk perulangan yang sudah jelas
jumlah perulangannya
NESTED LOOP
Perulangan bersarang (terjadi di dalam perulangan) Yang biasa dipakai adalah loop FOR karena lebih mudah & ringkas Contoh kasus yang sering dipakai adalah pengolahan tampilan, angka dan matrik
for(int i=1; i<=5; i++) { for(int j=1; j<=i; j++) print(%d , j); print(\n); }
FUNGSI
Adalah subrutin/ subprogram/ potongan program Mempunyai tugas tertentu Mempunyai bagian RETURN VALUE dan
grade >= 60
true
print Passed
false
Statement Print dieksekusi dan program dilanjutkan ke statement berikutnya Jika kondisi false Statement Print diabaikan dan program dilanjutkan ke statement berikutnya Dalam bahasa C:
kondisi false Contoh pseudocode: If students grade is greater than or equal to 60 Print Passed else Print Failed Contoh Flowchart:
false grade >= 60 true
print Failed
print Passed
if ( grade >= 60 ) printf( "Passed\n"); else printf( "Failed\n"); Ternary conditional operator (?:) Memerlukan tiga argumen (kondisi, nilai jika true, nilai jika false) Contoh di atas dapat ditulis sbb: printf( "%s\n", grade >= 60 ? "Passed" : "Failed" ); Atau dapat ditulis sbb: grade >= 60 ? printf( Passed\n ) : printf( Failed\n );
statement seleksi ifelse di dalam statement ifelse Sekali kondisi terpenuhi, sisa statement lainnya dilewatkan/diabaikan Contoh pseudocode: If students grade is greater than or equal to 90 Print A else If students grade is greater than or equal to 80 Print B else If students grade is greater than or equal to 70 Print C else If students grade is greater than or equal to 60 Print D else Print F
Compound statement Ada lebih dari satu statement/aksi yang harus dieksekusi setelah suatu kondisi dipenuhi Sering disebut juga blok karena ditandai dengan pasangan { dan } Contoh: if ( grade >= 60 ) printf( "Passed.\n" );
else { printf( "Failed.\n" ); printf( "You must take this course again.\n" ); } Tanpa tanda kurung kurawal, statement printf( "You must take this course again.\n" ); Akan dieksekusi secara otomatis.
case b false . . .
case b action(s)
break
true
case z action(s)
break
selama kondisi tetap true Psuedocode: While there are more items on my shopping list Purchase next item and cross it off my list while loop diulang hingga kondisi menjadi false Contoh: product = 2; while ( product <= 1000 ) product = 2 * product;
false
Add the grade into the total Add one to the grade counter Set the class average to the total divided by ten Print the class average
karakter, angka, atau tombol di keyboard sebagai tanda. Misalnya Q untuk exit.
Loop diulang hingga mencapai sentinel tersebut
Contoh
Requirement Buat sebuah algoritma untuk memilih bilangan terbesar dari 3 buah bilangan Nantinya ini bisa digeneralisir menjadi n buah bilangan
Ambil bilangan pertama dan set maks sama dengan bilangan pertama Ambil bilangan kedua dan bandingkan dengan maks Apa bila bilangan kedua lebih besar dari maks, set maks sama dengan bilangan kedua Ambil blangan ketiga dan bandingan dengan maks Apabila bilangan ketiga lebih besar dari maks, set maks sama dengan bilangan ketiga Variabel maks berisi bilangan terbesar. Tayangkan hasilnya
Mulai
Ya
Tidak
Ya
Tidak
Selesai
Pseudocode
Mendapatkan nilai maksimal dari sejumlah nilai ujian for i = 1 10 input nilai[i] endfor max nilai[1] for j = 2 10 if (nilai[j] > max) max = nilai[j] endif endfor print max
Pseudocode
Contoh: menentukan bilangan terbesar dari dua
bilangan
input bilangan1 input bilangan2 if (bilangan1 > bilangan2) do step 4 otherwise do step 5 print bilangan1 print bilangan2
Flowchart
Start input b1
input b2
Y
b1 > b2 ? N print b1
End
Contoh Algoritma 2
Mencari akar bulat positif dari bilangan bulat (integer) positif a: Masukkan bilangan bulat positif a Berikan harga awal x sama dengan 1 Hitung y sebesar x * x Jika y sama dengan a maka cetak x sebagai akar dari a. Selesai Tambah nilai x dengan 1 Pergi ke langkah 3.
Flowchart
Start
input a x=1 Y=x*x Y If y<=a N print a tidak punya akar bulat If y=a Y print akar dari a=x x=x+1
End
Tugas Dikumpulkan
Jelaskan apa yang dimaksud dengan: algoritma, pemrograman, program,bahasa pemrograman, programmer,flowchart,pseudocode. Buat pseudecode & flowchart untuk kasus berikut: Menghitung nilai terkecil,terbesar,rata-rata,median dari 5 bilangan jumlah bilangan dibawah 1000 yang habis dibagi 3 dan 5 Buatlah algoritma untuk menentukan apakah 3 bilangan (a, b dan c) merupakan triplet phytagoras (a2 = b2 + c2)
Tugas dikirim email ke wa2n@uns.ac.id dalam format msword/doc beri nim dan nama, dikumpulkan paling lambat pertemuan berikutnya Materi bisa di download di http://wa2n.staff.uns.ac.id Y!M: w4ww4n@yahoo.com
Variabel
Digunakan untuk menyimpan data Variabel harus diisi dengan nilai persiapan terlebih
Contoh: Panjang, lebar, luas merupakan variabel yang kita butuhkan untuk mencari luas persegi panjang
pemrograman yang digunakan Memahami sintaks bahasa yang akan digunakan Menerjemahkan sesuai aturan dalam bahasa pemrograman
pemrograman dimana dalam pemberian instruksi menggunakan teks. Contoh: Quick Basic, Pascal, C, C++ Bahasa pemrograman berbasis Visual adalah bahasa pemrograman dimana dalam pendisainan dibantu komponen /objek yang dapat langsung digunakan
Event
Event adalah kejadian yang diinginkan terhadap objek
kali Membuka objek menu start di window anda klik satu kali Membuka menu di objek desktop atau lokasi lain menggunakan klik kanan
Properties
Properties berfungsi untuk menentukan sifat dari suatu objek. Arti sifat seperti warna, jenis huruf, ukuran huruf, gambar latar belakang, menghidupkan atau mematikan menu.
Contoh :
Latar belakang desktop dapat diganti gambar melalui menu properties desktop Warna dari window dapat juga anda atur melalui desktop Bentuk tampilan di window dapat anda ubah melalui template(cetakan) yang disediakan
Methode
Methode adalah susunan perintah yang dikerjakan bila
program (susunan perintah) untuk menampilkan menu start dijalankan. Bila icon di desktop dklik dua kali maka akan dijalankan program(susunan perintah) memanggil file sesuai dengan file yang telah didaftarkan
Fungsi IF
Prinsip Fungsi IF digambarkan notasi flowchart sebagai berikut :
If <kondisi> Then <jika kondisi terpenuhi> Proses 1
<kondisi> <jika kondisi terpenuhi> <kondisi>
Proses 1