Jumat, 20 April 2018

Tugas Pendahuluan Pertemuan 5 FUNCTION


PERTEMUAN  V
FUNCTION

TUGAS PENDAHULUAN
1.      1. Apa yang dimaksud dengan fungsi!
2.     2. Jelaskan yang dimaksud dengan pemanggilan secara nilai (call by value) dan pemanggilan secara referensi (call by Reference)!
3.      3. Jelaskan yang dimaksud dengan variabel lokal, variabel eksternal atau global, dan variabel statis!
4.      4. Buatlah contoh program sederhana menggunakan fungsi!

Jawaban
1.    1. Fungsi adalah sekumpulan perintah operasi program yang dapat menerima argumen input dan dapat memberikan hasil output yang dapat berupa nilai ataupun sebuah hasil operasi. Nama fungsi yang didefinisikan sendiri oleh pemrogram tidak boleh sama dengan nama build-in function pada compiler c++.
2.                                      2. a. Pemanggil secara nilai (call by value).
-      Call by value akan menyalin nilai dari parameter aktual ke parameter formal.
-      Yang dikirimkan ke fungsi adalah nilai dari datanya, bukan alamat memori letak dari datanya.
-      Fungsi yang menerima kiriman nilai akan menyimpannya dialamat terpisah dari nilai aslinya yang digunakan oleh bagian program yang memanggil fungsi
-   Perubahan nilai di fungsi (parameter formal) tidak akan merubah nilai asli dibagian program yang memanggilnya.
-       Pengiriman parameter secara nilai adalah pengiriman searah, yaitu dari bagian program yang memanggil fungsi ke fungsi yang dipanggil.
-      Pengiriman suatu nilai dapat dilakukan untuk suatu ungkapan, tidak hanya untuk sebuah variabel, elemen array atau konstanta saja.
b. Pemanggil secara Referensi (call by Reference)
-       Pemanggilan secara referensi merupakan upaya untuk melewatkan alamat dari suatu variabel kedalam fungsi.
-      Yang dikirimkan ke fungsi adalah alamat letak dari nilai datanya, bukan nilai datanya.
-    Fungsi yang menerima kiriman alamat ini maka menggunakan alamat yang sama untuk mendapatkan nilai datanya.
-       Perubahan nilai di fungsi akan merubah nilai asli dibagian program yang memanggil fungsi.
-      Pengiriman parameter secara referensi adalah pengiriman dua arah, yaitu dari fungsi pemanggil ke fungsi yang dipanggil dan juga sebaliknya.
-        Pengiriman secara acuan tidak dapat dilakukan untuk suatu ungkapan.

3.                         3. a. Variabel Lokal (Variabel Otomatis)
Variabel yang didefinisikan didalam suatu fungsi dan berlaku sebagai variabel lokal bagi fungsi variabel hanya dikenal didalam fungsi dimana variabel itu didefinisikan dan tidak dikenal oleh fungsi lain.
Sifat variabel otomatis :
-          hanya diciptakan saat fungsi dipanggil.
-          saat fungsi berakhir, variabel otomatis akan dihapus.
-          hanya dapat diakses didalam fungsi yang mendefinisikannya.
b. Variabel Eksternal (Variabel Global)
-       Variabel yang didefinisikan diluar fungsi manapun sehingga dikenal oleh semua fungsi.
-       Variabel eksternal mempunyai lifetime selama program dieksekusi.
-       Variabel eksternal sebaiknya digunakan sesedikit mungkin atau bahkan tidak digunakan sama sekali.
c. Variabel Statis
Variabel Statis memiliki beberapa sifat sebagai berikut :
-         Variabel hanya dapat diakses pada fungsi yang didefinisikannya
-         Variabel tidak hilang setelah di eksekusi berakhir.
Nilai nya akan tetap dipertahankan sehingga akan dikenali pada pemanggilan fungsi untuk tahap selanjutnya.
-     Inisialisasi oleh pemrogram hanya dilakukan sekali saja selama program dijalankan. Jika tidak ada inisialisasi secara eksplisit, maka variabel di isi dengan nilai nol.

4.      4. Program sederhana menggunakan fungsi.
//Penggunaan Fungsi Rekursif:
//Program mengecek sebuah bilangan integer atau bukan
#include<iostream>
#include<conio.h>
#include<stdio.h>
using namespace std;

void cekInt(double);
void main ()
{
            double angka;
            cout<<”Masukkan Sebuah Angka :”;
            cin>>angka;
}
void cekInt(double n)
{
            if(n>1) cekInt(n-1);
else if(n<1) cekInt(-n-1);
else
{
            if(n>0&&n<1)
            cout<<n<<”\tBukan Bilangan Bulat \n”;
else
cout<<n<<”\t Bilangan Bulat \n”;
}
}

Hasil Outputnya :
Masukkan Sebuah Angka : 57
Bilangan Bulat
Masukkan Sebuah Angka : 0.57
Bukan Bilangan Bulat
Masukkan Sebuah Angka : -24
Bilangan Bulat


Related Posts:

0 komentar:

Posting Komentar