Diskusi Dasar Pemrograman Pertemuan Ke-14.pdf

HendroGunawan8 20 views 9 slides Feb 02, 2025
Slide 1
Slide 1 of 9
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9

About This Presentation

Jenis variabel pada C++ ini sangat berguna di dalam penulisan suatu fungsi agar penggunaan di dalam penggunaan suatu variabel tidak salah. Terdapat beberapa jenis variabel yaitu:
1. Variabel Lokal
2. Variabel Eksternal atau Global
3. Variabel Statis


Slide Content

1


Dasar Pemrograman
Pertemuan ke-14
Nama : Hendro Gunawan
NIM : 200401072103
Kelas : IF-101
BAB 14
Jenis Variabel dalam Fungsi

Gambar 14.1. Jenis Variabel

14.1. Jenis Variabel
Jenis variabel pada C++ ini sangat berguna di dalam penulisan suatu fungsi agar penggunaan di dalam
penggunaan suatu variabel tidak salah. Terdapat beberapa jenis variabel yaitu:
1. Variabel Lokal
2. Variabel Eksternal atau Global
3. Variabel Statis
1. Variabel Lokal
Variabel lokal adalah variabel yang dideklarasikan di dalam fungsi dan hanya dikenal oleh fungsi yang
bersangkutan. Variabel lokal bisa disebut dengan variabel otomatis.
#include <iostream> // Gunakan iostream tanpa .h

using namespace std;

void lokal(); // Deklarasi fungsi sebelum digunakan

int main()
{
int a = 15;

cout << "Pemanggilan Variabel Lokal" << endl;
cout << "\nNilai di dalam fungsi main() = " << a;

2



lokal();

cout << "\nNilai di dalam fungsi main() setelah lokal() = " << a << endl;

return 0; // Gunakan return 0 pada akhir main()
}

void lokal()
{
int a = 10; // Variabel lokal dengan scope terbatas di dalam fungsi ini
cout << "\nNilai a di dalam fungsi lokal() = " << a;
}

Hal ini terlihat bahwa variabel a yang berada di luar fungsi local tidak dikenal oleh fungsi local.
Output yang dihasilkan, dari program contoh di atas adalah:

2. Variabel Eksternal
Variabel eksternal adalah variabel yang dideklarasikan di luar fungsi yang bersifat global yang artinya
dapat digunakan bersama-sama tanpa harus dideklarasikan berulang-ulang. Untuk pendeklarasian
variabel eksternal ini, di luar dari fungsi main(), yang selama ini pendeklarasian variabel selalu di dalam
fungsi main().
#include <iostream> // Gunakan iostream tanpa .h

using namespace std;

int a = 6; // Deklarasi variabel eksternal

void lokal(); // Deklarasi fungsi

int main() // Gunakan int main()
{
cout << "Penggunaan Variabel Eksternal" << endl;
cout << "\nNilai di dalam fungsi main() = " << a;

lokal(); // Pemanggilan fungsi lokal

cout << "\nNilai setelah pemanggilan fungsi lokal() = " << a << endl;

return 0; // Return 0 untuk menunjukkan program berjalan sukses
}

void lokal()

3


{
a += 10; // Mengubah nilai variabel eksternal
}

Hal ini terlihat bahwa variabel a yang dideklarasikan di luar fungsi main(), dapat digunakan di dalam
fungsi main() dan fungsi local().
Output yang akan dihasilkan, dari program contoh variabel eksternal di atas adalah:

3. Variabel Statis
Variabel Statis dapat berupa variabel local atau variabel eksternal. Sifat variabel statis ini mempunyai
sifat antara lain:
• Jika variabel statis bersifat local, maka variabel hanya dikenal oleh fungsi tempat variabel
dideklarasikan.
• Jika variabel statis bersifat eksternal, maka variabel dapat dipergunakan oleh semua fungsi yang
terletak pada file yang sama ditempat variabel statis dideklarasikan.
• Jika tidak ada inisialisasi oleh pemrograman secara otomatis akan diberikan nilai awal nol.
Suatu variabel statis diperoleh dengan menambahkan kata-kunci static di depan penentu tipe data
variabel.
#include <iostream> // Menggunakan header iostream modern

using namespace std;

void walah(); // Prototipe fungsi walah

