Upload
pulung-surya-prayoga
View
2.649
Download
3
Embed Size (px)
DESCRIPTION
tugaz struktur algoritma.....gyahahaha,, moga bermanfaat
Citation preview
STRUKTUR DASAR ALGORITMA
By Pulung Surya PrayogaL2H008059
exit
Struktur Runtutan (Sequence Structure)
Struktur Perulangan (Repetition Structure)
Struktur Percabangan (Selection Structure)
exit back
STRUKTUR RUNTUTAN
Dengan Struktur runtunan, berarti : Setiap instruksi akan dikerjakan satu persatu Setiap instruksi dilaksanakan tepat satu kali, tidak ada instruksi
yang diulang maupun tidak dilaksanakan Urutan instruksi yang dilaksanakan pemroses sama dengan
urutan aksi sebagaimana yang tertulis di dalam teks algoritmanya
Akhir dari instruksi terakhir merupakan akhir algoritma Bila runtunan instruksi dalam algoritma berturut-turut
dilambangkan dengan A1, A2, A3, A4, dan A5, maka pelaksanaan instruksi tersebut adalah : A1→A2→A3→A4→A5
Contoh
back
STRUKTUR PERCABANGAN
Pernyataan percabangan memungkinkan suatu pernyataan dieksekusi hanya jika suatu kondisi terpenuhi atau tidak terpenuhi Contoh : Jika mau nonton film, maka belilah tiketnya Jika suatu bilangan habis dibagi 2, maka bilangan itu adalah
bilangan pastilah bilangan genap Bentuk instruksi percabangan
Instruksi IF Pernyataan IF Sederhana Pernyataan IF-ELSE Pernyataan IF Bersarang
Instruksi CASE
back
STRUKTUR PERULANGAN
Pemrograman untuk melakukan suatu proses yang berulang-ulang, jika suatu kondisi dipenuhi atau tidak
Proses ini biasanya digunakan, untuk : Mengulang proses pamasukan data Mengulang proses perhitungan Mengulang proses penampilan hasil
pengolahan data
back next
Struktur perulangan terdiri dari 2 bagian : Kodisi pengulangan, yaitu ekspresi boolean
yang harus dipenuhi untuk melaksanakan pengulangan
Badan (body) pengulangan, yaitu satu atau lebih aksi yang akan diulang
Disamping itu biasanya disertai dengan : Inisialisasi, yaitu aksi yang dilakukan sebelum
pengulangan dilakukan pertama kali Terminasi, yaitu aksi yang dilakukan setelah
pengulangan selesai dilaksanakan
back next
Bentuk instruksi perulangan : Instruksi FOR - NEXT
FOR-NEXT Tunggal FOR-NEXT Tersarang
Instruksi WHILE – WEND Instruksi DO - LOOP
DO WHILE - LOOP DO UNTIL - LOOP DO – LOOP WHILE DO – LOOP UNTIL
back
Contoh
1. Algoritma untuk menghitung luas segitiga Input(alas,tinggi) Luas ? 1/2*alas*tinggi Output(Luas)
2. Algoritma untuk menghitung sisi miring segitiga siku sikuInput(alas,tinggi) Sisimiring? sqrt(alas^2 +tinggi^2) Output(Sisimiring)
3. Algoritma untuk mengkonversi input Jam, Menit, dan Detik, ke total detikInput(Jam,Menit,Detik) TotalDetik ? Jam*3600 + Menit*60 + Detik Output(TotalDetik)
back
Instruksi If
Secara umum flow chartnya sebagai berikut :
If condition
statement true
statement
Statement false
back
Pernyataan if sederhana
Bentuk: IF <kondisi> THEN
<pernyataan> ENDIF
Pernyataan IF dengan Syarat Tunggal Instruksi untuk memeriksa sebuah kondisi saja Contoh :
IF komentar$=”coba” THEN Output(“Anda memasukan kata yang benar”)
ENDIF
back next
Pernyataan IF dengan Syarat Majemuk
Digunakan operator AND dan OR
Contoh :
IF nilai = “A” OR nilai = “B” THEN
Output(“Anda dapat mengikuti tes asisten”)
ENDIF
atau
IF nilai<=100 AND nilai>=80THEN
Output(“Nilai mata kuliah Anda A”)
ENDIF
back next
Pemeriksaan Data String
Digunakan operator >, >=, <, <=, =, <> untuk mendeteksi nilai ASCII dari data tersebut
Contoh :
IF sandi$=”Hs” THEN
Output(“Silahkan akses program ini”)
ENDIF
IF data$<”a” THEN
Output(“Huruf kapital”)
ENDIF
back
Pernyataan if-else
Bentuk:
IF <kondisi> THEN
<pernyataan_1>
ELSE
<pernyataan_2>
ENDIF
back next
Contoh :
IF x>0 THEN
Output(“X adalah bilangan positif”)
ELSE
Output(“X adalah bilangan negatif”)
ENDIF
IF tahun mod 4=0 THEN
Output(“Tahun tersebut tahun kabisat”)
ELSE
Output(“Bukan tahun kabisat”)
ENDIF
back
Pernyataan if bersarang
Bentuk : IF <kondisi_1> THEN
<pernyataan_1> ELSE
IF <kondisi_2> THEN <pernyataan_2>
ELSE IF <kondisi_3> THEN
<pernyataan_3> . . .
ELSE <pernyataan_m>
ENDIF ENDIF
ENDIF
back next
Contoh :
IF beli>=100000 THEN
Output(“Diskon 10%”)
ELSE
IF beli>=500000 THEN
Output(“Bonus piring”)
ELSE
IF beli>=100000 THEN
Output(“Bonus gelas”)
ELSE
Output(“Tidak ada bonus”)
ENDIF
ENDIF
ENDIF
back
Instruksi case
Alternatif dari pernyataan IF untuk masalah dengan pilihan ganda Semua masalah yang bisa CASE pasti bisa ditangani oleh IF, tetapi tidak
sebaliknya Bentuk:
SELECT CASE <ekspresi> CASE <ekspresi_1>
<blok instruksi_1> [CASE <ekspresi_2>
<blok instruksi_2> ...
[CASE ELSE] <blok instruksi_m>
END SELECT
back
Instruksi FOR NEXT
Digunakan untuk mengeksekusi suatu baris/blok instruksi secara berulang-ulang selama kondisi terpenuhi
Kondisi yang digunakan untuk menguji hanya sebatas perhitungan menambah/mengurangi isi variabel counter dengan STEP tertentu
Jumlah perulangan diketahui secara pasti (n kali) Jumlah perulangan = nilai_akhir – nilai_awal + 1 Bentuk instruksi :
FOR variable_counter = nilai_awal TO nilai_akhir [STEP nilai naik/turun] <blok instruksi/pernyataan>
NEXT variable_counter
back
Instruksi FOR-NEXT tunggal
Instruksi untuk perulangan yang hanya menggunakan sebuah counter
Contoh : menampilkan bilangan bulat 1 ..100 menampilkan “hallo” 10 kali menampilkan angka 0 .. n menjumlahkan deret 1+2+3+…+n menghitung rata-rata bilangan menghitung perpangkatan (an) menghitung faktorial (n!)
back
Instruksi FOR-NEXT bersarang
Urutan instruksi dimulai dari kalang yang paling dalam
Syarat yang harus dipenuhi : Setiap kalang tidak boleh menggunakan
variabel counter yang samaAntara kalang-kalang tersebut tidak boleh
saling berpotongan (overlapping)
back
Kalang Kalang yang berpotongan, contohnya :
FOR I = 1 TO 10 FOR J = 1 TO 10 PRINT I,J NEXT I NEXT J
Kalang yang menggunakan variabel counter yang sama, contohnya: FOR J = 1 TO 10 FOR J = 1 TO 10 PRINT J,J NEXT J NEXT J
Kalang yang tersarang, contohnya : FOR I = 1 TO 10 FOR J = 1 TO 10 PRINT J,I NEXT J NEXT I
back
Instruksi WHILE-WEND
INSTRUKSI Proses berulang selama sebuah kondisi terpenuhi Proses berulang tidak diketahui jumlahnya
Bentuk Instruksi : WHILE <kondisi>
<blok pernyataan> WEND
Bentuk ini identik dengan DO WHILE – LOOP
back
Instruksi DO-LOOP
INSTRUKSI DO - LOOP Mempunyai fungsi yang sama dengan WHILE–WEND, yaitu melakukan
operasi perulangan, tetapi untuk penulisan kondisinya dapat dilakukan secara fleksibel
Proses berulang tidak diketahui jumlahnya Bentuk Umum:
DO [ WHILE / UNTIL kondisi ] LOOP
DO LOOP [ WHILE / UNTIL kondisi ]
Perbedaannya : Kondisi diperiksa dulu, bila memenuhi syarat, maka instruksi akan
dilaksanakan. Minimal proses instruksi dilaksanakan sekali, baru pemeriksaan kondisi
penulisan
back
Instruksi DO WHILE-LOOP
Instruksi DO WHILE – LOOP Pengulangan dilakukan selama kondisi bernilai benar Pengujian dilakukan sebelum blok pernyataan
dijalankan
Bentuk Instruksi :
DO WHILE <kondisi>
<blok pernyataan>
LOOP
back next
Contoh:
Algoritma untuk menjumlahkan deret 1 + 2 + 3 +….+ N Input (N)
Jml ← 0
Angka ← 1
DO WHILE Angka <=N
Jml ← Jml + Angka
Angka ← Angka + 1
LOOP
Output(Jml)
END
back
Instruksi DO UNTIL-LOOP
Instruksi DO LOOP - UNTIL Pengulangan dilakukan selama kondisi bernilai salah Pengujian dilakukan setelah blok pernyataan
dijalankan, sehingga minimal sekali pernyataan akan dieksekusi
Bentuk Instruksi : DO LOOP
<blok pernyataan> UNTIL<kondisi>
back next
Contoh :
Algoritma untuk menjumlahkan deret 1+2+3+….+N Input (N)
Jml ← 0
Angka ← 1
DO UNTIL Angka >N
Jml ← Jml + Angka
Angka ← Angka + 1
LOOP
Output(Jml)
END
back
Instruksi DO LOOP-WHILE
Pengulangan dilakukan selama kondisi bernilai benar
Pengujian dilakukan setelah blok pernyataan dijalankan, sehingga minimal sekali pernyataan akan dieksekusi
Bentuk Instruksi : DO LOOP
<blok pernyataan>WHILE <kondisi>
back next
Contoh : Algoritma untuk menjumlahkan deret 1+3+5+….+Un
Input(Un)
Jml ← 0
Angka ← 1
DO
Jml ← Jml + Angka
Angka ← Angka + 2
LOOP WHILE Angka <=Un
Output(Jml)
END
back
Instruksi DO LOOP-UNTIL
Pengulangan dilakukan selama kondisi bernilai salah
Pengujian dilakukan setelah blok pernyataan dijalankan, sehingga minimal sekali pernyataan akan dieksekusi
Bentuk Instruksi : DO LOOP
<blok pernyataan> UNTIL<kondisi>
back next
Contoh : Algoritma untuk mengakses, dengan password maksimal melakukan kesalahan 3 kali
Password$ ← ”sP”
DO
IF N>3 THEN
EXIT DO
END IF
Input(Pass$)
N = N + 1
LOOP UNTIL Pass$ = Password$
IF N>3 THEN
Output(“Akses ditolak”)
ELSE
Output(“Selamat Bergabung”)
END IF
END
back