google.com, pub-4169750801100201, DIRECT, f08c47fec0942fa0
Pemrograman Dasar C++ Prosedur Dan Fungsi | MUDA MUDI CONDROWANGSAN

Pemrograman Dasar C++ Prosedur Dan Fungsi

MODUL VI :
PROSEDUR DAN FUNGSI




Pemrograman Dasar C++ Prosedur Dan Fungsi



PENYUSUN :
Zakaria Annas
(123090182)
Kelas : D
Plug : 8



Asisten : Sitti Hajriani Hasanah



JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN” YOGYAKARTA
2009


DASAR TEORI

1. Prototipe Fungsi
Sebuah fungsi tidak dapat dipanggil kecuali sudah dideklarasikan. Untuk melihat hal ini perhatikan contoh berikut :
void main ( )
{
printf (“Hai \n”);
}
Jika program ini dijalankan, C++ akan memberikan kesalahan yang menyatakan bahwa printf( ) tidak memiliki prototype. Hal seperti ini masih bisa lolos pada bahasa C. Tetapi tidak demikian halnya pada C++. Kesalahan seperti diatas tidak akan terjadi seandainya program ditulis menjadi seperti berikut :
#include <stdio.h>
void main()
{
printf (“ Hai \n “);
}
Mengapa? Karena prototipe fungsi printf( ) ada pada file “stdio.h”. Itulah sebabnya diperlukan untuk menyertakan baris berbentuk :
#include < nama_file_header >
Deklarasi fungsi dikenal dengan sebutan prototipe fungsi. Prototipe fungsi ini berupa :
v Nama fungsi.
v Tipe nilai balik fungsi.
v Jumlah dan tipe argumen.
Dan diakhiri dengan titik koma (;), sebagaimana pada pendeklarasian variable. Sebagai contoh :
1). long kuadrat (long l);
2). int maks3 (int a, int b, int c );
3). double maks (double x, double y );
4). void garis ( );

2. Lingkup Variabel
Pemahaman terhadap lingkup variable didalam penulisan fungsi sangatlah penting, agar tidak salah dalam menggunakan suatu variable. Lingkup variable menentukan keberadaan suatu variable tertentu didalam fungsi. Ada variable yang hanya dikenal disuatu fungsi dan tidak dikenal pada fungsi lain. Namun ada juga variable yang dapat di akses oleh semua fungsi.
Jenis variable berdasarkan kelas penyimpanannya, yaitu :
v Variabel otomatis.
v Variable eksternal.
v Variable statis.

A.    Varabel Otomatis.
Variabel yang didefinisikan didalam suatu fungsi berlaku sebagai variabel lokal bagi fungsi. Artinya, variable tesebut hanya dikenal didalam fungsi tempat variable didefinisikan.

B.     Variable Eksternal.
Varibel eksternal merupakan kebalikan dari variable otomatis. Variable eksternal adalah varibel yang didefinisikan diluar fungsi manapun. Variable ini dikenal juga sebagai variable global, sebab variable ini dikenal di semua fungsi.
Guna memperjelas bahwa suatu variable didalam suatu fungsi merupakan variable eksternal, didalam fungsi yang menggunakannya, kita dapat mendeklarasikan (bukan mendefinisikan, karena tidak ada pengalokasian memori) dengan menambahkan kata kunci extern didepan tipe data. Kata kunci menyatakan bahwa variable tersebut didefinisikan di tempat lain.

C.    Variabel Statis.
Baik variable eksternal maupun otomatis dapat berkedudukan sebagai variable statis. Suatu variable statis mempunyai sifat :
o Jika variable lokal berdiri sebagai variable statis, maka :
ü Variabel tetap hanya dapat diakses pada fungsi yang mendefinisikannya .
ü Variabel tidak hilang saat eksekusi fungsi berakhir. Nilai akan tetap dipertahankan, sehingga akan dikenali pada pemanggilan fungsi untuk tahap berikutnya.
ü Inisialisasi oleh pemrogram akan dilakukan sekali saja selama program dijankan. Jika tidak ada inisialisasi secara eksplisit, variable diisi dengan nol.



PEMBAHASAN


Tipe void digunakan untuk mendeklarasikan fungsi yang tidak menghasilkan satu nilai
 
tipe void
 #include <iostream>
 using std::cout;
 using std::endl;
 void info ();
 int main ()
 {
 info ();
 return 0;
 }
 void info ()
 {
 int i;
 for (i=0; i<5; i++)
 cout << i << endl;
 }






