Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Algoritma dan Struktur Data. Page  2 FUNGSI  Sub Program yang mengembalikan nilai dengan nilai tertentu ke modul utama yang memanggilnya Pseudocode.

Presentasi serupa


Presentasi berjudul: "Algoritma dan Struktur Data. Page  2 FUNGSI  Sub Program yang mengembalikan nilai dengan nilai tertentu ke modul utama yang memanggilnya Pseudocode."— Transcript presentasi:

1 Algoritma dan Struktur Data

2 Page  2 FUNGSI  Sub Program yang mengembalikan nilai dengan nilai tertentu ke modul utama yang memanggilnya Pseudocode FUNGSI Function NAMA_FUNCTION(input daftar parameter)  tipe hasil {Penjelasan tentang apa yang dilakukan fungsi tersebut dan yang dikembalikan oleh fungsi} Deklarasi {semua nama yang dipakai (variabel,konstanta) yang dipakai di prosedur dan hanya berlaku di dalam fungsi} Deskripsi {Kumpulan instruksi} return hasil {pengembalian niali yang dihasilkan fungsi}

3 Page  3 Example FUNGSI Function Y( Input x : real)  real {mengembalikan nilai y =2x 2 + 3x + 100} Deklarasi {tidak ada} Deskripsi return 2*x*x + 5*x - 10 Function Y( Input x : real)  real {mengembalikan nilai y =2x 2 + 3x + 100} Deklarasi hasil : real Deskripsi hasil = 2*x*x + 5*x - 10 return Tulislah fungsi untuk menghasilkan Y= 2x 2 + 5x - 10 real Y(double x) { return 2*x*x + 5*x – 10 } real Y(double x) { double hasil; hasil = 2*x*x + 5*x – 10; return hasil }

4 Page  4 Pemanggilan Fungsi  NamaFungsi(daftar_parameter)  Variabel  NamaFungsi(daftar_parameter) Atau nilai yang dikembalikan oleh fungsi dapat langsung dimanipulasi (digunakan) contoh :  Write(NamaFungsi(daftar_parameter))  If NamaFungsi(daftar_parameter) <0 then  z  2 * NamaFungsi(daftar_parameter) Algoritma PanggilFungsi {Program Utama untuk memanggil fungsi} Deklarasi Function Y( Input x : real)  real a,b: real Deskripsi write(Y( 10)) read(a) write(Y( a)) b  y(20) write(b) PROGRAM UTAMA Function Y( Input x : real)  real {mengembalikan nilai y =2x 2 + 3x + 100} Deklarasi {tidak ada} Deskripsi return 2*x*x + 5*x - 10

5 Page  5 Example FUNGSI Buatlah fungsi beserta program utamanya untuk menentukan bilangan terbesar dari dua buah bilangan bulat !!! Algoritma Maksimum {Program Utama untuk memanggil fungsi terbesar} Deklarasi Function terbesar( Input a,b: integer)  integer nilai1,nilai2 : integer Deskripsi read(nilai1,nilai2) write(terbesar(nilai1,nilai2)) PROGRAM UTAMA Function terbesar( Input a,b: integer)  integer {mengembalikan nilai terbesar dari dua bilangan} Deklarasi {tidak ada} Deskripsi if a>b then return a else return b endif

6 Page  6 Translasi pseudocode fungsi ke C ++ #include using namespace std; int terbesar (int a,int b); void main() {int nilai1,nilai2; cout<<"NILAI 1 ?"; cin>>nilai1; cout<<"NILAI 2 ?"; cin>>nilai2; cout<<"Nilai Terbesar adalah"<b) {return a;} else {return b;} } int terbesar (int a,int b) { if (a>b) {return a;} else {return b;} }

7 Page  7 STRUCT (Tipe Terstruktur)  Struct adalah tipe data bentukan yang berisi kumpulan variabel-variabel yang bernaung dalam satu nama yang sama dan memiliki kaitan satu sama lain.  Variabel-variabel yang menjadi anggota struct disebut dengan elemen struct.  Setiap elemen struct bisa memiliki tipe data yang berbeda

8 Page  8 Pseudocode Struct (Pseudocode): Type namaVar : record < namaField1 : tipeField1, namaField2 : tipeField2, … … namaFieldm : tipeFieldm, > (bahasa C++) : struct namaTipeStruct { tipeField1 namaField1; tipeField2 namaField2; … … tipeFieldm namaFieldm; } namaVar;

9 Page  9 Pseudocode Struct (Pseudocode): Type namaVar : record < namaField1 : tipeField1, namaField2 : tipeField2, … … namaFieldm : tipeFieldm, > (bahasa C++) : struct namaTipeStruct { tipeField1 namaField1; tipeField2 namaField2; … … tipeFieldm namaFieldm; } namaVar;

