TEL 2112 Dasar Komputer & Pemograman Prosedur

Slides:



Advertisements
Presentasi serupa
TEL 2112 Dasar Komputer & Pemograman Pengulangan
Advertisements

TEL 2112 Dasar Komputer & Pemograman Nama dan Nilai Objek Abdillah, S.Si, MIT Website:
Procedure Ery Setiyawan Jullev A. Cont  Seringkali dalam membuat pembuatan program yang berukuran besar, program tersebutdipecah menjadi beberapa subprogram.
Prosedur dan Fungsi.
Prosedur dan Fungsi.
Notasi Algoritma.
Prosedur (Procedure).
Shofia D. Agustina.  Agar dapat dieksekusi oleh komputer, algoritma harus diterjemahkan terlebih dahulu kedalam notasi bahasa pemrograman. Penerjemahan.
Modul 4 Prosedur dan Fungsi.
Function User Function.
Prosedur dan Fungsi Triana Elizabeth, S.Kom.
FUNGSI.
Notasi Algoritma TEE 2103 Algoritma dan Pemrograman
TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah
TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah
Prosedur.
KELOMPOK 02 ALOGARITMA PEMOGRAMAN TAHUN AJARAN
Array (bagian 2).
BAB 6 FUNGSI DAN PROSEDUR.
Prosedur Tim PHKI Modul Dasar Pemrograman Fakultas Ilmu Komputer
Prosedur dalam C++.
Struktur Program TEE 2103 Algoritma dan Pemrograman
TEL 2112 Dasar Komputer & Pemograman Prosedur
PERTEMUAN XI PROSEDUR ALGORITMA & PEMROGRAMAN I TEKNIK INFORMATIKA
Prosedur (Procedure).
Algoritma dan Pemrograman I Dosen : Utami Dewi Widianti
Ucu Nugraha, ST. Algoritma.
TEL 2112 Dasar Komputer & Pemograman Pemrograman Modular
Apa itu Fungsi? Sebuah fungsi adalah modul program yang mengerjakan tugas atau aktivitas yang spesifik dan mengembalikan sebuah nilai dari tipe tertentu,
TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah 2
TEL 2112 Dasar Komputer & Pemograman Penyeleksian
Contoh-contoh Pemecahan Masalah TEE 2103 Algoritma & Pemograman
TEL 2103 Dasar Komputer & Pemograman Larik (Array)
TEL 2112 Dasar Komputer & Pemograman Fungsi
Fungsi TEE 2103 Algoritma & Pemrograman Dosen: Abdillah, MIT
TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah 2
TEL 2112 Dasar Komputer & Pemograman Nama dan Nilai Data
Array 1.
Algoritma dan Pemrograman Subrutin
TEL 2112 Dasar Komputer & Pemograman Larik (Array)
Array/Larik.
TEL 2112 Dasar Komputer & Pemograman Larik (Array)
PROCEDURE DAN FUNCTION
TEL 2112 Dasar Komputer & Pemograman Pemrograman Modular
TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah
PERULANGAN.
TEL 2112 Dasar Komputer & Pemrograman
TEL 2112 Dasar Komputer & Pemograman Algoritma Pemrograman
Contoh-contoh Pemecahan Masalah 2 TEE 2103 Algoritma & Pemograman
TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah 2
TEL 2112 Dasar Komputer & Pemrograman
CS1023 Pemrograman Komputer
Algoritma dan Pemrograman
Algoritma dan Pemrograman Subrutin
Pengantar Pemrograman Modular
TEL 2112 Dasar Komputer & Pemograman Fungsi
TEL 2112 Dasar Komputer & Pemograman Pemrograman Modular
TEL 2112 Dasar Komputer & Pemograman Prosedur
Algoritma dan Pemrograman I
TEL 2112 Dasar Komputer & Pemograman Fungsi
Contoh-contoh Pemecahan Masalah 2 TEE 2103 Algoritma & Pemograman
TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah 2
TEE 2103 Algoritma & Pemrograman
TEL 2112 Dasar Komputer & Pemograman Pengantar Algoritma
TEL 2112 Dasar Komputer & Pemograman Pengantar Algoritma
Review Algoritma 1 Teks Algoritma terdiri dari tiga bagian :
PROCEDURE DAN FUNGSI.
Fungsi.
PROSEDUR & FUNGSI.
BAB 6 SUB PROGRAM.
Transcript presentasi:

TEL 2112 Dasar Komputer & Pemograman Prosedur Abdillah, S.Si, MIT Email: abdill01@gmail.com Website: http://abdill01.wordpress.com

Tujuan Mahasiswa mampu memecah sebuah program besar menjadi sejumlah prosedur.