int main() // Gunakan int main()
{
int k = 5;

// Hapus clrscr(); karena tidak didukung di banyak compiler
walah();
walah();

cout << "\nNilai K di dalam fungsi main() = " << k << endl;

return 0; // Standar return di main()
}

void walah()
{
static int k = 0; // Variabel statis harus diinisialisasi dengan nilai awal
k += 4;
cout << "\nNilai K di dalam fungsi walah() = " << k;
}

4



Hal ini terlihat bahwa:
• Pada prototipe fungsi walah() terdapat nilai awal, maka secara otomatis variabel k = 0.
• Pada pemanggilan fungsi walah() pertama, tercetak nilai variabel k = 4, terdapat dari k = 0 + 4.
• Pada pemanggilan fungsi walah() kedua, tercetak nilai variabel k = 8, didapat dari k = 4 + 4, karena
nilai k yang terbaru adalah 4.
• Pada pencetakan k di dalam fungsi main(), adalah 5, karena variabel k, di dalam fungsi main()
bersifat lokal.
Output yang akan dihasilkan, dari program contoh di atas adalah:

14.2. Fungsi Inline
Fungsi inline (inline function) digunakan untuk mengurangi lambatnya eksekusi program dan
mempercepat eksekusi program terutama pada program yang sering menggunakan atau memanggil
fungsi yang berlebih, terutama program-program yang menggunakan pernyataan perulangan proses
seperti for, while, dan do-while. Inline function dideklarasikan dengan menambahkan kata kunci inline
di depan tipe data.
#include <iostream> // Menggunakan header iostream yang benar
using namespace std;

inline int kali(int i, int j)
{
return i * j;
}

int main() // Ubah main() menjadi int main()
{
for(int k = 1; k < 20; k++)
{
cout << kali(k, k * 2) << " ";
}

cout << endl; // Tambahkan baris baru setelah output

return 0; // Standar return di main()
}

Setelah dijalankan, program akan menghasilkan output berikut:

Penjelasan Perhitungan:
• kali(1, 1*2) = 2

5


• kali(2, 2*2) = 8
• kali(3, 3*2) = 18
• ... hingga k = 19.
#include <iostream> // Perbaikan header
using namespace std;

inline void cplusplus() // Menghapus "static" yang tidak diperlukan
{
cout << "Pemrograman C++\n";
cout << "C++ Programming, ";
}

int main()
{
cout << "Kami Sedang Belajar, ";
cplusplus();
cout << "Sedang Kami Pelajari.\n\n";

cout << "Mari Belajar, ";
cplusplus();
cout << "Mudah Untuk Dipelajari.\n\n";

cout << "Jika Sudah Mengerti, ";
cplusplus();
cout << "Berarti Sudah Anda Kuasai\n";

return 0; // Menggantikan getche()
}

Output yang dihasilkan, dari program contoh di atas adalah:


14.3. Function Overloading
Function Overloading adalah mendefinisikan beberapa fungsi, sehingga memiliki nama yang sama tetapi
dengan parameter yang berbeda. Dapat diartikan bahwa fungsi yang overload berarti menyediakan versi
lain dari fungsi tersebut. Salah satu kelebihan dari C++ adalah Overloading. Sebagai contoh membentuk
fungsi yang sama dengan tipe yang berbeda-beda dan dibuatkan pula nama fungsi yang berbeda-beda
pula.

6


#include <iostream> // Menggunakan header C++ modern
using namespace std;

// Deklarasi fungsi overload
int hitung(int b);
long hitung(long c);
double hitung(double d);

int main() // Menggunakan int main()
{
cout << "Hasil Fungsi overload -1 (int): " << hitung(4) << endl;
cout << "Hasil Fungsi overload -2 (long): " << hitung(2L) << endl;
cout << "Hasil Fungsi overload -3 (double): " << hitung(3.0) << endl;

return 0; // Menggantikan getch()
}

// Implementasi fungsi overload
int hitung(int b)
{
return b * b;
}

long hitung(long c)
{
return c * c;
}

double hitung(double d) // Menggunakan double sesuai deklarasi
{
return d * d;
}
Output yang akan dihasilkan, dari program contoh di atas adalah:

Penjelasan Program Overloading Fungsi dalam C++
Program ini menunjukkan konsep function overloading, yaitu kemampuan dalam C++ untuk membuat
beberapa fungsi dengan nama yang sama tetapi dengan parameter yang berbeda.
1. Header File dan Namespace
#include <iostream> // Menggunakan header C++ modern
using namespace std;
• #include <iostream> → Untuk menggunakan fitur input/output standar (cout, cin).
• using namespace std; → Agar kita tidak perlu menulis std::cout, cukup cout saja.
2. Deklarasi Fungsi Overload
int hitung(int b);