Variable funmgsi lokal
#include <iostream>
using std::cin;
using std::cout;
using std::endl;
void fungsiku () ; //deklarasi fungsi
int main ()
{
int x = 5 ;
cout << "x dari fungsi 'main ()' : " << x << endl;
cout << endl;
cout << "***panggil fungsi 'fungsiku (),***\n\n";
fungsiku ();
cout << "\nkembali lagi ke 'main()' dari 'fungsiku ()'\n";
cout << "";
cout << endl;
cout << "x dari fungsi 'main ()' lagi : " << x << endl;
return 0;
}
void fungsiku ()
{
int x = 10; // variabel local x
cout << "x sebagai local dari fungsi 'fungsiku()' : " << x << endl;
{
cout << "x dari block 'fungsiku ()' :"<< x << endl;
int x = 8 ;
cout << "x sebagai local yg didefinisikan lagi : " << x << endl;
}
cout << "keluar dari block, didalam 'fungsiku ()' , x : " << x;
cout << endl;
}
Description: H:\DATA\c++\geany\GEANY.PNG
Penjelasan : hanya dapat digunakan dalam sebuah fungsi ketika fungsi selesai dan kembali ke fungsi utama variable local tidak dapat digunakan lagi

Pengiriman para meter

Variabel  yang ada pada daftar para meter dalam difinisi fungsi
Ada dua cara pengiriman:
1. pemanggilan dengan nilai
2. pemanggilan dengan referensi
 
 #include <iostream>
 using std::cout;
 using std::cin;
 void tukar (int, int);
 int main ()
 {
 int a, b;
 a=50;
 b=60;
 cout << "nilai sebelum pemanggilan fungsi\n";
 cout << "a = " << a << "b = " << b << "\n\n";
 tukar (a,b);
 cout << "nilai sesudah pemanggilan fungsi\n";
 cout << "a = " << a << " b = " << b << "\n\n";
 return 0;
 }
 void tukar (int x,int y)
 {
 int z;
 z = x;
 x = y;
 y = z;
 cout << "nilai diakhiri fungsi tukar () \n";
 cout << "x = " << x << " y = " << y << "\n\n";
 }
Description: H:\DATA\c++\geany\GEANY.PNG
 




Fungsi rekursi
 #include <iostream>

 using std::cin;
 using std::cout;
 using std::endl;

 int faktorial (int);
 int main ()
 {
 int x;
 cout << "mencari faktorial dari x! \n";
 cout << "masukkan nilai x (bulat positif) : ";
 cin >> x;
 cout << "faktorial dari " <<x<< " = " <<faktorial(x) <<endl;
 return 0;
 }
 int faktorial (int m)
 {
 if (m == 1)
 return (1);
 else
 return(m * faktorial (m-1));
 }

Penjelasan : fungsi yang memanggil dirinya sendiri dan dapat dilakukan secara langsung dan tidak langsung






KESIMPULAN

            Dari pembahasan diatas dari hasil praktikum yang saya lakukan, dapat saya simpulkan bahwa fungsi dapat mengolah data dan mengembalikan nilai. Dengan kata lain fungsi adalah sebuah program kecil di dalam perogram utama. Dan setiap program C++ memiliki fungsi dan setiap fungsi memiliki namantya sendiri. Dan ketika namanya tersebut di temukan dalam urutan intruksi, maka jalanya program akan berpindah ke dalam fungsi tersebut.








TUGAS
#include <iostream>
using std::cin;
using std::cout;
using std::endl;
int main()
{
   int sisia, sisib, sisic, pilih, alas, tinggi, keliling;
   float luas;
menu:
cout << "\nMenu Hitung\n";
cout << "\n 1 = Luas Segitiga \n 2 = keliling segitiga \n 3 = Selesai";
cout << "\nPilihan :"; cin >> pilih;
switch(pilih)
{
case 1 :
{
cout << " ";
cout << "\nMasukkan alas:"; cin >> alas;
cout << "Masukkan tinggi:"; cin >> tinggi;
luas=0.5*alas*tinggi;
cout << "Luas Segitiga = " << luas;
break;
}
case 2 :
{
cout << " ";
cout << "\nPanjang sisi a :"; cin >> sisia;
cout << "Panjang sisi b :"; cin >> sisib;
cout << "Panjang sisi c :"; cin >> sisic;
keliling=sisia+sisib+sisic;
cout << "Keliling Segitiga = " << keliling;
break;
}
case 3 :
{ exit (0);}
}
    goto menu;
    return 0;
 }



Semoga dengan postingan diatas yang berjudul Pemrograman Dasar C++ Prosedur Dan Fungsi dapat bermanfaat untuk sobatku semuanya, dan jangan lupa share buat temannya ya.

0 Response to "Pemrograman Dasar C++ Prosedur Dan Fungsi"

Post a Comment