Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Prodi S1-Sistem Komputer, F Teknik Elektro

Presentasi serupa


Presentasi berjudul: "Prodi S1-Sistem Komputer, F Teknik Elektro"— Transcript presentasi:

1 Prodi S1-Sistem Komputer, F Teknik Elektro
KUG1A3 Algoritma& Pemrograman Burhanuddin D Prodi S1-Sistem Komputer, F Teknik Elektro Universitas Telkom Presentasi 6 Skema Pemrosesan Sekuensial

2 Definisi [1] Pemrosesan “sekumpulan” informasi sejenis satu-persatu
Hasil dari suatu pengolahan akan digunakan untuk pengolahan berikutnya. Pemrosesan dilakukan mulai dari awal atau akhir dari kumpulan informasi Kumpulan informasi memiliki elemen yang terurut, artinya ada elemen sebelum ( predesessor ) dan elemen sesudah ( suksesor)..

3 Membuat Kue Lapis Kondisi Awal Hasil :

4 Perhatikan ... Proses untuk tiap tahap sama
Hasil pada suatu tahap, tergantung dari hasil tahap sebelumnya Kalau hasil pertama 1 lapis, maka hasil kedua 2 lapis Kalau hasi ketiga 3 lapis, maka pada hasil proses keempat ada 4 lapis

5 Contoh Lain : Game Aturan baku : Mainkan sampai menang atau kalah
Langkah berikut tergantung dari langkah sebelumnya.

6 Akses Kumpulan informasi itu dapat diakses dengan istilah berikut :
Call_First_Elmt: prosedur yang akan menghasilkan Elemen Pertama Call_Next_Elmt : prosedur yang akan menghasilkan elemen berikutnya Current_Elmt : Elemen yang siap diproses EOP : Tanda akhir proses

7 Contoh [1] Suatu deret bilangan integer [1,2,3,...N] dengan N=100
Setiap elemen bertipe integer Call_First_Elmt menghasilkan Current_Elmt=1 Jika Current_Elmt=2, maka Call_Next_Elmt menghasilkan Current_Elmt=3. EOP akan berharga true jika Current_Elmt=100

8 Contoh [2] type Mhs : < NIM : string, Kode:string,
Nilai : character> NIM yang diakui tidak boleh bernilai '999'.  Mark ! Diketahui sekumpulan data bertipe Mhs : <'111','TE12','A'>,<'112','TE12','B'>, <'113','TE12','C'>,<'114','TE12','A'> Call_First_Elmt membuat Current_Elmt = <'111','TE12','A'> Jika Current_Elmt data diatas, maka Call_Next_Elmt menghasilkan <'112','TE12','B'>. EOP berharga true jika Current_Elmt=<'999','',''>

9 Procedure Terdefinisi
Inisialisasi : persiapan sebelum proses dilakukan Call_First_Elmt : menghasilkan elemen pertama Proses_Current_Elmt : mengolah Current_Elmt Call_Next_Elmt : menghasilkan elemen berikutnya Terminasi : tindakan setelah semua proses selesai Proses_First_Elmt : mengolah elemen pertama Proses_Kasus_Kosong : dilakukan jika terjadi kasus kosong ( tidak ada data ) EOP : berharga true jika Current_Elmt bernilai mark ( unt model dg mark ) atau akhir elemn (tanpa mark)

10 Skema Pemrosesan {Tanpa penanganan kasus kosong secara khusus} Skema :
Inisialisasi Call_First_Elmt While not EOP do Proses_Current_Elmt Call_Next_Elmt {EOP} Terminasi

11 Skema Pemrosesan {Dengan penanganan kasus kosong} Skema :
Call_First_Elmt if EOP then Proses_Kasus_Kosong Else Inisialisasi repeat Proses_Current_Elmt Next_Elmt Until EOP Terminasi

12 Studi Kasus 1 : Jumlah 1 s/d N
Buatlah algoritma yang membaca sebuah bilangan bulat positif N seagai pencacah, menuliskan 1,2,3, ...N dan menjumlahkan N serta menuliskan hasil penjumlahannya. Inisialisasi : membaca pencacah N Proses1 : menuliskan 1,2,3, ...N Proses2: menjumlahkan N Terminasi : menuliskan hasil penjumlahannya.

13 Studi Kasus 1 (lanjutan)
Pendetailan Inisialisasi : membaca pencacah N Memberikan nilai awal variabel lain Menetapkan skema pengulangan Memakai while, for atau …? Menetapkan logika penghentian loop Menetapkan variabel pengulangan dan nilai EOP

14 Studi Kasus 1 (lanjutan)
Pendetailan Proses1 : menuliskan 1,2,3, ...N Menetapkan variabel penulisan, misal I Menuliskan  output Output (i) Proses2: menjumlahkan N Menetapkan variabel penjumlahan, misal Sum Menjumlah : var_jml  var_jml + var_tulis Sum  Sum + i

