MODUL II FUNGSI DAN REKURSI
|
|
- Teguh Kusuma
- 7 tahun lalu
- Tontonan:
Transkripsi
1 MODUL II FUNGSI DAN REKURSI 2.1 Tujuan Tujuan modul II ini, adalah: Praktikan bisa membuat program sederhana berdasarkan algoritma dengan memakai fungsi Praktikan bisa membuat program sederhana berdasarkan algoritma dengan menggunakan fungsi rekursi Praktikan dapat membiasakan diri untuk membuat program secara terstruktur. Praktikan memahami algoritma fungsi dan rekursi 2.2 Teori Modularisasi program (yang disebut juga rutin, prosedur atau fungsi) memberikan dua keuntungan, yaitu: untuk aktivitas yang harus dilakukan lebih dari satu kali, modularisasi menghindari penulisan teks program yang sama secara berulangkali. Disini penggunaan modul program dapat mengurangi panjang program. Keuntungan kedua adalah kemudahan menulis dan menemukan kesalahan program. Kemudahan menulis akan sangat berguna pada masalah besar yang dikerjakan oleh satu tim pemrogram yang beranggotakan beberapa orang. Bahasa C tidak mengenal istilah prosedur seperti bahasa pascal. Dalam pascal sendiri, prosedur didefinisikan sebagai suatu proses yang tidak mengembalikan nilai. Untuk melakukan hal ini di dalam c, maka kita harus membuat suatu fungsi dengan tipe void, yang berarti tidak memiliki nilai balik (return value) Fungsi Tanpa Nilai Balik Notasi algoritma yang digunakan untuk mendefinisikan struktur prosedur atau fungsi ini adalah: Procedure nama_prosedur {spesifikasi prosedur, berisi penjelasan tentang apa yang dilakukan oleh prosedur ini k.awal : keadaan sebelum prosedur dilaksanakan II-1
2 II-2 k.akhir : keadaan setelah prosedur dilaksanakan {Semua nama yang dipakai dalam prosedur dan hanya berlaku local dalam prosedur didefnisikan disini {badan prosedur, berisi kumpulan instruksi Contoh Algoritma 1: Procedure HitungLuasSegitiga {Menghitung luas segitiga dengan rumus Luas = (alas x tinggi)/2 {k.awal : sembarang {k.akhir : Luas dicetak ke piranti masukan keluaran Alas : real Tinggi : real Luas : real {panjang alas segitiga, dalam cm {tinggi segitiga, dalam cm {luas segitiga, dalam cm Read(Alas, Tinggi) Luas (Alas * Tinggi) / 2 Write(Luas) Algoritma luassegitiga {program utama untuk menghitung luas segitiga Procedure HitungLuasSegitiga {menghitung luas segitiga dengan rumus luas = (alas x tinggi)/2 Write( menghitung luas sebuah segitiga ) HitungLuasSegitiga Write( selesai ) Program Algoritma 1: //program utama untuk menghitung luas segitiga #include "stdio.h" int Alas; int Tinggi; void HitungLuasSegitiga();
3 II-3 main(){ printf("menghitung luas sebuah segitiga\n"); HitungLuasSegitiga(); printf("\nselesai"); void HitungLuasSegitiga() { float Luas; printf("alas : ");scanf("%d",&alas); printf("tinggi : ");scanf("%d",&tinggi); luas = (Alas * Tinggi)/2; printf("%4.2f",luas); Nama Global dan Lokal Nama-nama (konstanta, peubah, tipe dan lain-lain) yang dideklarasikan di dalam deklarasi prosedur hanya dikenal di dalam badan prosedur yang bersangkutan (bersifat lokal). Sedangkan nama-nama yang dideklarasikan di dalam program utama dikatakan bersifat global (nama-nama global dapat digunakan di bagian manapun di dalam program, baik di dalam program utama maupun di dalam prosedur) Parameter Parameter aktual adalah parameter yang disertakan pada waktu pemanggilan, sedangkan parameter formal adalah parameter yang dideklarasikan di dalam bagian header prosedur itu sendiri. Ketika prosedur dipanggil, parameter actual menggantikan parameter formal. Tiap-tiap parameter aktual berpasangan dengan parameter formal yang bersesuaian. Berdasarkan penggunaannya terdapat 3 jenis parameter formal, yaitu : Parameter masukan (input parameter) : parameter yang nilainya berlaku sebagai masukan untuk prosedur (sering disebut parameter nilai parameter by value). Parameter keluaran (output parameter) : parameter yang menampung keluaran yang dihasilkan oleh prosedur.
4 II-4 Parameter masukan/keluaran (input/output parameter) : parameter yang berfungsi sebagai masukan sekaligus keluaran bagi prosedur tersebut (parameter keluaran dan parameter masukan/keluaran sering dinamakan parameter acuan parameter by reference). Contoh algoritma parameter masukan: Procedure Satu(input X, Y : integer) {contoh prosedur dengan parameter formal berjenis parameter masukan k.awal : nilai x dan y sudah terdefinisi k.akhir : nilai x dan y masing-masing dinaikkan satu lalu dicetak ke piranti keluaran {tidak ada X X +1 Y Y -1 Write(X, Y) Algoritma PQR {contoh program utama yang memanggil prosedur satu A, B : real Procedure Satu(input X, Y : integer) {contoh prosedur dengan parameter formal berjenis parameter masukan Satu(4,10) {pemanggilan satu yang pertama kali Read(a,b) Satu(a,b) {pemanggilan satu yang kedua kalinya Satu(a+5,17) {pemanggilan satu yang ketiga kalinya Pada program PQR diatas: x dan y adalah parameter formal; 4 dan 10, a dan b, a+5 dan 17 adalah parameter aktual. Contoh algoritma parameter Keluaran: Procedure Tiga(input X : integer, output Y : real) {contoh prosedur dengan parameter formal berjenis parameter keluaran k.awal : nilai x sudah terdefinisi k.akhir : di dalam prosedur, nilai x ditambah satu, lalu hasilnya dikalikan 3, disimpan ke dalam y
5 II-5 {tidak ada X X + 1 Y X * 3 Algoritma PQR A, B : integer Procedure Tiga(input X : integer, output Y : integer) {contoh prosedur dengan parameter formal berjenis parameter keluaran Tiga(4, B) {pemanggilan tiga yang pertama kali Write(B) Read (A) Tiga(A, B) {pemanggilan tiga yang kedua kali Write(B) Tiga(A+5, B) {pemanggilan tiga yang ketiga kali Write(B) Contoh Algoritma Parameter Masukan/Keluaran: Procedure Empat(input/output X, Y : integer) {contoh prosedur dengan parameter formal parameter masukan/keluaran {menambahkan nilai x dan y masing-masing dengan 4 {k.awal : X dan Y sudah berisi nilai {k.akhir : nilai X dan Y bertambah masing-masing 4, lalu dicatat ke piranti keluaran {tidak ada X X + 4 Y Y + 4 Write( nilai X dan Y di akhir prosedur empat ) Write( X :,X) Write( Y :,Y) Algoritma PQR {program yang memperlihatkan efek penggunakan parameter masukan/ keluaran A, B : integer
6 II-6 procedure Empat(input/output X, Y : integer) {menambahkan nilai X dan Y masing-masing dengan 4 A 15 B 10 write( nilai A dan B sebelum pemanggilan ) write( A :,A) write( B :, B) empat(a, B) write( nilai A dan B setelah pemanggilan ) write( A :,A) write( B :, B) Contoh Algoritma 2: Procedure tukar(input/output X, Y : integer) {mempertukarkan nilai x dan y k.awal : nilai X dan Y sudah terdefinisi k.akhir : X berisi nilai Y yang lama, Y berisi nilai X yang lama Temp : integer {peubah bantu Temp X {simpan nilai X ke dalam Temp X Y {isikan nilai Y ke dalam X Y Temp {isikan nilai Temp ke dalam Y Algoritma tukar {program utama untuk mempertukarkan nilai A dan B, nilai A dan B dibaca dari piranti masukan A, B : integer Procedure Tukar(input/output X, Y : integer) {mempertukarkan nilai x dan y read(a, B) write(a, B) Tukar(A, B) write(a, B) {baca nilai A dan B terlebih dahulu {cetak nilai A dan B sebelum pertukaran {pertukaran nilai A dan B dengan memanggil prosedur Tukar {cetak nilai A dan B setelah pertukaran
7 II-7 Program Algoritma 2: //program tukar #include "stdio.h" void tukar(int *a, int *b); main(){ int A, B; printf("a : ");scanf("%d",&a); printf("\nb : ");scanf("%d",&b); printf("\na : %d",a); printf("\nb : %d",b); tukar(&a, &B); printf("\na : %d",a); printf("\nb : %d",b); void Tukar(int *A, int *B) { int Temp; Temp = *A; *A = *B; *B = Temp; Contoh Algoritma 3: Procedure HitungRatarata(input N : integer, output U : real) {menghitung nilai rata-rata N buah bilangan bulat yang dibaca dari piranti masukan. Nilai N diasumsikan selalu positif {k.awal : N sudah berisi banyaknya data (N>0) {k.akhir : U berisi rata-rata seluruh bilangan X : integer K : integer Jumlah : integer {data bilangan bulat yang dibaca dari papan kunci {pencacah banyak bilangan {jumlah seluruh bilangan Jumlah 0 {inisialisasi For K 1 to N do Read(X) Jumlah Jumlah + X Endfor U Jumlah/N
8 II-8 Algoritma Rataratabilanganbulat {program utama untuk menghitung nilai rata-rata N buah bilangan bulat yang dibaca dari piranti masukan N : integer U : real {banyaknya data bilangan bulat. N positif {nilai rata-rata seluruh bilangan Procedure HitungRatarata(input N : integer, output U : real) {menghitung nilai rata-rata N buah bilangan bulat yang dibaca dari piranti kunci Read(N) Write( menghitung rata-rata N buah bilangan bulat ) HitungRatarata(N, U) Write(U) Program Algoritma 3: //program utama untuk menghitung luas segitiga #include "stdio.h" int N; float U; void HitungRatarata(int N, float *U); main(){ printf("jumlah data : ");scanf("%d", &N); printf("menghitung rata-rata N buah bilangan bulat\n"); HitungRatarata(N, &U); printf("%f", U); void HitungRatarata(int N, float *U) { int K, Jumlah, X; Jumlah = 0; for (K=1; K<=N; K++) { printf("data ke-%d : ",K);scanf("%d", &X); Jumlah = Jumlah + X; *U = Jumlah/N;
9 II Fungsi Dengan Nilai Balik Fungsi adalah modul program yang memberikan/mengembalikan (return) sebuah nilai dari tipe tertentu (tipe dasar atau tipe bentukan). Sebagaimana halnya prosedur, fungsi diakses dengan memanggil namanya. Selain itu, fungsi juga dapat mengandung daftar parameter formal. Parameter pada fungsi selalu merupakan parameter masukan. Hal ini disebabkan oleh kenyataan bahwa parameter pada fungsi merupakan masukan yang digunakan oleh fungsi tersebut untuk menghasilkan nilai. Notasi algoritma untuk fungsi : Function namafungsi(input daftar parameter formal) tipe hasil {spesifikasi fungsi, menjelaskan apa yang dilakukan dan yang dikembalikan oleh fungsi {semua nama yang dipakai di dalam algoritma fungsi dideklarasikan disini. Nama yang didefinisikan di dalam deklarasi lokal hanya dikenal dan dipakai di dalam fungsi ini saja {badan fungsi, berisi instruksi-isntruksi untuk menghasilkan nilai yang akan dikembalikan oleh fungsi return hasil {pengembalian nilai yang dihasilkan fungsi Contoh Algoritma 4 : Function F(input X : real) real {mengembalikan nilai f(x) = 2x2 + 5x 8, x R) {tidak ada Return 2*X*X + 5*X 8 ATAU, Function F(input X : real) real {mengembalikan nilai f(x) = 2x2 + 5x 8, x R) Y : real {penampung hasil fungsi F Y 2*X*X + 5*X 8 Return Y Algoritma fungsif {program utama pemanggilan fungsif
10 II-10 X : integer Function F(input X : real) real Read(X) Write( F(X) =, F(X)) Program Algoritma 4 : //program fungsi f(x)=2x2+5x-8 #include "stdio.h" float F(float X); main(){ int X; printf("x : ");scanf("%d",&x); printf("\nf(x) : %f",f(x)); float F(float X){ float Y; Y = 2*X*X + 5*X - 8; return Y; Contoh Algoritma 5 : Function Genap(input N : integer) boolean {mengembalikan nilai true jika N adalah bilangan genap, false jika sebaliknya Y : integer Y (N mod 2 = 0) Return Y Algoritma GenapGanjil {program utama yang memanggil fungsi genap Bil : integer Function Genap(input N : integer) boolean {mengembalikan nilai true jika N adalah bilangan genap, false jika sebaliknya
11 II-11 Read(Bil) If Genap(Bil) then Write(Bil, adalah bilangan genap ) Else Write(Bil, adalah bilangan ganjil ) Endif Program Algoritma 5 : //program fungsi f(x)=2x2+5x-8 #include "stdio.h" bool Genap(int Bil); main(){ int Bil; printf("bil : ");scanf("%d",&bil); if (Genap(Bil)) printf("\n%d adalah bilangan genap", Bil); else printf("\n%d adalah bilangan ganjil", Bil); bool Genap(int Bil){ bool Y; Y = (Bil % 2 == 0); return Y; Rekursi Suatu obyek disebut sebagai rekursif apabila sebagian berisi atau didefinisikan sebagai dirinya sendiri. Dengan demikian rekursif adalah suatu proses berupa pemanggilan diri berupa statement perulangan. Proses rekursif juga memungkinkan terjadinya komputasi yang tidak berkesudahan sampai memory yang digunakan tidak dapat menampung lagi, sehingga perlu diperhatikan akan adanya kondisi untuk menghentikan proses eksekusi program. Sebagai contoh sederhana mengenai proses rekursif adalah proses menghitung nilai faktorial dari bilangan bulat positif dan mencari deret fibonnaci dari suatu bilangan bulat, permainan menara hanoi dan sebagainya.
12 II-12 Contoh Algoritma 6: Function Fak(input N : integer) integer {mengembalikan nilai N!. algoritma rekursif. basis : jika N = 0, maka 0!=1 rekurens : jika N>0, maka N! = N x (N-1)! {tidak ada If N = 0 then Return 1 {basis Else Return N*Fak(N-1) {rekurens Endif Algoritma faktorial {program utama yang memanggil fungsi faktorial Bil : integer Function Fak(input Bil : integer) integer {mengembalikan nilai N! Read(Bil) Write(Bil,! adalah :,Fak(Bil)) Program Algoritma 6: //program fungsi rekursif faktorial #include "stdio.h" int Fak(int N); main(){ int N; printf("n! : ");scanf("%d",&n); printf("\n%d! adalah %d", N, Fak(N)); int Fak(int N){ if (N == 0) return 1; else return N*Fak(N-1);
13 II Kasus Kasus 1 1. Tuliskan prosedur untuk menghitung jumlah N buah bilangan genap pertama (bilangan genap dimulai dari 0). Prosedur menerima (parameter) masukan N dan memberikan (parameter) keluaran jumlah N buah bilangan genap pertama. Dari algoritma tersebut, buatlah program dan cantumkan output/hasilnya. 2. Buatlah algoritma prosedur yang menerima dua buah tanggal (dd-mm-yyy) : tanggal-1 dan tanggal-2 lalu menghitung berapa hari jarak tanggal-1 ke tanggal-2 tersebut. Dari algoritma tersebut, buatlah program dan cantumkan output/hasilnya Kasus 2 1. Buatlah sebuah algoritma fungsi yang memberikan durasi antara dua buah jam (dengan format hh:mm:ss) lebih dari 1 jam. Dari algoritma tersebut, buatlah program dan cantumkan output/hasilnya. 2. Misalkan panit(n,k) menyatakan jumlah panitia yang terdiri dari k orang yang dapat dibentuk dari n orang. Sebagai contoh, panit(4,3)=4, karenadiberikan empat orang A, B, C, dan D, maka terdapat empat kemungkinan panitia, yaitu ABC, ABD, ACD dan BCD. Buktikan kesamaan berikut: Panit(n,k) = panit(n-1,k) + panit(n-1,k-1) Buatlah fungsi rekursifnya untuk n, k Tugas Tugas Pendahuluan Tugas pendahuluan akan dikerjakan selama 30 menit di awal jam praktikum dengan menggunakan software Self Assessment
14 II Latihan Praktikum III dan IV Latihan Praktikum III (Pertemuan Ketiga) Buatlah program berdasarkan algoritma di bawah ini: Algoritma 1: Procedure TambahSatuDetik(input/output J : Jam) {menaikkan jam j dengan satu detik {k.awal : j sudah berisi nilai jam (hh:mm:ss) {k.akhir: j berisi jam yang harus setelah ditambah 1 detik {tidak ada If J.SS+1 < 60 then {tidak ada masalah penambahan 1 detik J.SS J.SS + 1 else {j.ss + 1 = 60 J.SS 0 {detik kembali menjadi nol, menit bertambah 1, tapi periksa dulu apakah menit +1 <60 if J.MM + 1 < 60 then {tidak ada masalah penambahan 1 menit J.MM J.MM + 1 else {J.MM + 1 = 60 J.MM 0 {menit menjadi nol, jam berambah 1, tapi periksa dulu apakah jam + 1 <24 if J.HH + 1 < 24 {tidak ada masalah penambahan 1 jam J.HH J.HH + 1 else { J.HH + 1 = 24 J.HH 0 endif endif endif Algoritma Jam_Hidup {membuat jam hidup yang selalu bertambah 1 detik terus menerus sampai jam 00:00:00. masukan jam dibaca dari piranti masukan. Setiap pertambahan 1 detik, jam yang baru ditampilkan sebagai keluaran Type Jam : record<hh : integer, (0 HH 59) MM : integer, (0 HH 59) SS : integer, (0 HH 23) > J : Jam Procedure TambahSatuDetik(input/output J : Jam) {menaikkan jam J dengan satu detik
15 II-15 Read(J.HH, J.MM, J.SS) Write(J.HH, J.MM, J.SS) Repeat Tambahsatudetik(J) Write(J.HH, J.MM, J.SS) Until (J.HH=0) and (J.MM=0) and (J.SS=0) Algoritma 2: Procedure HitungPBT(input M : integer, input N : integer, output PBT : integer) {menghitung pembagi bersama terbesar dari dua buah bilangan bulat tak negative M dan N {k.awal : M dan N sudah terdefinisi harganya, M N dan M, N 0 {k.akhir : PBT berisi pembagi bersama terbesar dari M dan N R : integer {sisa pembagian M dengan N While N 0 do R M mod N M N N R endwhile {N = 0, maka PBT = M PBT M Procedure Tukar(input/output A, B : integer) {mempertukarkan nilai A dan B {k.awal : nilai A dan B sudah terdefinisi {k.akhir : A berisi nilai B yang lama, B berisi nilai A yang lama Temp : integer {peubah bantu Temp A {simpan nilai A ke dalam Temp A B {isikan nilai B ke dalam A B Temp {isikan nilai Temp ke dalam B Algoritma Euclidean {program utama untuk menghitung pembagi bersama terbesar dari dua buah bilangan bulat positif m dan n. harga m dan n dibaca dari piranti masukan M, N : integer {>0 PBT : integer {pembagi bersama terbesar M dan N
16 II-16 Procedure HitungPBT(input M : integer, input N : integer, output PBT : integer) {menghitung pembagi bersama terbesar dari dua buah bilangan bulat tak negative M dan N Procedure Tukar(input/output A, B : integer) {mempertukarkan nilai A dan B Read(M, N) If M<N then Tukar(M, N) {pertukarkan M dan N endif HitungPBT(M, N, PBT) write(pbt) Algoritma 3: Procedure HitungSelisihJam(input J1, J2 : Jam, output J3 : Jam) {menghitung selisih dua buah jam, J3 = J2 J1 {k.awal: J1 dan J2 sudah berisi nilai jam (HH:MM:SS) dan J2.HH > J1.HH {k.akhir: J3 berisi selisih jam J2 dengan J1 {tidak ada {kurangi mulai dari detik dulu if J2.SS J1.SS then {tidak ada masalah pengurangan detik J3.SS J2.SS J1.SS else {J2.SS < J1.SS, lakukan peminjaman 1 menit = 60 detik dari J2.MM J3.SS (J2.SS + 60) J1.SS J2.MM J2.MM 1 {J2.MM berkurang 1 karena dipinjam 1 menit endif {kurangi menit if J2.MM J1.MM then {tidak ada masalah pengurangan menit J3.MM j2.mm J1.MM else {J2.MM < J1.MM, lakukan peminjaman 1 jam = 60 menit dari J2.HH J3.MM (J2.MM + 60) J1.MM J2.HH J2.HH 1 {J2.HH berkurang 1 karena dipinjam 1 menit endif {kurangi jam J3.HH J2.HH J1.HH
17 II-17 Algoritma HitungSelisihDuaBuahJam {menghitung selisih dua buah jam. Data jam dibaca dari piranti masukan Type Jam : record<hh : integer, (0..59) MM : integer, (0..59) SS : integer, (0..23) > J1, J2, J3 : Jam Procedure HitungSelisihJam(input J1,J2 : Jam, output J3 : Jam) {menghitung selisih dua buah jam, J3 = J2 J1 Read(J1.HH, J1.MM, J1.SS) Read(J2.HH, J2.MM, J2.SS) HitungSelisihJam(J1, J2, J3) Write(J3.HH, J3.MM, J3.SS) Algoritma 4: Procedure Masukan(input/output Panjang, Lebar : real) {memasukan nilai panjang dan lebar {tidak ada Read(Panjang, Lebar) Procedure HitungLuassegiempat(input Panjang, Lebar : real) {menghitung luas segiempat persegipanjang. Luas segiempat dicetak sebagai keluaran {k.awal: panjang dan lebar sudah terdefinisi nilainya {k.akhir: luas segiempat tercetak di piranti keluaran Luas : real : Masukan(Panjang, Lebar) Luas Panjang * Lebar Write(Luas) Procedure HitungKelilingsegiempat(input Panjang, Lebar : real) {menghitung keliling segiempat. keliling segiempat dicetak sebagai keluaran {k.awal: panjang dan lebar sudah terdefinisi nilainya {k.akhir: keliling segiempat tercetak di piranti keluaran
18 II-18 Keliling : real : Masukan(Panjang, Lebar) Keliling 2*Panjang + 2*Lebar Write(Keliling) Procedure HitungPanjangdiagonal(input Panjang, Lebar : real) {menghitung panjang diagonal. keliling segiempat dicetak sebagai keluaran {k.awal: panjang dan lebar sudah terdefinisi nilainya {k.akhir: panjang diagonal segiempat tercetak di piranti keluaran Diagonal : real : Masukan(Panjang, Lebar) Diagonal SQRT(Panjang*Panjang + Lebar*Lebar) Write(Diagonal) Algoritma Segiempat {program untuk menampilkan menu perhitungan segiempat (luas, keliling dan panjang) Panjang, Lebar :real Nomormenu : integer Procedure Masukan(input/output Panjang, Lebar : real) {memasukan nilai panjang dan lebar Procedure HitungLuassegiempat(input Panjang, Lebar : real) {menghitung luas segiempat persegi panjang. Luas segiempat dicetak sebagai keluaran Procedure HitungKelilingsegiempat(input Panjang, Lebar : real) {menghitung keliling segiempat. keliling segiempat dicetak sebagai keluaran Procedure HitungPanjangdiagonal(input Panjang, Lebar : real) {menghitung panjang diagonal segiempat. Panjang diagonal segiempat dicetak sebagai keluaran Read(Panjang, Lebar) Repeat {cetak menu ke layar Write( MENU SEGIEMPAT ) Write( 1. hitung luas )
19 II-19 Write( 2. hitung keliling ) Write( 3. hitung panjang diagonal ) Write( 4. Keluar program ) Write( Masukan nomor pilihan menu [1/2/3/4]: ) Read(Nomormenu) Case Nomormenu 1 : HitungLuassegiempat(Panjang, Lebar) 2 : HitungKelilingsegiempat(Panjang, Lebar) 3 : HitungPanjangdiagonal(Panjang, Lebar) 4 : write( keluar program... ) endcase until Nomormenu = Latihan Praktikum IV (Pertemuan Keempat) Buatlah program berdasarkan algoritma di bawah ini: Algoritma 1 Function Valid(input P : string) boolean {bernilai true jika password P benar, false jika tidak Const Password = abc123 return (P = Password) Algoritma Pemeriksaan_password {program pemeriksaan kebenaran password, password dibaca dari papan kunci. Bila password salah, pemasukan password dapat diulang maksimal 3 kali Sandilewat : string Sah : boolean K : integer {kata sandi yang dibaca dari piranti masukan {true jika password benar, false jika salah {pencatat jumlah pembacaan sandilewat Function Valid(input P : string) boolean {bernilai true jika password P benar, false jika tidak K 1 Sah false repeat read(sandilewat) if Valid(Sandilewat) then Sah true
20 II-20 else {Sandilewat Password K K + 1 endif until (Sah) or (K>3) if not Sah then write( anda tidak punya hak mengakses sistem ) endif Algoritma 2 Function Prima(input M : integer) boolean {mengembalikan true jika M bilangan prima, false jika M bukan bilangan prima K : integer Tes : boolean K 2 Tes true {sesuaikan M pada awalnya bilangan prima while (K M-1) and (not Tes) do if M mod K = 0 then {M habis dibagi dengan bilangan K M-1 Hasil false {kesimpulannya : M bukan bilangan prima else K K+1 {coba bagi dengan K berikutnya endif endwhile return Tes Algoritma Hitungprima {program utama menghitung bilangan prima M : integer Function Prima(input M : integer) boolean {mengembalikan true jika M bilangan prima, false jika M bukan bilangan prima Read(M) If Prima(M) then Write(M, bilangan prima) Else Write(M, bukan bilangan prima )
21 II-21 Algoritma 3: Function Balikangka(input N : integer) integer {Membalikan urutan bilangan bulat N (misal: 4567 menjadi 7654) k.awal : nilai N sudah terdefinisi k.akhir : urutan angka bilangan N dicetak terbalik basis : jika N < 10, cetak(n) rekurens : jika N > 10 maks cetak (N mod 10), balikangka(n div 10) {tidak ada If N < 10 then Write(N) {basis Else {rekurens Write(N mod 10) Balikangka(N div 10) Endif Algoritma faktorial {program utama yang memanggil fungsi balikangka N : integer Function Balikangka(input N : integer) integer {Membalikan urutan bilangan bulat N (misal: 4567 menjadi 7654) Read(N) Write(N, dibalik menjadi :,Balikangka(N)) Algoritma 4: Function Pangkat(input A, N : integer) integer {mengembalikan nilai a n, n>0 basis : a n = 1 jika n = 0 rekurens : a n = a x a n-1 {tidak ada If N = 0 then return 1 Else return A*Pangkat(A, N-1)
22 II-22 endif Algoritma Faktorial {program utama yang memanggil fungsi faktorial Bil : integer Function Pangkat(input A, N : integer) integer {mengembalikan nilai a n, n>0 Read(A, N) Write(A, pangkat, N, adalah :,Pangkat(A, N)) Algoritma 5 Formula Deret exp : e x = 0 x 0! 1 x + 1! 2 3 x x + + 2! 3! n x n! Function exp(input x : real) real {mengembalikan nilai exp(x) Const n : integer = 10 S: real X : integer Function Fak(input N : integer) integer {mengembalikan harga N!, untuk N 0) function Pangkat(input X : real, input M:integer) real {mengembalikan harga perpangkatan x n S 0 for X 0 to N do S S + Pangkat(X, K)/Fak(K) endfor return S Algoritma exponential {program utama yang memanggil fungsi exp X : integer
23 II-23 Function Fak(input N : integer) integer {mengembalikan harga N!, untuk N 0) function Pangkat(input X : real, input M : integer) real {mengembalikan harga perpangkatan x n Read(X) Write( exponential,x, adalah,exp(x))
FUNGSI MINGGU KE: 4 TUJUAN: Mahasiswa dapat memahami definisi fungsi. Mahasiswa dapat mendefinisikan fungsi. Mahasiswa dapat menggunakan fungsi.
FUNGSI MINGGU KE: 4 TUJUAN: Mahasiswa dapat memahami definisi fungsi. Mahasiswa dapat mendefinisikan fungsi. Mahasiswa dapat menggunakan fungsi. TEORI PENGANTAR: Definisi Fungsi Fungsi adalah sub-program
Lebih terperinciALGORITMA DAN STRUKTUR DATA 1
ALGORITMA DAN STRUKTUR DATA 1 Mia Fitriawati, M.Kom PENDAHULUAN Seringkali dalam membuat program besar, pemrogram perlu memecah program menjadi beberapa subprogram yang lebih kecil. Tiap subprogram(modul)
Lebih terperinciPROSEDUR (Lanjutan) Parameter. Mahasiswa dapat memahami penggunaan prosedur dengan parameter. Mahasiswa dapat membuat prosedur dengan parameter.
PROSEDUR (Lanjutan) Parameter MINGGU KE: 3 TUJUAN: Mahasiswa dapat memahami penggunaan prosedur dengan parameter. Mahasiswa dapat membuat prosedur dengan parameter. TEORI PENGANTAR: Penggunaan parameter
Lebih terperinciProsedur dan Fungsi ALGORITMA DAN PEMROGRAMAN [IS ] Dosen: Yudha Saintika, S.T., M.T.I
Prosedur dan Fungsi ALGORITMA DAN PEMROGRAMAN [IS6110102] Dosen: Yudha Saintika, S.T., M.T.I Sub-Capaian Pembelajaran MK Mahasiswa mampu menerapkan konsep prosedur dan fungsi dalam program. Peta Capaian
Lebih terperinciAlgoritma Pemrograman
Algoritma Pemrograman Pertemuan Ke-10 (Fungsi) Noor Ifada noor.ifada@if.trunojoyo.ac.id S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Pendefinisian Fungsi Pemanggilan Fungsi Penggunaan
Lebih terperinciAlgoritma Pemrograman
Algoritma Pemrograman Pertemuan Ke-10 (Fungsi) :: NoorIfada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Pendefinisian Fungsi Pemanggilan Fungsi Penggunaan Prosedur atau Fungsi? S1
Lebih terperinciProsedur dan Fungsi. Kenapa Prosedur atau Fungsi?
Prosedur dan Fungsi Agus Sumaryanto, S.Kom mas.anto72@gmail.com 1 Kenapa Prosedur atau Fungsi? Untuk mencapai suatu tujuan besar, maka tujuan tersebut harus dibagi-bagi menjadi tujuan kecil sampai tujuan
Lebih terperinciAlgoritma Pemrograman
Algoritma Pemrograman Pertemuan Ke-9 (Fungsi) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendefinisian Fungsi Pemanggilan Fungsi Penggunaan Prosedur atau Fungsi S1 Teknik Informatika-Unijoyo
Lebih terperinciAlgoritma Pemrograman
Algoritma Pemrograman Pertemuan Ke-2 (Teks Algoritma) Noor Ifada noor.ifada@if.trunojoyo.ac.id S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Judul Algoritma Deklarasi Deskripsi Translasi
Lebih terperinciAlgoritma dan Struktur Data
Algoritma dan Struktur Data Mia Fitriawati, M.Kom FUNGSI Modul program yang mengembalikan/ memberikan (return) sebuah nilai yang bertipe sederhana. tipe data sederhana : integer, real, boolean, dan string
Lebih terperinciProcedure. Pertemuan 10 Algoritma Pemrograman
Procedure Pertemuan 10 Algoritma Pemrograman Pendahuluan Seringkali dalam membuat program besar, pemrogram perlu memecah program menjadi beberapa subprogram yang lebih kecil. Tiap subprogram (modul) dapat
Lebih terperinciAlgoritma Pemrograman
Algoritma Pemrograman Pertemuan Ke-8 dan Ke-9 (Prosedur) Noor Ifada noor.ifada@if.trunojoyo.ac.id S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Modularisasi Program Pendefinisian Prosedur
Lebih terperinciAlgoritma Pemrograman
Algoritma Pemrograman Pertemuan Ke-7 (Pengulangan atau Looping [2]) Noor Ifada noor.ifada@if.trunojoyo.ac.id S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Struktur WHILE Struktur REPEAT WHILE vs REPEAT
Lebih terperinciAlgoritma Pemrograman
Algoritma Pemrograman Pertemuan Ke-8 dan Ke-9 (Prosedur) :: NoorIfada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Modularisasi Program Pendefinisian Prosedur Nama Global dan Nama Lokal
Lebih terperinciALGORTIMA DAN PEMROGRAMAN
ALGORTIMA DAN PEMROGRAMAN PROSEDUR Pendahuluan Dalam memprogram yang besar perlu memecah program menjadi pbeberapa subprogram yang lebih kecil. Tiap subprogram kadangkala cukup independen dari program
Lebih terperinciAlgoritma Pemrograman
Algoritma Pemrograman Pertemuan Ke-7 (Pengulangan atau Looping [2]) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Struktur WHILE Struktur REPEAT S1 Teknik Informatika-Unijoyo 2 Struktur
Lebih terperinciAlgoritma Pemrograman
Algoritma Pemrograman Pertemuan Ke-2 (Teks Algoritma) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Judul Algoritma Deklarasi Deskripsi Translasi Teks Algoritma ke dalam
Lebih terperinciAlgoritma Pemrograman
Algoritma Pemrograman Pertemuan Ke-8 (Prosedur) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Modularisasi Program Pendefinisian Prosedur Nama Global dan Nama Lokal Parameter
Lebih terperinciAlgoritma Pemrograman
Algoritma Pemrograman Pertemuan Ke-7 (Pengulangan atau Looping [2]) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Struktur WHILE Struktur REPEAT WHILE vs REPEAT S1 Teknik Informatika-Unijoyo
Lebih terperinciSTRUKTUR DASAR ALGORITMA DAN PEMROGRAMAN STMIK AMIKOM YOGYAKARTA
STRUKTUR DASAR ALGORITMA DAN PEMROGRAMAN STMIK AMIKOM YOGYAKARTA Khusnawi, S.Kom, M.Eng 2010 ( Structure(pErulanGan RePetiTion Pendahuluan Saat membuat suatu program setiap instruksi bisa dimulai dari
Lebih terperinciAlgoritma Pemrograman
Algoritma Pemrograman Pertemuan Ke-2 (Teks Algoritma) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Judul Algoritma Deklarasi Deskripsi Translasi Teks Algoritma ke dalam
Lebih terperinciProsedur merupakan modul program yang mengerjakan instruksi spesifik dan menghasilkan efek netto. Efek netto diketahui dengan membandingkan keadan awa
Prosedur merupakan modul program yang mengerjakan instruksi spesifik dan menghasilkan efek netto. Efek netto diketahui dengan membandingkan keadan awal dan keadaan akhir pada pelaksanaan prosedur Pendefinisian
Lebih terperinciMODUL PRAKTIKUM PERCABANGAN DAN PENGULANGAN
PERCABANGAN DAN PENGULANGAN Pada BAB ini akan membahas tentang PERCABANGAN dan PERULANGAN. PERCABANGAN : a) IF THEN b) CASE OF PENGULANGAN: a) REPEAT N TIMES b) REPEAT UNTIL c) WHILE DO d) ITERATE STOP
Lebih terperinciBab 1 Algoritma dan Pemrograman Tersruktur
Bab 1 Algoritma dan Pemrograman Tersruktur 1.1 Definisi Algoritma Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis. Contoh algoritma Euclidean untuk menentukan
Lebih terperinciModul Ke-1 Pertemuan ke-1 Deskripsi: Pemrosesan Sekuensial Larik Nama File: P01-XXX (XXX adalah 3 digit terakhir NPM)
Modul Ke-1 Pertemuan ke-1 Pemrosesan Sekuensial Larik Nama File: P01-XXX (XXX adalah 3 digit terakhir NPM) Deklarasi: const NMAX = 10 type Larik = array[1..nmax] of integer procedure BacaLarik(output A:
Lebih terperinciFor pencacah awal to akhir do For pencacah akhir downto awal do Aksi endfor
MODUL 4 Perulangan A. Tujuan 1. Mahasiswa dapat mempraktekkan proses pengulangan 2. Mahasiswa dapat mempraktekkan tentang variasi perulangan 3. Menjelaskan pengulangan dengan langkah-langkah B. Dasar Teori
Lebih terperinciSTRUKTUR DASAR ALGORITMA
STRUKTUR DASAR ALGORITMA Tujuan Mahasiswa mampu memecahkan masalah dalam sebuah algoritma pemecahan masalah menggunakan struktur pemilihan dan pengulangan. Mahasiswa mengetahui struktur program bahasa
Lebih terperinciKonstruksi Dasar Algoritma
Konstruksi Dasar Algoritma ALGORITMA DAN PEMROGRAMAN [IF6110202] Yudha Saintika, S.T., M.T.I. Sub-Capaian Pembelajaran MK Pendahuluan Instruksi dan Aksi Algoritma merupakan deskripsi urutan pelaksanaan
Lebih terperinciALGORITMA TUGAS 2 RESUME ALGORITMA PERCABANGAN DAN ALGORITMA PERULANGAN. Disusun Oleh : Sakina Mawardah Teknik Informatika. Dosen : Asep M. Yusuf, S.
ALGORITMA TUGAS 2 RESUME ALGORITMA PERCABANGAN DAN ALGORITMA PERULANGAN Disusun Oleh : Sakina Mawardah Teknik Informatika Dosen : Asep M. Yusuf, S.T UNIVERSITAS NASIONAL PASIM DAFTAR ISI A. Algoritma Percabangan...
Lebih terperincialgoritma & pemrograman
algoritma & pemrograman materi pengajaran algoritma & pemrograman I (IF-185) 1. Pendahuluan 4. Procedure & Function - Bahasa Pemrograman Pertemuan : 3x - Membuat program / algoritma Pertemuan : 1x 5. UTS
Lebih terperinciMODUL IV PENCARIAN DAN PENGURUTAN
MODUL IV PENCARIAN DAN PENGURUTAN 4.1 Tujuan Tujuan modul IV ini, adalah: Praktikan bisa membuat beberapa program pencarian berdasarkan metode algoritma pencarian Praktikan bisa membuat beberapa program
Lebih terperinciPertemuan Ke-2 (Teks Algoritma) Rahmady Liyantanto. S1 Teknik Informatika-Unijoyo
Algoritma Pemrograman Pertemuan Ke-2 (Teks Algoritma) Rahmady Liyantanto Sub Pokok Bahasan Pendahuluan Judul Algoritma Deklarasi Deskripsi Translasi Teks Algoritma ke dalam Teks Program Bahasa Pascal Tabel
Lebih terperinciAlgoritma Pemrograman
Algoritma Pemrograman Pertemuan Ke-3 (Tipe Data dan Nama) 1 Sub Pokok Bahasan Pendahuluan Tipe Dasar Tipe Bentukan Nama 2 Pendahuluan Tipe adalah pola representasi data dalam komputer Tipe data dapat dikelompokkan
Lebih terperinciPROSEDUR DENGAN PARAMETER. Mahasiswa dapat memahami penggunaan prosedur dengan parameter. Mahasiswa dapat membuat prosedur dengan parameter.
PROSEDUR DENGAN PARAMETER MINGGU KE: 3 TUJUAN: Mahasiswa dapat memahami penggunaan prosedur dengan parameter. Mahasiswa dapat membuat prosedur dengan parameter. TEORI PENGANTAR: Penggunaan parameter menawarkan
Lebih terperinciAlgoritma dan Struktur Data I
Algoritma dan Struktur Data I Mia Fitriawati, S.Kom, M.Kom Pemilihan Seringkali suatu instruksi hanya bisa dikerjakan jika ia memenuhi suatu persyaratan tertentu Komputer tidak lagi mengerjakan instruksi
Lebih terperinciAlgoritma dan Struktur Data
20/11/2014 Algoritma dan Struktur Data Algoritma Pemrograman Bekti Wulandari, M.Pd Kelas B TE 2014 Program Program: sederetan perintah-perintah yang harus dikerjakan oleh komputer untuk menyelesaikan masalah.
Lebih terperinciAlgoritma Brute Force
Algoritma Brute Force Definisi Brute Force Brute force adalah sebuah pendekatan yang lempang (straightforward( straightforward) ) untuk memecahkan suatu masalah, biasanya didasarkan pada pernyataan masalah
Lebih terperinciAlgoritma dan Pemrograman. Pertemuan Ke-11 Function
Algoritma dan Pemrograman Pertemuan Ke-11 Function Disusun Oleh : Wilis Kaswidjanti, S.Si.,M.Kom. Jurusan Teknik Informatika Fakultas Teknologi Industri Universitas Pembangunan Nasional Veteran Yogyakarta
Lebih terperinciTIPE, NAMA, DAN NILAI
TIPE, NAMA, DAN NILAI Dian Palupi Rini, M.Kom Tipe Dasar Bilangan Logika Nama Tipe adalah boolean (diambil dari nama matematikawan Inggris George Boole). Ranah Nilai : true (benar) dan false (salah). Konstanta
Lebih terperinciALGORITMA PERULANGAN
Pertemuan 08 ALGORITMA PERULANGAN Pada Bab ini anda akan mempelajari 1. Pengertian algoritma perulangan 2. Perulangan for-do 3. Perulangan while-do 4. Perulangan repeat-until Algoritma Perulangan Ada kalanya
Lebih terperinciDASAR PEMROGRAMAN. Institut Teknologi Sumatera
DASAR PEMROGRAMAN REVIEW STRUKTUR DASAR, PERCABANGAN, DAN PERULANGAN Institut Teknologi Sumatera TUJUAN KULIAH Mengenalkan konsep dasar pemrograman: dekomposisi problem, modularisasi, rekurens; skill/praktek
Lebih terperinci1. Kompetensi Mengenal dan memahami notasi-notasi algoritma yang ada.
Semester : 4 Pengenalan Algoritma dan Program 200 menit No. : LST/EKA/EKA259/01 Revisi : 01 Tgl. : 10-2-2014 Hal. 1 dari 2 hal. 1. Kompetensi Mengenal dan memahami notasi-notasi algoritma yang ada. 2.
Lebih terperinciFungsi. Fungsi. Dasar Komputer & Pemrograman 1. dipecah Sub Program. Program. Dasar Komputer & Pemrograman TC22052 Kartika Firdausy - UAD
Fungsi Dasar Komputer & Pemrograman TC22052 Kartika Firdausy - UAD Program dipecah Sub Program modul / routine / prosedur / fungsi Dasar Komputer & Pemrograman 1 Keuntungan modularisasi program 1. Menghindari
Lebih terperinciNama, Tipe, Ekspresi, dan Nilai
Nama, Tipe, Ekspresi, dan Nilai ALGORITMA DAN PEMROGRAMAN [IS6110102] Dosen: Yudha Saintika, S.T., M.T.I Sub-Capaian Pembelajaran MK Mahasiswa mampu menerapkan konsep nama, tipe, ekspresi, nilai ke dalam
Lebih terperinciAlgoritma & Pemrograman FUNGSI. Pengampu : Agus Priyanto, M.Kom SEKOLAH TINGGI TEKNOLOGI TELEMATIKA TELKOM. Smart, Trustworthy, And Teamwork
Algoritma & Pemrograman FUNGSI Pengampu : Agus Priyanto, M.Kom SEKOLAH TINGGI TEKNOLOGI TELEMATIKA TELKOM Smart, Trustworthy, And Teamwork FUNGSI Modul program yang mengembalikan/ memberikan (return) sebuah
Lebih terperinciAlgoritma Brute Force (Bagian 1) Oleh: Rinaldi Munir
Algoritma Brute Force (Bagian 1) Oleh: Rinaldi Munir Bahan Kuliah IF2251 Strategi Algoritmik 1 Definisi Brute Force Brute force : pendekatan yang lempang (straightforward) untuk memecahkan suatu masalah
Lebih terperinciAturan Penulisan Algoritma Setiap Algoritma akan selalu terdiri dari tiga bagian yaitu : Judul (Header) Kamus Algoritma
Pengantar dan Pemrograman alex@ilmukomputer.com Lisensi Dokumen: Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial (nonprofit),
Lebih terperinciSOAL C++ Created by Yuli Astuti,S.Kom Copyright 2009
SOAL C++ 1. Penulisan Preprocessor yang benar di awali dengan tanda pound atau tanda : a. # c. @ b. & d. = 2. Contoh penulisan file header yang benar yaitu : a. &include c. =include
Lebih terperinciPERTEMUAN 7 REVIEW (QUIZ)
PERTEMUAN 7 REVIEW (QUIZ) 1. Langkah pertama yang harus dilakukan dalam menyusun suatu program a. Membuat Hipotesa b. Membuat Masalah c. Membuat Algoritma d. Membuat Program e. Menyalakan Komputer 2. Sebuah
Lebih terperinciKisi-Kisi Ujian Tengah Semester Algoritma dan Pemrograman Lanjut
Kisi-Kisi Ujian Tengah Semester Algoritma dan Pemrograman Lanjut 1. Pengenalan Bahasa C++ a. Elemen Bahasa C+ Bahasa C++ ditulis dari beberapa elemen, antara lain: Pernyataan Satu atau beberapa ekspresi
Lebih terperinciAlgoritma Pemrograman
Algoritma Pemrograman Pertemuan Ke-3 (Tipe Data dan Nama) Noor Ifada noor.ifada@if.trunojoyo.ac.id S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Tipe Dasar Tipe Bentukan Nama S1 Teknik
Lebih terperinciTeori Algoritma. Struktur Algoritma
Alam Santosa Teori Algoritma Runtunan Struktur Algoritma Seperti telah dijelaskan sebelumnya, sebuah algoritma terbagi tiga bagian, yaitu: Judul Deklarasi Deskripsi Judul Judul program digunakan untuk
Lebih terperinciYudha Dwi P. N. S.Kom. Pertemuan 3 Aturan Penulisan Teks Algoritma
Yudha Dwi P. N. S.Kom Pertemuan 3 Aturan Penulisan Teks Algoritma Aturan Penulisan Teks Algoritma Teks algoritma berisi deskripsi langkah-langkah penyelesaian masalah. Deskripsi tersebut dapat ditulis
Lebih terperinciPOKOK BAHASAN - 2 PEMROGRAMAN MODULAR
STRUKTUR DATA POKOK BAHASAN - 2 PEMROGRAMAN MODULAR Oleh : NAZARUDDIN AHMAD, S.T, M.T Design By mytemplate 2013 1. Pemrograman Modular Pemrograman Modular adalah pemrograman yang dilakukan dengan membuat
Lebih terperinciAlgoritma & Pemrograman
Algoritma & Pemrograman PENGULANGAN Pendahuluan Salah satu kelebihan komputer dibandingkan dengan manusia adalah kemampuannya untuk melaksanakan suatu instruksi berulang kali tanpa mengenal lelah dan bosan.
Lebih terperinciSTRUKTUR DASAR ALGORITMA
STRUKTUR DASAR ALGORITMA Pertemuan 5 Muhamad Haikal, S.Kom., MT Struktur Dasar Algoritma 1. Struktur Sequence (Runtunan) 2. Struktur Selection (Pemilihan) 3. Struktur Repetition (Perulangan) Struktur Sequence
Lebih terperinciTinjau algoritma dibawah ini
Matakuliah : Algoritma & Struktur Data Versi : 1.0.0 Materi : Tipe, Nama, dan Nilai Penyaji : Zulkarnaen NS 1 Tinjau algoritma dibawah ini Di dalam algoritma Euclidean, nilai m dan n dimanipulasi oleh
Lebih terperinciLOOPING. Brigida Arie Minartiningtyas, M.Kom
LOOPING Brigida Arie Minartiningtyas, M.Kom Program yang efisien adalah program yang memungkinkan pengguna bekerja sesedikit mungkin dan komputer bekerja sebanyak mungkin. Kondisi perulangan Ekspresi boolean
Lebih terperinciPertemuan Ke-3 (Tipe Data dan Nama) Rahmady Liyantanto. S1 Teknik Informatika-Unijoyo
Algoritma Pemrograman Pertemuan Ke-3 (Tipe Data dan Nama) Rahmady Liyantanto Sub Pokok Bahasan Pendahuluan Tipe Dasar Tipe Bentukan Nama Pendahuluan Tipe adalah pola representasi data dalam komputer. Tipe
Lebih terperinciBAHAN AJAR ALGORITMA DAN PEMROGRAMAN I
BAHAN AJAR ALGORITMA DAN PEMROGRAMAN I OLEH: Budi Mulyono, S.Pd., M.Sc. Drs. Purwoko, M.Si. PENDIDIKAN MATEMATIKA FAKULTAS KEGURUAN DAN ILMU PENDIDIKAN UNIVERSITAS SRIWIJAYA i KATA PENGANTAR Bahan ajar
Lebih terperinci2 ATURAN PENULISAN TEKS ALGORITMA
2 ATURAN PENULISAN TEKS ALGORITMA Teks algoritma berisi deskripsi langkah-langkah penyelesaian masalah. Deskripsi tersebut dapat ditulis dalam notasi apapun, asalkan mudah dimengerti dan dipahami. Tidak
Lebih terperinciUJIAN TENGAH SEMESTER GANJIL TAHUN STMIK AMIKOM YOGYAKARTA
UJIAN TENGAH SEMESTER GANJIL TAHUN 2012 2013 STMIK AMIKOM YOGYAKARTA Mata Ujian : Algoritma dan Pemrograman Kelas : 12-S1TI-12 s/d 14 Sifat : Open Book (Close Laptop) Jurusan : S1 Teknik Informatika Hari
Lebih terperinciALGORITMA & PEMROGRAMAN
MODUL BAHAN AJAR ALGORITMA & PEMROGRAMAN Oleh : Shiyami M, S.Kom. JURUSAN MANAJEMEN INFORMATIKA POLITEKNIK POS INDONESIA BANDUNG 2011 DAFTAR ISI BAB I PENGENALAN ALGORITMA... 1 BAB II NOTASI ALGORITMIK,
Lebih terperinciPROSEDUR/SUB RUTIN. Algoritma & Pemrograman. Pengampu : Agus Priyanto, M.Kom SEKOLAH TINGGI TEKNOLOGI TELEMATIKA TELKOM
Algoritma & Pemrograman PROSEDUR/SUB RUTIN Pengampu : Agus Priyanto, M.Kom SEKOLAH TINGGI TEKNOLOGI TELEMATIKA TELKOM Smart, Trustworthy, And Teamwork Pemrograman Modular Teknik pemrograman modular : Program
Lebih terperinciPertemuan 4 RUNTUNAN/SEKUENSIAL
ALGORITMA PEMROGRAMAN (Semester 1 - IF6110202) Pertemuan 4 RUNTUNAN/SEKUENSIAL Jadwal: Selasa, 17/10/2017, 10:20-12.00 (2 sks) Dosen:Condro Kartiko CAPAIAN PEMBELAJARAN UMUM Setelah mengikuti mata kuliah
Lebih terperinciAlgoritma Pemrograman
Algoritma Pemrograman Pertemuan Ke-3 Tipe Data dan Nama :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Tipe Dasar Tipe Bentukan Nama S1 Teknik Informatika-Unijoyo 2 Pendahuluan
Lebih terperinciAlgoritma Pemrograman
Algoritma Pemrograman Pertemuan Ke-3 (Tipe Data dan Nama) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Tipe Dasar Tipe Bentukan Nama S1 Teknik Informatika-Unijoyo 2 1
Lebih terperinciAlgoritmaBrute Force. Desain dan Analisis Algoritma (CS3024)
AlgoritmaBrute Force Desain dan Analisis Algoritma (CS3024) Definisi Brute Force Brute forceadalah sebuah pendekatan yang lempang (straightforward) untuk memecahkan suatu masalah, biasanya didasarkan pada
Lebih terperinciBrigida Arie Minartiningtyas, M.Kom
Brigida Arie Minartiningtyas, M.Kom Pseudocode Pseudo berarti imitasi atau mirip atau menyerupai Code menunjukkan kode dari program Pseudocode adalah kode yang mirip dengan instruksi kode program yang
Lebih terperinciMODUL PRAKTIKUM. MODUL I - VIII Modul penuntun dan bahan praktikum matakuliah algoritma dan pemograman
I - VIII Modul penuntun dan bahan praktikum matakuliah algoritma dan pemograman Jurusan Teknik Informatika Fakultas Teknik Universitas Maritim Raja Ali Haji ALGORITMA DAN PEMOGRAMAN I. ALGORITMA II. BAHASA
Lebih terperinciMODUL PRAKTIKUM ALGORITMA PEMROGRAMAN TEKNIK INFORMATIKA
MODUL PRAKTIKUM ALGORITMA PEMROGRAMAN TEKNIK INFORMATIKA Nama : NRP : Laboratorium Pemrograman JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS TRUNOJOYO 2012 KONTRAK PRAKTIKUM Nama Mata Kuliah :
Lebih terperinciMODUL 10 Fungsi 10.1 Kompetensi 10.2 Alat Dan Bahan: 10.3 Ulasan Teori: Dasar Fungsi Deklarasi Fungsi
MODUL 10 Fungsi 10.1 Kompetensi 1. Mahasiswa mampu membagi logika program dengan menggunakan fungsi. 2. Mahasiswa memahami konsep rekursif serta mengimplementasikan dengan menggunakan fungsi. 10.2 Alat
Lebih terperinciPROCEDURE DAN FUNCTION
PROCEDURE DAN FUNCTION Seolah-olah terpisah dari program utama, namun sebenarnya mrpkn bagian dari program utama yg kemudian dipanggil (dapat berulang) oleh program utama tsb. Modul atau blok program yang
Lebih terperinciSpesifikasi: Ukuran: 14x21 cm Tebal: 225 hlm Harga: Rp Terbit pertama: Februari 2005 Sinopsis singkat:
Spesifikasi: Ukuran: 14x21 cm Tebal: 225 hlm Harga: Rp 32.800 Terbit pertama: Februari 2005 Sinopsis singkat: Struktur data merupakan salah satu ilmu fundamental untuk mempelajari pemrograman. Mahasiswa
Lebih terperincic. Hasil pencarian berupa nilai Boolean yang menyatakan status hasil pencarian. Versi 1 (Pembandingan elemen dilakukan sebagai kondisi pengulangan)
ALGORITMA PENCARIAN MINGGU KE: 9 TUJUAN: Mahasiswa dapat memahami masalah pencarian. Mahasiswa dapat memahami algoritma pencarian beruntun. Mahasiswa dapat memahami algoritma pencarian beruntun Versi 1
Lebih terperinciSubprogram (dalam Bahasa C++ + Flowchart)
Subprogram (dalam Bahasa C++ + Flowchart) Tim Penyusun Materi PTI-B KU1072/Pengenalan Teknologi Informasi B Tahap Tahun Pertama Bersama Institut Teknologi Bandung Tujuan Mahasiswa memahami makna dan kegunaan
Lebih terperinciAlgoritma Pemrograman
Algoritma Pemrograman Pertemuan Ke-14 (Rekursi) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Faktorial Menara Hanoi S1 Teknik Informatika-Unijoyo 2 Pendahuluan Algoritma
Lebih terperinciPERTEMUAN - 3 PEMROGRAMAN MODULAR
ALGORITMA & PEMROGRAMAN 2 PERTEMUAN - 3 PEMROGRAMAN MODULAR Oleh : NAZARUDDIN AHMAD, S.T, M.T Design By mytemplate 2013 1. Pemrograman Modular Pemrograman Modular adalah pemrograman yang dilakukan dengan
Lebih terperinciAlgoritma Pemrograman
Algoritma Pemrograman Pertemuan Ke-14 (Rekursi) Noor Ifada noor.ifada@if.trunojoyo.ac.id S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Faktorial Menara Hanoi S1 Teknik Informatika-Unijoyo
Lebih terperinciAlgoritma dan Pemrograman. Loop control structures: WHILE. Loop control structures: WHILE Perhatikan potongan program berikut: 12/29/2011
Algoritma dan Pemrograman WHILE while (kondisi) statement; FALSE kondisi? TRUE statement Pernyataan (statements) di dalam struktur WHILE akan diproses minimum NOL kali. Mengapa? WHILE Perhatikan potongan
Lebih terperinciAlgoritma & Pemrograman 1. Muhamad Nursalman Pendilkom/Ilkom Universitas Pendidikan Indonesia
Algoritma & Pemrograman 1 Muhamad Nursalman Pendilkom/Ilkom Universitas Pendidikan Indonesia Daftar Isi 1. Bab 1 Pengantar & Dasar Dasar Algoritma 2. Bab 2 Aturan Penulisan Teks Algoritma 3. Bab 3 Tipe,
Lebih terperinciProcedure. Brigida Arie Minartiningtyas, M.Kom
Procedure Brigida Arie Minartiningtyas, M.Kom Pemrograman Modular Program besar dipecah menjadi beberapa sub-program yang kecil Tiap sub-program disebut MODUL Sehingga suatu program utama dapat dibuat
Lebih terperinciDefinisi Percabangan
Pertemuan 2 Percabangan Sederhana MK. Algoritma dan Struktur Data Bekti Wulandari, M.Pd. TE KELAS B 2014 Definisi Percabangan Percabangan adalah suatu suatu perintah (pernyataan) yang memungkinkan suatu
Lebih terperinciCCH1A4 / Dasar Algoritma & Pemrogramanan
CCH1A4 / Dasar & Pemrogramanan Yuliant Sibaroni M.T, Abdurahman Baizal M.Kom KK Modeling and Computational Experiment FUNGSI Overview Fungsi Konsep Fungsi Fungsi Sederhana Fungsi dengan Analisa Kasus If...Then...Else
Lebih terperinciBAHAN AJAR ALGORITMA DAN PEMROGRAMAN I
BAHAN AJAR ALGORITMA DAN PEMROGRAMAN I OLEH: Budi Mulyono, S.Pd., M.Sc. Drs. Purwoko, M.Si. PENDIDIKAN MATEMATIKA FAKULTAS KEGURUAN DAN ILMU PENDIDIKAN UNIVERSITAS SRIWIJAYA i KATA PENGANTAR Bahan ajar
Lebih terperinciCCH1A4 / Dasar Algoritma & Pemrogramanan
CCH1A4 / Dasar & Pemrogramanan Yuliant Sibaroni M.T, Abdurahman Baizal M.Kom KK Modeling and Computational Experiment PROSEDUR Overview Prosedur Konsep Prosedur Prosedur Tanpa Input/Output Prosedur dengan
Lebih terperinciPEMILIHAN. Runtunan. Dian Palupi Rini, M.Kom
PEMILIHAN Dian Palupi Rini, M.Kom Runtunan Struktur runtunan hanya terdapat pada program sederhana. Pada umumnya, masalah yang akan diselesaikan memiliki beberapa alternatif pelaksanaan aksi. Suatu aksi
Lebih terperinciAlgoritma dan Struktur Data I Mia Fitriawati, S.Kom, M.Kom
Runtunan Algoritma dan Struktur Data I Mia Fitriawati, S.Kom, M.Kom Runtunan terdiri dari satu atau lebih pernyataan Tiap pernyataan dikerjakan secara berurutan sesuai urutannya Urutan instruksi menentukan
Lebih terperinciAlgoritma Pemrograman 2B (Pemrograman C++)
Algoritma Pemrograman 2B (Pemrograman C++) Jurusan Sistem Komputer Dr. Lily Wulandari Materi 4 FUNGSI (FUNCTION) PADA C++ 1 Outline Konsep Dasar Fungsi Standar File Header Definisi Fungsi Deklarasi Fungsi
Lebih terperinciA. TUJUAN 1. Memecah program dalam fungsi fungsi yang sederhana. 2. Menjelaskan tentang pemrograman terstruktur.
Praktikum 7 (3/5) FUNGSI A. TUJUAN 1. Memecah program dalam fungsi fungsi yang sederhana. 2. Menjelaskan tentang pemrograman terstruktur. B. DASAR TEORI Pemanggilan dengan nilai merupakan cara yang dipakai
Lebih terperinciPertemuan 3 Prosedur dan Fungsi
Pertemuan 3 Prosedur dan Fungsi Objektif: 1. Memahami penggunaan prosedur dan fungsi 2. Mengerti pengiriman parameter dalam prosedur dan fungsi 3. Dapat membuat program sederhana menggunakan prosedur dan
Lebih terperinciAlgoritma dan Pemrograman 2. PROSEDUR dan FUNGSI
Algoritma dan Pemrograman 2 PROSEDUR dan FUNGSI Baik prosedur maupun fungsi merupakan suatu modul sub program yang mengerjakan tugas/aktivitas yang spesifik. Perbedaan diantara keduanya adalah sebuah fungsi
Lebih terperinciALGORITMA DAN PEMROGRAMAN
ALGORITMA DAN PEMROGRAMAN MATERI 3 1 2 Macam macam struktur algoritma : RUNTUNAN (SEQUENCE) PEMILIHAN (SELECTION) PENGULANGAN (REPETITION) 3 RUNTUNAN Runtunan merupakan struktur algoritma paling dasar
Lebih terperinciSUB PROGRAM P E N G A N TA R P R O G R A M S T U D I. Institut Teknologi Sumatera
SUB PROGRAM P E N G A N TA R P R O G R A M S T U D I Institut Teknologi Sumatera PRE TEST Jelaskan apa yang dimaksud dengan perulangan? Sebutkan jenis metode perulangan? Apa perbedaan dari masing-masing
Lebih terperinciStruktur Pengulangan
ALGORITMA & STRUKTUR DATA1 Mia Fitriawati S.Kom, M.Kom Struktur Pengulangan Struktur pengulangan secara umum terdiri atas dua bagian: Kondisi pengulangan Badan (body) pengulangan Struktur pengulangan secara
Lebih terperinciFAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET BAHASA PEMROGRAMAN Fungsi : Passing Parameter by Value & Semester 3
No. LST/EKA/EKA255/09 Revisi : 00 Tgl : 8 Sept 2014 Hal 1 dari 5 A. TUJUAN PEMBELAJARAN 1. Memahami perbedaan pengiriman parameter secara nilai dan secara alamat. 2. Memecah program dalam fungsi fungsi
Lebih terperinciAlgoritma Pemrograman
Algoritma Pemrograman Pertemuan Ke-6 (Pengulangan atau Looping [1]) 1 Sub Pokok Bahasan Pendahuluan Struktur Pengulangan Pengulangan tanpa kondisi dan dengan kondisi Struktur FOR (menaik dan menurun) 2
Lebih terperinciALGORITMA (KOMPUTER) : ATURAN PENULISAN DAN STRUKTUR DASARNYA
ALGORITMA (KOMPUTER) : ATURAN PENULISAN DAN STRUKTUR DASARNYA I. Pendahuluan Algoritma dapat ditulis dalam notasi apapun asalkan mudah dimengerti dan dipahami. Algoritma dapat ditulis dalam bahasa natural/bahasa
Lebih terperinciLAPORAN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN ( Implementasi Rekursi Pada Java)
LAPORAN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN ( Implementasi Rekursi Pada Java) Di susun oleh: Wahyono ( 06/193218/PA/10892 ) Praktikan Algoritma dan Pemrograman Kelas A 7 Mei 2007 LABORATORIUM KOMPUTASI
Lebih terperinciOPERASI SELEKSI PEMROGRAMAN C++
OPERASI SELEKSI PEMROGRAMAN C++ ruliriki@gmail.com PEMILIHAN IF SWITCH PEMILIHAN Memilih bilangan terbesar atau terkecil dari dua buah bilangan menggunakan Control statement if Syntax Penulisan if statement:
Lebih terperinci