Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
Diterbitkan olehWidyawati Pranata Telah diubah "7 tahun yang lalu
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
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.