10 Page  10 Example Type Pukul : record < jam : integer, menit : integer, detik : integer > Struct Pukul { jam : int, menit : int, detik : int } Note: Dibuat Tipe data bentukan baru dengan nama pukul Pseudocode C ++

11 Page  11 Penggunaan dan Pengaksesan Struct JamMasuk : pukul JamPulang,JamIstirahat : pukul Pseudocode Note : pendeklarasian variabel jamMasuk, jamPulang, jamIstirahat dengan tipe data bentukan pukul read(JamMasuk.jam) read(JamMasuk.Menit,JamMasuk.Detik,JamMasuk.Detik) Pseudocode Note : Baca data dari piranti masukan dan nilainya dimasukkan ke variabel. pukul JamMasuk; pukul JamMasuk,JamKeluar; C ++ cin>>jamMasuk.jam; cin>>jamMasuk.menit; cin>>jamMasuk.detik; C ++

12 Page  12 TIPE DATA BOOLEAN  Tipe Data Dasar  Boolean hanya mempunyai dua buah nilai yaitu nilai TRUE (Benar) dan Nilai FALSE (Salah)  Biasanya digunakan dalam kondisi perulangan dan pemilihan (menggunakan IF)

13 Page  13 TIPE DATA BOOLEAN Algoritma DemoBoolean1 {Demo penggunaan Boolean} Deklarasi test : boolean Deskripsi test  True if test then write ‘BENAR’ else write ‘SALAH’ endif Algoritma DemoBoolean2 {Demo penggunaan Boolean} Deklarasi test : boolean Deskripsi test  True if test then write ‘BENAR’ else write ‘SALAH’ endif #include using namespace std; void main() {bool test; test=true; if (test) {cout<<"BENAR";} else {cout<<"SALAH";} system("pause"); } #include using namespace std; void main() {bool test; test=true; if (test) {cout<<"BENAR";} else {cout<<"SALAH";} system("pause"); } #include using namespace std; void main() { bool ulang; ulang=true; string input="y"; do { cout<<"BREEZE... \n"; cout<<"ULANG (Y/T) :"; cin>>input; if (input=="Y") {ulang=true;} else {ulang=false;} } while (ulang); system("pause"); } #include using namespace std; void main() { bool ulang; ulang=true; string input="y"; do { cout<<"BREEZE... \n"; cout<<"ULANG (Y/T) :"; cin>>input; if (input=="Y") {ulang=true;} else {ulang=false;} } while (ulang); system("pause"); }

14 Page  14 TIPE DATA BOOLEAN Algoritma DemoBoolean2 {Demo penggunaan Boolean} Deklarasi ulang : boolean input : string Deskripsi input  “Y” ulang  TRUE while ulang do write(‘BREEZE’) read(input) if input=‘Y’ then ulang  TRUE else ulang  FALSE endif endWhile #include using namespace std; void main() {bool ulang; string ulang; ulang=true; input="y"; while (ulang) { cout<<"BREEZE... \n“; cout<<"ULANG (Y/T) :“; cin>>input; if (input=="Y") {ulang=true;} else {ulang=false ;} } system("pause"); } #include using namespace std; void main() {bool ulang; string ulang; ulang=true; input="y"; while (ulang) { cout<<"BREEZE... \n“; cout<<"ULANG (Y/T) :“; cin>>input; if (input=="Y") {ulang=true;} else {ulang=false ;} } system("pause"); }

15 Page  15 Latihan PROCEDURE Algoritma Segi_Empat {Program untuk menampilkan menu perhitungan segi empat (luas,keliling dan panjang diagonal )} Deklarasi NomorMenu,p,l : integer Procedure HitungLuas Procedure HitungKeliling(input panjang: integer, input lebar : integer) Deskripsi write(‘ Menu SEGIEMPAT’) write(‘ 1. Hitung Luas ‘) write(‘ 2. Hitung Keliling’) write(‘ Masukkan nomor pilihan (1/2) ‘) read(pil) case(pil) 1 : HitungLuas 2 : read(p,l) HitungKeliling(p,l) endcase Buatlah prosedur HitungLuas dan HitungKeliling ! ! ! ! !

16 Page  16 Latihan FUNGSI Buatlah pseudocode fungsi beserta program utamanya untuk menghitung H= 2uv 2 + 3vw + 10 v. Parameter Input fungsi adalah u dan v. Dan Return valuenya adalah nilai H. Kemudian tentukan hasil dari fungsi H tersebut apakah bilangan positif, negatif atau nol !!!

17 Page  17


Download ppt "Algoritma dan Struktur Data. Page  2 FUNGSI  Sub Program yang mengembalikan nilai dengan nilai tertentu ke modul utama yang memanggilnya Pseudocode."

Presentasi serupa


Iklan oleh Google