Definisi Prosedur adalah modul program yang mengerjakan tugas atau aktivitas yang spesifik dan menghasilkan suatu efek netto yang diketahui dengan membandingkan keadaan awal dan keadaan akhir pada pelaksanaan sebuah prosedur. Oleh karena itu pada setiap prosedur perlu didefinisikan keadaan awal (K.Awal) sebelum rangkaian instruksi di dalam prosedur dilaksanakan dan keadaan akhir (K. Akhir) yang diharapkan setelahnya.

Notasi Algoritmik procedure Nama_Prosedur (parameter)‏ { Berisi penjelasan apa yang dilakukan prosedur. K. Awal : Keadaan sebelum prosedur dilakukan K. Akhir : Keadaan sesudah prosedur dilakukan } DEKLARASI { Semua nama yang dipakai di dalam prosedur } ALGORITMA { Badan prosedur, berisi urutan instruksi }

Algoritma Program Segitiga { Menghitung luas N buah segitiga } DEKLARASI i,N : integer procedure Hitung_Luas()‏ ALGORITMA: read (N) { tentukan banyaknya segitiga } for i  1 to N do Hitung_Luas(a,t)‏ endfor

Algoritma Prosedur Hitung_Luas procedure Hitung_Luas()‏ Menghitung luas segitiga = (alasxtinggi)/2} {K. Awal : sembarang} {K. Akhir : luas segitiga tercetak} DEKLARASI alas,tinggi,luas : real ALGORITMA: read (alas, tinggi)‏ luas ← (alas*tinggi)/2 write (luas)‏

Listing Program Hitung_Luas /* program menghitung luas segitiga */ #include <stdio.h> void HitungLuasSegitiga(); void main() { int i, N; printf("Masukkan banyaknya segitiga = "); scanf("%d",&N); for (i=1; i<=N; i++) HitungLuasSegitiga(); }

Listing Program Hitung_Luas void HitungLuasSegitiga() { float alas, tinggi, luas; luas = (alas*tinggi)/2; printf("Masukkan alas segitiga = "); scanf("%d",&alas); printf("Masukkan tinggi segitiga = "); scanf("%d",&tinggi); printf("Luas segitiga adalah = %f",luas); }

Parameter Parameter yang disertakan pada waktu pemanggilan subprogram disebut parameter aktual. Parameter yang disertakan di dalam bagian judul disebut parameter formal. Ketika subprogram dipanggil, kendali program berpindah secara otomatis ke subprogram tsb. Setelah semua instruksi di dalam subprogram dilaksanakan, kendali program berpindah secara otomatis kembali ke instruksi sesudah pemanggilan subprogram.

Parameter Formal Berdasarkan maksud penggunaannya, ada tiga jenis parameter formal yang disertakan dalam prosedur a. Parameter masukan‏ b. Parameter keluaran‏ c. Parameter masukan/keluaran

A. Parameter Masukan Pada parameter masukan, nilai parameter aktual ditugaskan ke dalam parameter formal. Perubahan nilai parameter di dalam badan prosedur tidak mengubah nilai parameter aktual. Karena yang penting adalah nilainya, maka nama parameter aktual boleh berbeda dari nama parameter formal yang bersesuaian.

Algoritma Program Segitiga { Menghitung luas N buah segitiga } DEKLARASI i,N : integer a,t : real procedure Hitung_Luas(input alas, tinggi : real)‏ ALGORITMA: read (N) { tentukan banyaknya segitiga } for i  1 to N do read (a, t)‏ Hitung_Luas(a,t)‏ endfor

Algoritma Prosedur Hitung_Luas procedure Hitung_Luas(input alas, tinggi : real)‏ Menghitung luas segitiga = (alasxtinggi)/2} {K. Awal : nilai alas dan tinggi sudah diketahui} {K. Akhir : luas segitiga tercetak} DEKLARASI luas : real ALGORITMA: luas ← (alas*tinggi)/2 write (luas)‏

Listing Program Hitung_Luas /* program menghitung luas segitiga */ #include <stdio.h> void HitungLuasSegitiga(float alas, float tinggi); void main() { int i, N; float a, t; printf("Masukkan banyaknya segitiga = "); scanf("%d",&N); for (i=1; i<=N; i++) printf("Masukkan alas segitiga = "); scanf("%d",&a); printf("Masukkan tinggi segitiga = "); scanf("%d",&t); HitungLuasSegitiga(a, t); }

Listing Program Hitung_Luas void HitungLuasSegitiga() { float alas, tinggi, luas; luas = (alas*tinggi)/2; printf("Masukkan alas segitiga = "); scanf("%d",&alas); printf("Masukkan tinggi segitiga = "); scanf("%d",&tinggi); printf("Luas segitiga adalah = %f",luas); }

