ALGORITMA DAN PEMROGRAMAN
Materi-Materi 1. RUNTUNAN 2. PERCABANGAN a. SATU KASUS (1 KONDISI 1 AKSI) b. DUA KASUS (1 KONDISI 2 AKSI) c. TIGA KASUS ATAU LEBIH (BANYAK KONDISI BANYAK AKSI) d. CASE OF 3.PENGULANGAN a. FOR I TO N b. WHILE ... DO c. REPEAT ... UNTIL
RUNTUNAN Runtunan adalah struktur algoritma paling dasar yang berisi rangkaian instruksi yang diproses secara sekuensial,satu per satu,mulai dari instruksi pertama sampai terakhir.
RUNTUNAN Flow Chart ALGORITMA Masukkan a,b Total1←a+b Total2 ←a-b Tukar nilai Total1 dengan Total2 Total1 ←Total1+Total2 Total2 ←Total1-Total2 Total1 ←Total1-Total2 5. Tulis nilai Total1 dengan Total2 yang telah ditukar
RUNTUNAN SYNTAX Pseudocode PROGRAM Penjumlahan serta pertukaran nilai DEKLARASI Var A,b : integer Total1,total2 : integer ALGORITMA Begin Write (“nilai a”) Read (a) Write (“nilai b”) Read (b) TOTAL1←A+B TOTAL2 ←A-B {PERTUKARAN NILAI} Total1 ←total1+total2 total2 ←total1-total2 total1 ←total1-total2 Write (“total1,total2”) End. SYNTAX
RUNTUNAN Program
PEMILIHAN Pemilihan adalah progaram yang hanya dapat dieksekusi jika memenuhi syarat dan kondisi tertentu dibagi menjadi 3 macam: 1 kondisi 1 aksi (if... then) 1 kondisi 2 aksi (if... then else) 2 kondisi 3 aksi atau lebih (if... then else if...)
1KONDISI 1 AKSI (IF...THEN) FLOW CHART ALGORITMA Masukkan bil1,bil2 Jika bil1 > bil2 maka X ←bil1-bil2 Tulis hasil x TIDAK YA
1KONDISI 1 AKSI (IF...THEN) SYNTAX Pseudocode PROGRAM pengurangan 2 bilangan DEKLARASI Var bil1,bil2 : integer X : integer ALGORITMA begin Write (“bilangan 1”) read (bil1) Write (“bilangan 2 ) read (bil2) If bil1 >bil2 then x←bil1-bil2 Write (“x”) End.
1KONDISI 1 AKSI (IF...THEN) Program
1 KONDISI 2 AKSI (IF...THEN ELSE) ALGORITMA Masukkan bil1,bil2 Jika bil1 > bil2 maka tulis bil1 maksimal Selain itu tulis bil2 maksimal Tulis nilai maksimum Flow Chart YA TIDAK
1 KONDISI 2 AKSI (IF...THEN ELSE) Pseudocode PROGRAM menentukan bilangan maksimum dari 2 bilangan DEKLARASI Var bil1,bil2 : integer max : integer ALGORITMA begin Write (“bilangan 1”) read (bil1) Write (“bilangan 2”) read (bil2) If bil1 > bil2 then max←bil1 Else max←bil2 Write (“max”) End. SYNTAX
1 KONDISI 2 AKSI (IF...THEN ELSE) Program
2 KONDISI 3 AKSI ATAU LEBIH (IF...THEN ELSE IF...) Flow Chart ALGORITMA Masukkan n1,n2,n3,n4,n5 x←(n1+n2+n3+n4+n5)/5 Jika (x > 79) dan (x <= 100) maka tulis score A Jika (x > 69) dan (x < 80) maka tulis score B Jika (x > 59) dan (x < 70) maka tulis score C Jika (x > 49) dan (x < 60) maka tulis score D Selain itu tulis score E Tulis score dari nilai x YA TIDAK YA TIDAK YA TIDAK YA TIDAK
2 KONDISI 3 AKSI ATAU LEBIH (IF...THEN ELSE IF...) Pseudocode PROGRAM pengkategorian nilai DEKLARASI Var n1,n2,n3,n4,n5 : integer x : integer ALGORITMA begin Write (“nilai1”) read (n1) Write (“nilai2”) read (n2) Write (“nilai3”) read (n3) Write (“nilai4”) read (n4) Write (“nilai5”) read (n5) x←(n1+n2+n3+n4+n5)/5 if (x>79) and (x<=100) then write (“score A”) else if (x>69) and (x<80) then write (“score B”) else if (x>59) and (x<70) then write (“score C”) else if (x>49) and (x<60) then write (“score D”) else write (“score E”) Write (“nilai”) End. SYNTAX
2 KONDISI 3 AKSI ATAU LEBIH (IF...THEN ELSE IF...) Program
CASE OF ALGORITMA Flow Chart Masukkan kategori tinggi badan Kasus dari nomor_tinggi 1←tulis rendah 2←tulis sedang 3←tulis tinggi 4←tulis sangat tinggi 3. Ataupun tulis badan atau tiang tu 4. Tulis hasil kategori tinggi badan TIDAK TIDAK TIDAK TIDAK YA YA YA YA
CASE OF SYNTAX Pseudocode PROGRAM tinggi_badan DEKLARASI Var nomor_tinggi : integer ALGORITMA begin write (“masukkan kategori tinggi badan (1-4)”) read (nomor_tinggi) case nomor_tinggi of 1 : write (“rendah”) 2 : write (“sedang”) 3 : write (“tinggi”) 4 : write (“sangat tinggi”) Otherwise : write (“badan ke tiang tu”) End. SYNTAX
CASE OF Program
PENGULANGAN Pengulangan atau kalang (repetition atau loop) adalah suatu program diulang sampai kondisi atau syarat tercapai agar dapat dieksekusi oleh komputer. Pengulangan didalam algoritma terbagi menjadi 3 macam yaitu : 1. for i to n do 2. while...do 3. repeat...until
FOR I TO N DO ALGORITMA Flow Chart Masukkan n,kata i←1 Untuk i sampai n lakukan Tulis kata yang ingin diulang
FOR I TO N DO SYNTAX Peudocode begin PROGRAM pengulangan kata DEKLARASI var n : longint kata : string i : integer ALGORTIMA write (“masukkan total pengulangan”) read (n) write (“masukkan kata”) read (kata) for i=1 to n do write (“kata”) end. SYNTAX
FOR I TO N DO Program
WHILE ... DO ALGORITMA Flow Chart Masukkan n Jumlah←0 3. i ←1 4. Sementara i <= n maka lakukan Jumlah ←jumlah+1 i ←i+1 5. Tulis Jumlah TIDAK YA
WHILE ... DO SYNTAX Pseudocode PROGRAM penjumlahan sebanyak n DEKLARASI Var n : integer jumlah : integer i : integer ALGORITMA Begin Write (“masukkan total pengulangan”) read (n) jumlah←0 i ←1 while (i <= n) do Jumlah ←jumlah+1 i ←i+1 Write (“jumlah”) End. SYNTAX
WHILE ... DO Program
REPEAT ... UNTIL Flow Chart ALGORITMA Masukkan n jumlah←0 3. i ←1 4. Ulangi jumlah ←jumlah+i*2 i ←i+1 sampai i > n 5. Tulis jumlah angka yang diulang sesuai instruksi TIDAK YA
REPEAT ... UNTIL SYNTAX Pseudocode PROGRAM repeat_until DEKLARASI Var i : integer jumlah : integer n : integer ALGORITMA Write (“masukkan total pengulangan”) read (n) jumlah←0 i ←1 repeat jumlah ←jumlah+i*2 i ←i+1 Until i > n Write (“jumlah”) SYNTAX
REPEAT ... UNTIL Program
THE END