7


long hitung(long c);
double hitung(double d);
• hitung(int b) → Fungsi yang menerima integer dan mengembalikan hasil kuadratnya.
• hitung(long c) → Fungsi yang menerima long integer dan mengembalikan hasil kuadratnya.
• hitung(double d) → Fungsi yang menerima bilangan desimal (double) dan mengembalikan
hasil kuadratnya.
Overloading terjadi karena meskipun nama fungsi sama (hitung), mereka memiliki parameter
dengan tipe berbeda.
3. Fungsi main()
int main() // Menggunakan int main()
{
cout << "Hasil Fungsi overload -1 (int): " << hitung(4) << endl;
cout << "Hasil Fungsi overload -2 (long): " << hitung(2L) << endl;
cout << "Hasil Fungsi overload -3 (double): " << hitung(3.0) << endl;

return 0; // Menggantikan getch()
}
• hitung(4) → Memanggil versi hitung(int), karena 4 adalah bilangan integer.
• hitung(2L) → Memanggil versi hitung(long), karena 2L menandakan long integer.
• hitung(3.0) → Memanggil versi hitung(double), karena 3.0 bertipe double.
4. Implementasi Fungsi Overload
a. Fungsi untu int
int hitung(int b)
{
return b * b;
}
• Jika b = 4, maka hasilnya 4 * 4 = 16.
b. Fungsi untuk long
long hitung(long c)
{
return c * c;
}
• Jika c = 2L, maka hasilnya 2 * 2 = 4.
c. Fungsi untuk double
double hitung(double d) // Menggunakan double sesuai deklarasi
{
return d * d;
}
• Jika d = 3.0, maka hasilnya 3.0 * 3.0 = 9.0.
5. Output Program
Hasil Fungsi overload -1 (int): 16

8


Hasil Fungsi overload -2 (long): 4
Hasil Fungsi overload -3 (double): 9
• 6 → Dari hitung(4) (versi int).
• 4 → Dari hitung(2L) (versi long).
• 9 → Dari hitung(3.0) (versi double).
6. Kesimpulan
• Overloading fungsi memungkinkan kita menggunakan nama fungsi yang sama dengan
parameter berbeda.
• Compiler akan memilih fungsi yang sesuai berdasarkan tipe data argumen yang dipanggil.
• Ini membuat kode lebih fleksibel dan mudah dibaca, tanpa perlu membuat banyak nama fungsi
yang berbeda.
Kesimpulan
1. Variabel dalam C++ terdiri dari variabel lokal, global, dan statis, yang memiliki perbedaan dalam
hal jangkauan (scope) dan waktu hidup (lifetime).
2. Variabel lokal hanya dikenal dalam fungsi tempat ia dideklarasikan, sedangkan variabel global
dapat digunakan di semua fungsi dalam file yang sama.
3. Variabel statis mempertahankan nilainya meskipun fungsi selesai dieksekusi dan dapat bersifat
lokal maupun global.
4. Fungsi inline mempercepat eksekusi dengan menggantikan pemanggilan fungsi dengan kode
langsung.
5. Function overloading memungkinkan penggunaan satu nama fungsi dengan parameter berbeda,
membuat kode lebih ringkas dan fleksibel.
6. Memahami jenis variabel membantu dalam pengelolaan data dan mencegah kesalahan dalam
penggunaan variabel.
7. Fungsi inline dapat meningkatkan efisiensi program, terutama dalam perulangan.
8. Function overloading memungkinkan kode yang lebih bersih dan mudah dibaca, karena kita
tidak perlu membuat banyak nama fungsi berbeda.
Dengan memahami materi ini, kita dapat menulis kode yang lebih efisien, terstruktur, dan mudah
dipahami dalam pemrograman C++.
Daftar Pustaka
[1] Riad Sahara, S. M. (2025). Modul Dasar Pemrograman Pertemuan 14 – Jenis Variabel dalam
Fungsi. Jakarta: Universitas Siber Asia.
Link File
?????? https://drive.google.com/file/d/1jPFfaibMn-11eBf_vgIavD27H6Bq_zx2/view?usp=sharing

9


??????