Penjelasan Nama parameter aktual tidak harus sama dengan nama parameter formal Perhatikan bahwa prosedur Hitung_Luas dipanggil dengan menyertakan nilai alas dan tinggi di dalam peubah a dan t Ketika prosedur Hitung_Luas dipanggil, maka nilai parameter aktual a dan t diisikan ke dalam parameter formal alas dan tinggi Karena yang penting adalah nilainya, maka parameter aktual boleh berupa ekspresi atau konstanta. Misalnya Hitung_Luas(a*0.2, t*0.1)‏ atau Hitung_Luas(12.0,6.0) adalah benar.

Penjelasan Kata kunci input pada parameter formal menyatakan bahwa alas dan tinggi adalah parameter masukan. Keadaan awal prosedur adalah kondisi dimana alas dan tinggi sudah berisi nilai sebelum pelaksanaan prosedur. Keadaan akhir prosedur adalah kondisi dimana luas segitiga tercetak. Program utama yang memanggil prosedur ini harus mendeklarasikannya dan memanggilnya dengan parameter aktual yang bersesuaian.

B. Parameter Keluaran Pada parameter keluaran, nilai parameter aktual ditugaskan ke dalam parameter formal. Perubahan nilai parameter di dalam badan prosedur tidak mengubah nilai parameter aktual. Karena yang penting adalah nilainya, maka nama parameter aktual boleh berbeda dari nama parameter formal yang bersesuaian.

Algoritma Program Segitiga { Menghitung luas N buah segitiga } DEKLARASI i,N : integer a,t,L : real procedure Hitung_Luas(input alas, tinggi : real)‏ output luas : real)‏ ALGORITMA: read (N) { tentukan banyaknya segitiga } for i  1 to N do read (a, t)‏ Hitung_Luas(a,t,L)‏ write(L)‏ endfor

Algoritma Prosedur Hitung_Luas procedure Hitung_Luas(input alas, tinggi : real, output luas : real)‏ {Menghitung luas segitiga = (alasxtinggi)/2} {K. Awal : nilai alas dan tinggi sudah diketahui} {K. Akhir : luas berisi luas segitiga} DEKLARASI {tidak ada} ALGORITMA: luas ← (alas*tinggi)/2

Penjelasan Kata kunci output pada parameter menyatakan bahwa luas adalah parameter keluaran. Jika kita ingin luas segitiga dicetak di dalam program pemanggil, maka kita harus menyatakan luas sebagai parameter keluaran. Keadaan akhir prosedur adalah kondisi dimana luas segitiga selesai dihitung. Program utama yang memanggil prosedur ini harus mendeklarasikannya dan memanggilnya dengan parameter aktual yang bersesuaian.

Penjelasan Nama parameter aktual tidak harus sama dengan nama parameter formal Ketika prosedur Hitung_Luas dipanggil, maka nilai parameter aktual a dan t diisikan ke dalam parameter formal alas dan tinggi, sedangkan nama parameter aktual L menggantikan luas Pada jenis parameter keluaran ini, parameter aktual harus berupa peubah, tidak boleh konstanta atau ekspresi.

Listing Program Hitung_Luas /* program menghitung luas segitiga */ void HitungLuas(float alas, float tinggi, float *luas); void main() { int i, N; float a, t, L; printf("Masukkan banyaknya segitiga = "); scanf("%d",&N); for (i=1; i<=N; i++) printf("Masukkan alas segitiga = "); scanf("%f",&a); printf("Masukkan tinggi segitiga = "); scanf("%f",&t); HitungLuas(a, t, &L); printf("Luas segitiga adalah = %.2f \n", L); } void HitungLuas(float alas, float tinggi, float *luas) *luas = (alas*tinggi)*0.5;

C. Parameter Masukan/Keluaran Pada parameter masukan/keluaran dapat mengakomodasi masukan dari dan keluaran ke blok program pemanggil. Perubahan nilai parameter di dalam badan prosedur mengubah nilai parameter aktual. Parameter masukan/keluaran dideklarasikan di dalam header prosedur denga kata kunci input/output. Pada jenis parameter masukan/keluaran ini, parameter aktual harus berupa peubah, tidak boleh konstanta atau ekspresi.

Algoritma Prosedur Tukar procedure Tukar(input/output A,B : integer) {Mempertukarkan nilai A dan B} {K. Awal : nilai A dan B sudah diketahui} {K. Akhir : A berisi nilai B lama dan B berisi nilai A yang lama} DEKLARASI temp : integer ALGORITMA: temp A A  B B  temp