15 Studi Kasus 1 (lanjutan )
Tambahan : Inisialisasi : inisialisasi variabel Sum  0 Call_First_Elmt : mulai dr 1 i  1 Call_Next_Elmt : nilai bertambah 1 i  i + 1 EOP : penghitung (counter ) = N, (tergantung mekanisme pengulangan ) memanfaatkan varibel penulisan i = N

16 Penulisan Algortima 1 Program SumBil1 { Tanpa penanganan kasus kosong}
Kamus N : integer { Cacah bilangan } i : integer { Bilangan yg dihitung } Sum : integer { Total bilangan } Algoritma Input(N) ; Sum  0 { inisialisasi } i  1 { Call_First_Element} while (i  N ) do output (i) { Proses Penulisan } Sum  Sum + i { Proses Penjumlahan } i  i + 1 { Call_Next_Elmt} output ( Sum ) { Terminasi }

17 Penulisan Algoritma 2 Kamus
Program SumBil2 { Dengan penanganan kasus kosong } Kamus N,i : integer { Cacah dan bilangan yg dihitung} Sum : integer { Total bilangan } Algoritma Input(N) ; Sum  0 { inisialisasi } i  1 { Call_First_Element } if N<1 then output (’ Kasus kosong’) { Penanganan Kasus ksng} else repeat output( i ) { Proses Penulisan bil} Sum  Sum + i { Proses Penjumlahan } i  i + 1 { Call_Next_Elmt} until ( i > N ) output ( Sum ) { Terminasi }

18 Hubungan Berulang Contoh :
Skema pengulangan untuk persoalan deret yang rumusnya dapat dinyatakan dalam suatu hubungan. Contoh : Hitung S= 1 - 1/2 + 1/3 -1/ /999-1/1000 Carilah rumus suku ke-i ! Tanda berubah +, -, +, - dan seterusnya Tanda = (-1)^(i+1) Pembagi sama dengan indeks suku : 1 / I Didapat : Suku = Tanda / i Si = ( (-1)^(i+1) ) / i

19 Penulisan Algoritma Suku1
Program Suku1 { Tanpa penanganan kasus kosong } Kamus N,i : integer { Cacah dan indeks suku} Sum : real { Total suku } Algoritma N  1000 ; Sum  0 { inisialisasi } i  1 { Call_First_Element } repeat Sum  Sum + ((-1)^(i+1))/i { Proses Jumlah } i  i { Call_Next_Elmt} until ( i > N ) output ( Sum ) { Terminasi }

20 Hubungan Berulang (2) Cara Kedua Si = Tanda / i Hitung :
Tanda berubah +, -, +, - dan seterusnya Tanda menjadi (-Tanda) unt suku berikutnya Tanda pertama adalah 1. Pembagi sama dengan indeks suku : 1 / I Didapat : Suku = Tanda / i Si = Tanda / i

21 Penulisan Algoritma Suku2
Program Suku2 { Tanpa penanganan kasus kosong } Kamus N,i : integer { Cacah dan indeks suku} Sum : real { Total suku } Tanda :integer[-1,1] Algoritma N  1000 ; Sum  0 { inisialisasi } Tanda  1; i  1 { Call_First_Element } while i  N do Sum  Sum + Tanda / i { Proses Penjumlahan } i  i { Call_Next_Elmt} Tanda  - Tanda { Call_Next_Elmt} output ( Sum ) { Terminasi }

22 Contoh (3) : Faktorial Definisi : 0! = 1 1! = 1
2! = 2 x 1! = 2 x 1 = 2 3! = 3 x 2! = 3 x 2 = 6 4! = 4 x 3! = 4 x 6 = 24 : n! = n x (n-1)! = n x (n-1)x .. x 2 x 1

23 Penulisan Algoritma Faktorial
Program Faktorial Kamus N : integer  0 { Bilangan yg dicari nilai faktorialnya } i : integer  1 { Indeks suku} F : integer { Nilai faktorial } Algoritma input (N) ; F  { inisialisasi } i  1 { Call_First_Element } while i  N do F  F * i { Proses Perhitungan } i  i { Call_Next_Elmt} output ( F ) { Terminasi }

24 Latihan 1. Buat algortima untuk menampilkan deret : 1 2/3 3/5 4/7...., dan tampilkan juga jumlah N suku pertama 2. Buat algortima untuk menampilkan deret : +1 *2 -3 div *6 -7 div , dan tampilkan juga jumlah N suku pertama


Download ppt "Prodi S1-Sistem Komputer, F Teknik Elektro"

Presentasi serupa


Iklan oleh Google