• Tidak ada hasil yang ditemukan

JAWABAN PERTEMUAN 6 STRUKTUR DATA

N/A
N/A
Protected

Academic year: 2018

Membagikan "JAWABAN PERTEMUAN 6 STRUKTUR DATA"

Copied!
7
0
0

Teks penuh

(1)

1. Pengertian Fungsi ( function )

Function/fungsi adalah satu blok kode yang melakukan tugas tertentu atau satu blok instruksi yang di eksekusi ketika dipanggil dari bagian lain dalam suatu program.

2. A. Call by Value

Fungsi yang void sering disebut juga prosedur. Disebut void karena fungsi tersebut tidak mengembalikan suatu nilai keluaran yang didapat dari hasil proses fungsi tersebut.

Ciri-ciri dari jenis fungsi Void adalah sebagai berikut:

 Tidak adanya keyword return.

 Tidak adanya tipe data di dalam deklarasi fungsi.

 Menggunakan keyword void.

 Tidak dapat langsung ditampilkan hasilnya.

 Tidak memiliki nilai kembalian fungsi

 Keyword void juga digunakan jika suatu function tidak mengandung suatu parameter apapun.

 Void : void tampilkan_jml (int a, int b)

{

int jml; jml = a + b; cout<

}

Contoh fungsi void :

#include <iostream.h> #include <conio.h>

void volume(int &vol, int p, int l, int t) { vol = p*l*t; }

main(){

int pj,lb,tg, hsl;

cout<<"Panjang = ";cin>>pj; cout<<"Lebar = ";cin>>lb; cout<<"Tinggi = ";cin>>tg; volume(hsl,pj,lb,tg);

cout<<"\nVolume = "<<hsl; getch();

}

Hasilnya :

B. Call by reference(Fungsi dengan nilai balik)

Fungsi non-void disebut juga function. Disebut non-void karena mengembalikan nilai kembalian yang berasal dari keluaran hasil proses function tersebut .

Ciri-ciri dari jenis fungsi non void adalah sebagai berikut:

(2)

 Ada tipe data yang mengawali fungsi

 Tidak ada keyword void

 Memiliki nilai kembalian .

 Dapat dianalogikan sebagai suatu variabel yang memiliki tipe data tertentu

 Sehingga dapat langsung ditampilkan hasilnya

 Non-void : int jumlah (int a, int b)

Contoh fungsi call by reference : #include <iostream.h> #include <conio.h>

int volume(int p, int l, int t) { int vol;

vol = p*l*t; return vol; } main(){

int pj,lb,hsl,tg;

cout<<"Panjang = ";cin>>pj; cout<<"Lebar = ";cin>>lb; cout<<"Tinggi = ";cin>>tg; hsl=volume(pj,lb,tg);

cout<<"\nLuasnya = "<<hsl; getch();

}

Hasilnya :

3.

Variabel Otomatis

Adalah variabel yang didefinisikan di dalam suatu fungsi dan berlaku sebagai variabel lokal bagi fungsi tersebut, artinya variabel tersebut hanya dikenal di dalam fungsi tempat variable tersebut di definisikan. Sifat variabel otomatis adalah :

 Variabel akan diciptakan saat variabel dipanggil dan variabel akan hilang saat fungsi berakhir

 Variabel hanya dikenal di dalam fungsi yang mendefinisikannya.

 Inisialisasi oleh pemrogram akan dikerjakan setiap kali fungsi dipanggil, contoh :

(3)

Variabel Otomatis

Program

#include <iostream.h> #include <conio.h>

/**

*gatewan.com *Wawan Beneran *Variabel Otomatis */

void coba(); // prototipe fungsi atau pendeklarasian fungsi

void main() {

cout<<"copyright 2014 www.gatewan.com"<<endl<<endl;

int x = 22; //salah satu contoh variabel lokal pada fungsi main()

double y =2.22; clrscr();

cout<<"copyright 2014 www.gatewan.com"<<endl<<endl; cout<<"Pada fungsi main() : x = " << x << " y = " << y << endl;

coba(); // memanggil fungsi alpha yang telah didefinisikan bagian bawah fungsi main()

cout<<"Pada fungsi main() : x = " << x << " y = " << y << endl; getch();

}

void coba() //definisi fungsi alpha

{

int x = 20; //variabel lokal pada fungsi coba()

double y = 3.14;

cout<<"Pada fungsi coba() : x = " << x << " y = " << y << endl; }

Variabel Eksternal

Variabel eksternal adalah variabel yang didefinisikan di luar fungsi manapun, Variabel ini dikenal juga dengan istilah variabel global, sebab variabel ini dikenal oleh semua fungsi, contoh;

View

Variabel Eksternal

Program :

#include <iostream.h> #include <conio.h>

/**

(4)

*Variabel External */

int nilai = 50; // Variabel eksternal

void tambah(); // prototipe fungsi

void main() {

clrscr();

cout <<"www.gatewan.com -> "<<nilai << endl; tambah();

cout <<"www.gatewan.com -> "<<nilai << endl; tambah();

cout <<"www.gatewan.com -> "<<nilai << endl; getch();

}

void tambah() // Definisi fungsi

{

nilai ++ ; // variabel eksternal dinaikkan

}

Atau bisa juga seperti ini,

Program :

*Variabel External dengan Keyword Extern */

int nilai = 50; // Variabel eksternal

void tambah(); // prototipe fungsi

void main() {

clrscr();

cout <<"www.gatewan.com -> "<<nilai << endl; tambah();

cout <<"www.gatewan.com -> "<<nilai << endl; tambah();

cout <<"www.gatewan.com -> "<<nilai << endl; getch();

}

void tambah() // Definisi fungsi

{

extern nilai; //kata kunci extern ini menunjukan bahwa variabel dapat di akses secara global di dalam program

nilai ++ ; // variabel eksternal dinaikkan

}

Variabel Statis

Variabel eksternal maupun otomatis dapat berkedudukan sebagai variabel statis. Suatu variabel statis memiliki sifat seperti ini :

* Jika variabel lokal berdiri sebagai variabel statis, maka :

 Variabel hanya dapat diakses di dalam fungsi yang mendefinisikannya

 Variabel tidak hilang saat eksekusi fungsi berakhir

(5)

* Jika variabel eksternal dijadikan sebagai variabel statis, maka variabel ini dapat diakses oleh semua file yang

void saya_ingat(); //Prototipe fungsi atau pendeklarasian fungsi

void main()

cout<<"main() : mana = "<<mana<<endl; getch();

}

//Pada fungsi di bawah ini, mana didefinisikan sebagai variabel statis

void saya_ingat() {

static int mana = 77; //variabel statis

mana++; //naikkan sebesar 1

cout<<"gatewan_ingat() : mana = " <<mana<<endl; }

4.

Buat lah program sederhana dengan menggunakan fu

ngsi

#include <iostream>

cout<<endl<<endl;

x1=(b+sqrt(b*b-4*a*c))/2*a*c;

x2=(b-sqrt(b*b-4*a*c))/2*a*c;

(6)

getch (); }

TUGAS AKHIR

1. Buatlah program dengan menggunakan kombinasi antar fungsi dan pointer

#include <stdio.h> #include <iostream> #include <windows.h> using namespace std;

int hitung(const char *); main()

{

char string[80]; system("COLOR F0");

cout<<"PROGRAM FUNGSI DENGAN POINTER"<<endl;

cout<<"\nMenghitung banyaknya karakter yang di input menggunakan fungsi dan pointer"<<endl;

cout<<"\nKetikkan Kata / Kalimat : "; cin.getline(string,80);

cout<<"\nJumlah Karakter : "<<hitung(string)<<" Karakter";

return 0; }

int hitung(const char *s) {

int x=0;

for(;*s!='\0'; s++) ++x;

(7)

Referensi

Dokumen terkait

Untuk memperolehi keputusan akhir bagi mendapatkan perhubungan diantara ujian Proba JKR dan Ujian Penusukan Piawai, data-data yang telah dianalisis daripada ketiga-tiga tapak

Biaya perolehan adalah salah satu kriteria terpenting untuk mengenali aset bersejarah sebagai aset. Jika suatu aset tidak dapat diukur pada biayanya, maka

Dilatar belakangi dari begitu banyaknya nilai dalam sebuah karya sastra salah satunya adalah novel, dimana novel mengandung nilai pendidikan karakter, pendidikan sosial,

Hasil penelitian menunjukan bahwa tanaman yang diberi pupuk NPK Tablet berpengaruh terhadap pertumbuhan tinggi tanaman gaharu (Aquilaria spp) yang ditanam pada tanah

Semakin cepat perputarannya yang ditunjukkan dengan angka rasio yang lebih besar adalah semakin baik karena perusahaan dapat memanfaatkan total aktivanya dengan efisiensi

[r]

Berdasarkan review diatas serta beberapa hasil penelitian terdahulu, peneliti menyimpulkan bahwa terdapat beberapa faktor yang dapat mempengaruhi pengambilan

Mahasiswa juga diminta membantu mengawasi siswa oleh guru pembimbing di kelas XI TGB dalam mata pelajaran Menggambar dengan Perangkat Lunak (SketchUp) dan kelas