際際滷

際際滷Share a Scribd company logo
1
Praktikum Pemrograman Dasar
MODUL PRAKTIKUM
PENGGUNAAN FUNGSI
A. TUJUAN
1. Menerapkan Penggunaan Fungsi
2. Membuat kode program menggunakan fungsi
B. DASAR TEORI
Fungsi adalah suatu bagian dari program yang dirancang untuk melaksanakan tugas
tertentu dan letaknya dipisahkan dari program yang menggunakannya. Elemen utama dari
program bahasa C berupa fungsi-fungsi, dalam hal ini program dari bahasa C dibentuk dari
kumpulan fungsi pustaka (standar) dan fungsi yang dibuat sendiri oleh pemrogram. Fungsi
banyak digunakan pada program C dengan tujuan :
1. Program menjadi terstruktur, sehingga mudah dipahami dan mudah dikembangkan.
Dengan memisahkan langkah-langkah detail ke satu atau lebih fungsi-fungsi, maka
fungsi utama (main()) menjadi lebih pendek, jelas dan mudah dimengerti.
2. Dapat mengurangi pengulangan (duplikasi) kode. Langkah-langkah program yang
sama dan dipakai berulang-ulang di program dapat dituliskan sekali saja secara
terpisah dalam bentuk fungsi-fungsi. Selanjutnya bagian program yang
membutuhkan langkah-langkah ini tidak perlu selalu menuliskannya, tetapi cukup
memanggil fungsifungsi tersebut.
Suatu fungsi dibuat untuk maksud menyelesaikan tugas tertentu. Suatu fungsi dapat
hanya melakukan suatu tugas saja tanpa memberikan suatu hasil keluaran atau melakukan
suatu tugas dan kemudian memberikan hasil keluaran. Fungsi yang hanya melakukan suatu
tugas saja tanpa memberikan hasil keluaran misalnya adalah fungsi untuk menampilkan hasil
di layar.
Dalam tubuh fungsi, pernyataan yang digunakan untuk memberikan nilai keluaran
fungsi berupa return. Sebagai contoh, pada fungsi inisialisasi() di atas terdapat pernyataan
return(0);
2
Praktikum Pemrograman Dasar
Merupakan pernyataan untuk memberikan nilai keluaran fungsi berupa nol.
Selengkapnya perhatikan program di bawah in
/* File program : inisial.c
Contoh pembuatan fungsi */
int inisialisasi();
#include <stdio.h>
main()
{
int x, y;
x = inisialisasi();
printf("x = %dn", x);
y = inisialisasi();
printf("y = %dn", y);
}
int inisialisasi()
{
return(0);
}
Contoh eksekusi :
x = 0
y = 0
Program di atas sekaligus menjelaskan bahwa suatu fungsi cukup didefinisikan satu kali tetapi
bisa digunakan beberapa kali. Pada keadaan semacam ini seandainya tubuh fungsi mengandung
banyak pernyataan, maka pemakaian fungsi dapat menghindari duplikasi kode dan tentu saja
menghemat penulisan program maupun kode dalam memori.
Gambar 8.3 Proses pemanggilan fungsi
main()
{
int x, y;
x = inisialisasi();
printf("x = %dn", x);
y = inisialisasi();
printf("y = %dn", y);
}
int inisialisasi()
{
return(0);
}
pemangg ilan fun gsi
definisi fungsi
3
Praktikum Pemrograman Dasar
Misalnya pada saat pernyataan
x = inisialisasi();
dijalankan, mula-mula eksekusi akan diarahkan ke fungsi inisialisasi(), selanjutnya suatu nilai
keluaran (hasil fungsi) akhir fungsi diberikan ke x. Proses yang serupa, dilakukan untuk
pernyataan
y = inisialisasi();
Bagi suatu fungsi, jika suatu pernyataan return dieksekusi, maka eksekusi terhadap fungsi
akan berakhir dan nilai pada parameter return akan menjadi keluaran fungsi. Untuk fungsi yang
tidak memiliki pernyataan return, tanda } pada bagian akhir fungsi akan menyatakan akhir
eksekusi fungsi.
Di bawah ini diberikan contoh sebuah fungsi yang mengandung dua buah pernyataan
return. Fungsi digunakan untuk memperoleh nilai minimum di antara 2 buah nilai yang menjadi
parameternya.
int minimum(int x, int y)
{
if (x < y)
return(x);
else
return(y);
}
Pada fungsi di atas terdapat dua buah parameter berupa x dan y. Oleh karena itu fungsi juga
mengandung bagian untuk mendeklarasikan parameter, yang menyatakan x dan y bertipe int.
Adapun penentuan nilai keluaran fungsi dilakukan pada tubuh fungsi, berupa pernyataan
if (x < y)
return(x);
else
return(y);
yang menyatakan :
 jika x < y maka nilai keluaran fungsi adalah sebesar nilai x.
 untuk keadaan lainnya (x >= y) maka keluaran fungsi adalah sebesar y.
4
Praktikum Pemrograman Dasar
Selengkapnya perhatikan program di bawah ini.
/* File program : minimum1.c */
#include <stdio.h>
int minimum (int, int);
main()
{
int a, b, kecil;
printf("Masukkan nilai a : ");
scanf("%d", &a);
printf("Masukkan nilai b : ");
scanf("%d", &b);
kecil = minimum(a, b);
printf("nBilangan terkecil antara %d dan %d adalah %dnn", a, b, kecil);
}
minimum(int x, int y)
{
if (x < y)
return(x);
else
return(y);
}
Contoh eksekusi :
Masukkan nilai a = 4
Masukkan nilai b = 2
Bilangan terkecil antara 4 dan 2 adalah 2
Fungsi Dengan Keluaran Bukan Integer
Untuk fungsi yang mempunyai keluaran bertipe bukan integer, maka fungsi haruslah
didefiniskan dengan diawali tipe keluaran fungsinya (ditulis di depan nama fungsi). Sebagai
contoh untuk menghasilkan nilai terkecil di antara dua buah nilai real, maka definisinya berupa :
float minimum(float x, float y)
{
if (x < y)
return(x);
else
5
Praktikum Pemrograman Dasar
return(y);
}
Perhatikan, di depan nama minimum diberikan tipe keluaran fungsi berupa float. Seluruh
parameter sendiri juga didefinisikan dengan tipe float. Selengkapnya adalah sebagai berikut :
/* File program : minimum2.c */
#include <stdio.h>
float minimum (float, float);
main() {
float a, b, kecil;
printf("Masukkan nilai a : ");
scanf("%f", &a);
printf("Masukkan nilai b : ");
scanf("%f", &b);
kecil = minimum(a, b);
printf("nBilangan terkecil antara %g dan %g adalah %gnn", a, b, kecil);
}
float minimum(float x, float y)
{
if (x < y)
return(x);
else
return(y);
}
Contoh eksekusi :
Masukkan nilai a = 5.5
Masukkan nilai b = 6.23
Bilangan terkecil antara 5 dan 6.23 adalah 5.5
Khusus untuk fungsi yang dirancang tanpa memberikan nilai keluaran (melainkan hanya
menjalankan suatu tugas khusus) biasa didefinisikan dengan diawali kata kunci void (di depan
nama fungsi).
6
Praktikum Pemrograman Dasar
Prototipe Fungsi
Prototipe fungsi digunakan untuk menjelaskan kepada kompiler mengenai :
 tipe keluaran fungsi
 jumlah parameter
 tipe dari masing-masing parameter.
Bagi kompiler, informasi dalam prototipe akan dipakai untuk memeriksa keabsahan
(validitas) parameter dalam pemanggilan fungsi. Salah satu keuntungannya adalah, kompiler akan
melakukan konversi seandainya antara tipe parameter dalam fungsi dan parameter saat
pemanggilan fungsi tidak sama, atau akan menunjukan kesalahan bila jumlah parameter dalam
definisi dan saat pemanggilan berbeda.
Contoh prototipe fungsi;
float jumlah (float x, float y);
atau
float jumlah (float, float);
Penjelasannya adalah sbb :
Nama fungsi
Diakhiri dengan titik koma
Tipe parameter kedua
Tipe parameter pertama Tipe
keluaran fungsi
Perhatikan contoh program di bawah ini.
/* File program : jumlah.c contoh pemakaian prototipe
fungsi */
#include <stdio.h>
float jumlah(float, float); /* prototipe fungsi */
main()
{
float a, b,c;
printf("Masukkan nilai a : ");
scanf("%f", &a);
float jumlah (float, float);
7
Praktikum Pemrograman Dasar
printf("Masukkan nilai b : ");
scanf("%f", &b);
c = jumlah(a, b);
printf("nHasil penjumlahan a + b = %gn", c);
}
float jumlah(float x, float y) /* definisi fungsi */
{
return(x + y);
}
Contoh eksekusi :
Masukkan nilai a : 4.5
Masukkan nilai b : 7.65
Hasil penjumlahan a + b = 12.15
C. PRAKTIKUM
1. Buka program aplikasi Code Blocks
2. Lalu ketikkan dan analisislah eror script program dibawah ini.
/* File program : void.c Contoh fungsi tanpa nilai keluaran (pamakaian void) */
#include <stdio.h>
void main()
{
8
Praktikum Pemrograman Dasar
printf("==================================n");
printf("Progam dibuat oleh Arvian Ilmi n");
printf("Tanggal : 28 April 2018 n ");
printf(" n")
printf("Selamat menggunakannya....... n");
printf("==================================n");
}
3. Jika terdapat eror maka sempurnakan script program tersebut
4. Kemudian jika tidak terdapat eror maka compile program dengan menekan Ctrl-F9.
5. Dan tampilkan output dari script program tersebut.
D. TUGAS PRAKTIKUM
1. Buatlah program dengan menyebutkan biodata lengkap(Nama lengkap, tempat/tanggal
lahir dll) dan cantumkan jumlah saudara anda. Dimana jumlah saudara anda otomatis
menjumlahkan sesuai jumlah saudara perempuan dan laki-laki yang anda ketik seperti
output dibawah ini

More Related Content

What's hot (18)

Algoritma dan Struktur Data - fungsi dan prosedur c++
Algoritma dan Struktur Data -  fungsi dan prosedur c++Algoritma dan Struktur Data -  fungsi dan prosedur c++
Algoritma dan Struktur Data - fungsi dan prosedur c++
Georgius Rinaldo
Modul3 algoritma dan pemrograman procedure dan_function
Modul3 algoritma dan pemrograman procedure dan_functionModul3 algoritma dan pemrograman procedure dan_function
Modul3 algoritma dan pemrograman procedure dan_function
Polytechnic State Semarang
Materi dasar-pascal
Materi dasar-pascalMateri dasar-pascal
Materi dasar-pascal
Maruf das Trifat
Function
FunctionFunction
Function
Achmad Solichin
Jobsheet 4 LOOPING( PENGULANGAN)
Jobsheet 4 LOOPING( PENGULANGAN)Jobsheet 4 LOOPING( PENGULANGAN)
Jobsheet 4 LOOPING( PENGULANGAN)
Polytechnic State Semarang
Laporan Praktikum Algoritma Pemrograman Modul II
Laporan Praktikum Algoritma Pemrograman Modul IILaporan Praktikum Algoritma Pemrograman Modul II
Laporan Praktikum Algoritma Pemrograman Modul II
Shofura Kamal
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunusTifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanie Indah
Laporan praktikum modul iv
Laporan praktikum modul ivLaporan praktikum modul iv
Laporan praktikum modul iv
Devi Apriansyah
Modul pascal
Modul pascalModul pascal
Modul pascal
shediazz
Laporan Praktikum Algoritma Pemrograman Modul I
Laporan Praktikum Algoritma Pemrograman Modul ILaporan Praktikum Algoritma Pemrograman Modul I
Laporan Praktikum Algoritma Pemrograman Modul I
Shofura Kamal
Algoritma perulangan
Algoritma perulanganAlgoritma perulangan
Algoritma perulangan
azkiyaku
Modul algoritma dan pemograman
Modul algoritma dan pemogramanModul algoritma dan pemograman
Modul algoritma dan pemograman
PANJI_ADITYAN
Function
FunctionFunction
Function
Akmal Fajar
Dasar Dasar Algoritma
Dasar Dasar AlgoritmaDasar Dasar Algoritma
Dasar Dasar Algoritma
formatik
Algoritma pemrograman 6
Algoritma pemrograman 6Algoritma pemrograman 6
Algoritma pemrograman 6
ZainalAbidin909479
Laporan Praktikum Algoritma
Laporan Praktikum AlgoritmaLaporan Praktikum Algoritma
Laporan Praktikum Algoritma
EnvaPya
Pemrograman C++ - Fungsi dan Prosedur
Pemrograman C++ - Fungsi dan ProsedurPemrograman C++ - Fungsi dan Prosedur
Pemrograman C++ - Fungsi dan Prosedur
KuliahKita
Pertemuan iv
Pertemuan ivPertemuan iv
Pertemuan iv
Putra Andry
Algoritma dan Struktur Data - fungsi dan prosedur c++
Algoritma dan Struktur Data -  fungsi dan prosedur c++Algoritma dan Struktur Data -  fungsi dan prosedur c++
Algoritma dan Struktur Data - fungsi dan prosedur c++
Georgius Rinaldo
Modul3 algoritma dan pemrograman procedure dan_function
Modul3 algoritma dan pemrograman procedure dan_functionModul3 algoritma dan pemrograman procedure dan_function
Modul3 algoritma dan pemrograman procedure dan_function
Polytechnic State Semarang
Laporan Praktikum Algoritma Pemrograman Modul II
Laporan Praktikum Algoritma Pemrograman Modul IILaporan Praktikum Algoritma Pemrograman Modul II
Laporan Praktikum Algoritma Pemrograman Modul II
Shofura Kamal
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunusTifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanie Indah
Laporan praktikum modul iv
Laporan praktikum modul ivLaporan praktikum modul iv
Laporan praktikum modul iv
Devi Apriansyah
Modul pascal
Modul pascalModul pascal
Modul pascal
shediazz
Laporan Praktikum Algoritma Pemrograman Modul I
Laporan Praktikum Algoritma Pemrograman Modul ILaporan Praktikum Algoritma Pemrograman Modul I
Laporan Praktikum Algoritma Pemrograman Modul I
Shofura Kamal
Algoritma perulangan
Algoritma perulanganAlgoritma perulangan
Algoritma perulangan
azkiyaku
Modul algoritma dan pemograman
Modul algoritma dan pemogramanModul algoritma dan pemograman
Modul algoritma dan pemograman
PANJI_ADITYAN
Dasar Dasar Algoritma
Dasar Dasar AlgoritmaDasar Dasar Algoritma
Dasar Dasar Algoritma
formatik
Laporan Praktikum Algoritma
Laporan Praktikum AlgoritmaLaporan Praktikum Algoritma
Laporan Praktikum Algoritma
EnvaPya
Pemrograman C++ - Fungsi dan Prosedur
Pemrograman C++ - Fungsi dan ProsedurPemrograman C++ - Fungsi dan Prosedur
Pemrograman C++ - Fungsi dan Prosedur
KuliahKita

Similar to Praktikum fix 2 (20)

Fungsi
FungsiFungsi
Fungsi
Rahmat Rijal
Modul c++
Modul c++Modul c++
Modul c++
Kiki MochRifki
07 function 2
07 function 207 function 2
07 function 2
Evert Sandye Taasiringan
Laporan praktikum modul vi
Laporan praktikum modul viLaporan praktikum modul vi
Laporan praktikum modul vi
Devi Apriansyah
Pertemuan vi (Function Java)
Pertemuan vi (Function Java)Pertemuan vi (Function Java)
Pertemuan vi (Function Java)
Putra Andry
PPT-UEU-Bahasa-Pemrograman-Pertemuan-11.pptx
PPT-UEU-Bahasa-Pemrograman-Pertemuan-11.pptxPPT-UEU-Bahasa-Pemrograman-Pertemuan-11.pptx
PPT-UEU-Bahasa-Pemrograman-Pertemuan-11.pptx
HeriGomber
Modul pd
Modul pdModul pd
Modul pd
inggar tri
4. pemrograman fungsi
4. pemrograman fungsi4. pemrograman fungsi
4. pemrograman fungsi
Roziq Bahtiar
Algoritma modul
Algoritma modulAlgoritma modul
Algoritma modul
Irwin andriyanto
Modul Praktikum Algoritma dan Pemrograman
Modul Praktikum Algoritma dan PemrogramanModul Praktikum Algoritma dan Pemrograman
Modul Praktikum Algoritma dan Pemrograman
Irwien Andriyanto
Modul praktikum c++
Modul praktikum c++Modul praktikum c++
Modul praktikum c++
Yunus Bati Al Tidore
Penjelasan Tentang Module Algo
Penjelasan Tentang Module AlgoPenjelasan Tentang Module Algo
Penjelasan Tentang Module Algo
APK BARU
Desain Top Down
Desain Top DownDesain Top Down
Desain Top Down
Dimara Hakim
Function c++
Function c++Function c++
Function c++
Alvin Setiawan
5 adp fungsi & rekursi
5   adp fungsi & rekursi5   adp fungsi & rekursi
5 adp fungsi & rekursi
Chabil_Juniar
5 adp fungsi & rekursi
5   adp fungsi & rekursi5   adp fungsi & rekursi
5 adp fungsi & rekursi
Faisal Amir
5 adp fungsi & rekursi
5   adp fungsi & rekursi5   adp fungsi & rekursi
5 adp fungsi & rekursi
Fisma Ananda
5.adp fungsi & rekursi
5.adp fungsi & rekursi5.adp fungsi & rekursi
5.adp fungsi & rekursi
Hardini_HD
5 adp fungsi & rekursi
5   adp fungsi & rekursi5   adp fungsi & rekursi
5 adp fungsi & rekursi
Avenzz Venzz
Laporan praktikum modul vi
Laporan praktikum modul viLaporan praktikum modul vi
Laporan praktikum modul vi
Devi Apriansyah
Pertemuan vi (Function Java)
Pertemuan vi (Function Java)Pertemuan vi (Function Java)
Pertemuan vi (Function Java)
Putra Andry
PPT-UEU-Bahasa-Pemrograman-Pertemuan-11.pptx
PPT-UEU-Bahasa-Pemrograman-Pertemuan-11.pptxPPT-UEU-Bahasa-Pemrograman-Pertemuan-11.pptx
PPT-UEU-Bahasa-Pemrograman-Pertemuan-11.pptx
HeriGomber
4. pemrograman fungsi
4. pemrograman fungsi4. pemrograman fungsi
4. pemrograman fungsi
Roziq Bahtiar
Modul Praktikum Algoritma dan Pemrograman
Modul Praktikum Algoritma dan PemrogramanModul Praktikum Algoritma dan Pemrograman
Modul Praktikum Algoritma dan Pemrograman
Irwien Andriyanto
Penjelasan Tentang Module Algo
Penjelasan Tentang Module AlgoPenjelasan Tentang Module Algo
Penjelasan Tentang Module Algo
APK BARU
Desain Top Down
Desain Top DownDesain Top Down
Desain Top Down
Dimara Hakim
5 adp fungsi & rekursi
5   adp fungsi & rekursi5   adp fungsi & rekursi
5 adp fungsi & rekursi
Chabil_Juniar
5 adp fungsi & rekursi
5   adp fungsi & rekursi5   adp fungsi & rekursi
5 adp fungsi & rekursi
Faisal Amir
5 adp fungsi & rekursi
5   adp fungsi & rekursi5   adp fungsi & rekursi
5 adp fungsi & rekursi
Fisma Ananda
5.adp fungsi & rekursi
5.adp fungsi & rekursi5.adp fungsi & rekursi
5.adp fungsi & rekursi
Hardini_HD
5 adp fungsi & rekursi
5   adp fungsi & rekursi5   adp fungsi & rekursi
5 adp fungsi & rekursi
Avenzz Venzz

Recently uploaded (20)

Panduan Entry Nilai Rapor untuk Operator SD_MI 2025.pptx (1).pdf
Panduan Entry Nilai Rapor untuk Operator SD_MI 2025.pptx (1).pdfPanduan Entry Nilai Rapor untuk Operator SD_MI 2025.pptx (1).pdf
Panduan Entry Nilai Rapor untuk Operator SD_MI 2025.pptx (1).pdf
Fajar Baskoro
1.2 Algoritma SAINS KOMPUTER TINGKATAN 4
1.2 Algoritma SAINS KOMPUTER TINGKATAN 41.2 Algoritma SAINS KOMPUTER TINGKATAN 4
1.2 Algoritma SAINS KOMPUTER TINGKATAN 4
NORMUHAMADBINYAACOBK
PPT Perkawinan (Poligami, Monogami).pptx
PPT Perkawinan (Poligami, Monogami).pptxPPT Perkawinan (Poligami, Monogami).pptx
PPT Perkawinan (Poligami, Monogami).pptx
rahmiati190700
keutamaanDiskusi kelompok berlangsung dengan baik, dengan setiap siswa merasa...
keutamaanDiskusi kelompok berlangsung dengan baik, dengan setiap siswa merasa...keutamaanDiskusi kelompok berlangsung dengan baik, dengan setiap siswa merasa...
keutamaanDiskusi kelompok berlangsung dengan baik, dengan setiap siswa merasa...
ssuser327180
Teks fiks Didik anak dengan islamiyah.pptx
Teks fiks Didik anak dengan islamiyah.pptxTeks fiks Didik anak dengan islamiyah.pptx
Teks fiks Didik anak dengan islamiyah.pptx
ArizOghey1
RENCANA & Link2 MATERI Training_ *MANAJEMEN RISIKO BISNIS (+ ISO 31000)*.pptx
RENCANA & Link2 MATERI Training_ *MANAJEMEN RISIKO BISNIS (+ ISO 31000)*.pptxRENCANA & Link2 MATERI Training_ *MANAJEMEN RISIKO BISNIS (+ ISO 31000)*.pptx
RENCANA & Link2 MATERI Training_ *MANAJEMEN RISIKO BISNIS (+ ISO 31000)*.pptx
Kanaidi ken
Project Mata kuliah Biogeografi kelompok 5
Project Mata kuliah Biogeografi kelompok 5Project Mata kuliah Biogeografi kelompok 5
Project Mata kuliah Biogeografi kelompok 5
khairizal2005
Analisis Subjek Literatur Pada Disertasi Kajian Budaya dan Media (KBM) Sekola...
Analisis Subjek Literatur Pada Disertasi Kajian Budaya dan Media (KBM) Sekola...Analisis Subjek Literatur Pada Disertasi Kajian Budaya dan Media (KBM) Sekola...
Analisis Subjek Literatur Pada Disertasi Kajian Budaya dan Media (KBM) Sekola...
Murad Maulana
SABDA Ministry Learning Center: Go Paskah: Paskah dan Sekolah Minggu bagian 1
SABDA Ministry Learning Center: Go Paskah: Paskah dan Sekolah Minggu bagian 1SABDA Ministry Learning Center: Go Paskah: Paskah dan Sekolah Minggu bagian 1
SABDA Ministry Learning Center: Go Paskah: Paskah dan Sekolah Minggu bagian 1
SABDA
Rancangan Pembelajaran Semester Kartografi
Rancangan Pembelajaran Semester KartografiRancangan Pembelajaran Semester Kartografi
Rancangan Pembelajaran Semester Kartografi
khairizal2005
PELAKSANAAN + Link2 MATERI Pelatihan *"PTK 007 (Rev-5 Thn 2023) + Perhitungan...
PELAKSANAAN + Link2 MATERI Pelatihan *"PTK 007 (Rev-5 Thn 2023) + Perhitungan...PELAKSANAAN + Link2 MATERI Pelatihan *"PTK 007 (Rev-5 Thn 2023) + Perhitungan...
PELAKSANAAN + Link2 MATERI Pelatihan *"PTK 007 (Rev-5 Thn 2023) + Perhitungan...
Kanaidi ken
KUMPULAN CERPEN SMAN 2 MUARA BADAK KALIMANTAN TIMUR.pdf
KUMPULAN CERPEN SMAN 2 MUARA BADAK KALIMANTAN TIMUR.pdfKUMPULAN CERPEN SMAN 2 MUARA BADAK KALIMANTAN TIMUR.pdf
KUMPULAN CERPEN SMAN 2 MUARA BADAK KALIMANTAN TIMUR.pdf
PT. DUTA MEDIA PRESS
Manual DIVI Builder (Bahasa Indonesia).pdf
Manual DIVI Builder (Bahasa Indonesia).pdfManual DIVI Builder (Bahasa Indonesia).pdf
Manual DIVI Builder (Bahasa Indonesia).pdf
Igen D
Repositori Elib Perpustakaan Badan Pengawas Tenaga Nuklir (BAPETEN)
Repositori Elib Perpustakaan Badan Pengawas Tenaga Nuklir (BAPETEN)Repositori Elib Perpustakaan Badan Pengawas Tenaga Nuklir (BAPETEN)
Repositori Elib Perpustakaan Badan Pengawas Tenaga Nuklir (BAPETEN)
Murad Maulana
1. KISI-KISI SOAL PSAJ BAHASA INGGRIS 2025 - Elis Sulastri.docx
1. KISI-KISI SOAL PSAJ BAHASA INGGRIS 2025 - Elis Sulastri.docx1. KISI-KISI SOAL PSAJ BAHASA INGGRIS 2025 - Elis Sulastri.docx
1. KISI-KISI SOAL PSAJ BAHASA INGGRIS 2025 - Elis Sulastri.docx
AhsanBodonk
PAPARAN INOPAMAS 2025 PASURUAN TAHUN 2025
PAPARAN INOPAMAS 2025 PASURUAN TAHUN 2025PAPARAN INOPAMAS 2025 PASURUAN TAHUN 2025
PAPARAN INOPAMAS 2025 PASURUAN TAHUN 2025
saichulikhtiyar274
Rencana PS Bahasa Indonesia Format Baru.pdf
Rencana PS Bahasa Indonesia Format Baru.pdfRencana PS Bahasa Indonesia Format Baru.pdf
Rencana PS Bahasa Indonesia Format Baru.pdf
edenmanoppo
Farmakologi (antibiotik, antivirus, antijamur).pptx
Farmakologi (antibiotik, antivirus, antijamur).pptxFarmakologi (antibiotik, antivirus, antijamur).pptx
Farmakologi (antibiotik, antivirus, antijamur).pptx
michellepikachuuu
PPT Qurdis Bab 4 kelas IX MTs/SMP SMT 2.pptx
PPT Qurdis Bab 4 kelas IX MTs/SMP SMT 2.pptxPPT Qurdis Bab 4 kelas IX MTs/SMP SMT 2.pptx
PPT Qurdis Bab 4 kelas IX MTs/SMP SMT 2.pptx
hendipurnama1
03. DISTRIBUSI FREKUENSI (Ilmu Komputer Unpak).pdf
03. DISTRIBUSI FREKUENSI (Ilmu Komputer Unpak).pdf03. DISTRIBUSI FREKUENSI (Ilmu Komputer Unpak).pdf
03. DISTRIBUSI FREKUENSI (Ilmu Komputer Unpak).pdf
AsepSaepulrohman4
Panduan Entry Nilai Rapor untuk Operator SD_MI 2025.pptx (1).pdf
Panduan Entry Nilai Rapor untuk Operator SD_MI 2025.pptx (1).pdfPanduan Entry Nilai Rapor untuk Operator SD_MI 2025.pptx (1).pdf
Panduan Entry Nilai Rapor untuk Operator SD_MI 2025.pptx (1).pdf
Fajar Baskoro
1.2 Algoritma SAINS KOMPUTER TINGKATAN 4
1.2 Algoritma SAINS KOMPUTER TINGKATAN 41.2 Algoritma SAINS KOMPUTER TINGKATAN 4
1.2 Algoritma SAINS KOMPUTER TINGKATAN 4
NORMUHAMADBINYAACOBK
PPT Perkawinan (Poligami, Monogami).pptx
PPT Perkawinan (Poligami, Monogami).pptxPPT Perkawinan (Poligami, Monogami).pptx
PPT Perkawinan (Poligami, Monogami).pptx
rahmiati190700
keutamaanDiskusi kelompok berlangsung dengan baik, dengan setiap siswa merasa...
keutamaanDiskusi kelompok berlangsung dengan baik, dengan setiap siswa merasa...keutamaanDiskusi kelompok berlangsung dengan baik, dengan setiap siswa merasa...
keutamaanDiskusi kelompok berlangsung dengan baik, dengan setiap siswa merasa...
ssuser327180
Teks fiks Didik anak dengan islamiyah.pptx
Teks fiks Didik anak dengan islamiyah.pptxTeks fiks Didik anak dengan islamiyah.pptx
Teks fiks Didik anak dengan islamiyah.pptx
ArizOghey1
RENCANA & Link2 MATERI Training_ *MANAJEMEN RISIKO BISNIS (+ ISO 31000)*.pptx
RENCANA & Link2 MATERI Training_ *MANAJEMEN RISIKO BISNIS (+ ISO 31000)*.pptxRENCANA & Link2 MATERI Training_ *MANAJEMEN RISIKO BISNIS (+ ISO 31000)*.pptx
RENCANA & Link2 MATERI Training_ *MANAJEMEN RISIKO BISNIS (+ ISO 31000)*.pptx
Kanaidi ken
Project Mata kuliah Biogeografi kelompok 5
Project Mata kuliah Biogeografi kelompok 5Project Mata kuliah Biogeografi kelompok 5
Project Mata kuliah Biogeografi kelompok 5
khairizal2005
Analisis Subjek Literatur Pada Disertasi Kajian Budaya dan Media (KBM) Sekola...
Analisis Subjek Literatur Pada Disertasi Kajian Budaya dan Media (KBM) Sekola...Analisis Subjek Literatur Pada Disertasi Kajian Budaya dan Media (KBM) Sekola...
Analisis Subjek Literatur Pada Disertasi Kajian Budaya dan Media (KBM) Sekola...
Murad Maulana
SABDA Ministry Learning Center: Go Paskah: Paskah dan Sekolah Minggu bagian 1
SABDA Ministry Learning Center: Go Paskah: Paskah dan Sekolah Minggu bagian 1SABDA Ministry Learning Center: Go Paskah: Paskah dan Sekolah Minggu bagian 1
SABDA Ministry Learning Center: Go Paskah: Paskah dan Sekolah Minggu bagian 1
SABDA
Rancangan Pembelajaran Semester Kartografi
Rancangan Pembelajaran Semester KartografiRancangan Pembelajaran Semester Kartografi
Rancangan Pembelajaran Semester Kartografi
khairizal2005
PELAKSANAAN + Link2 MATERI Pelatihan *"PTK 007 (Rev-5 Thn 2023) + Perhitungan...
PELAKSANAAN + Link2 MATERI Pelatihan *"PTK 007 (Rev-5 Thn 2023) + Perhitungan...PELAKSANAAN + Link2 MATERI Pelatihan *"PTK 007 (Rev-5 Thn 2023) + Perhitungan...
PELAKSANAAN + Link2 MATERI Pelatihan *"PTK 007 (Rev-5 Thn 2023) + Perhitungan...
Kanaidi ken
KUMPULAN CERPEN SMAN 2 MUARA BADAK KALIMANTAN TIMUR.pdf
KUMPULAN CERPEN SMAN 2 MUARA BADAK KALIMANTAN TIMUR.pdfKUMPULAN CERPEN SMAN 2 MUARA BADAK KALIMANTAN TIMUR.pdf
KUMPULAN CERPEN SMAN 2 MUARA BADAK KALIMANTAN TIMUR.pdf
PT. DUTA MEDIA PRESS
Manual DIVI Builder (Bahasa Indonesia).pdf
Manual DIVI Builder (Bahasa Indonesia).pdfManual DIVI Builder (Bahasa Indonesia).pdf
Manual DIVI Builder (Bahasa Indonesia).pdf
Igen D
Repositori Elib Perpustakaan Badan Pengawas Tenaga Nuklir (BAPETEN)
Repositori Elib Perpustakaan Badan Pengawas Tenaga Nuklir (BAPETEN)Repositori Elib Perpustakaan Badan Pengawas Tenaga Nuklir (BAPETEN)
Repositori Elib Perpustakaan Badan Pengawas Tenaga Nuklir (BAPETEN)
Murad Maulana
1. KISI-KISI SOAL PSAJ BAHASA INGGRIS 2025 - Elis Sulastri.docx
1. KISI-KISI SOAL PSAJ BAHASA INGGRIS 2025 - Elis Sulastri.docx1. KISI-KISI SOAL PSAJ BAHASA INGGRIS 2025 - Elis Sulastri.docx
1. KISI-KISI SOAL PSAJ BAHASA INGGRIS 2025 - Elis Sulastri.docx
AhsanBodonk
PAPARAN INOPAMAS 2025 PASURUAN TAHUN 2025
PAPARAN INOPAMAS 2025 PASURUAN TAHUN 2025PAPARAN INOPAMAS 2025 PASURUAN TAHUN 2025
PAPARAN INOPAMAS 2025 PASURUAN TAHUN 2025
saichulikhtiyar274
Rencana PS Bahasa Indonesia Format Baru.pdf
Rencana PS Bahasa Indonesia Format Baru.pdfRencana PS Bahasa Indonesia Format Baru.pdf
Rencana PS Bahasa Indonesia Format Baru.pdf
edenmanoppo
Farmakologi (antibiotik, antivirus, antijamur).pptx
Farmakologi (antibiotik, antivirus, antijamur).pptxFarmakologi (antibiotik, antivirus, antijamur).pptx
Farmakologi (antibiotik, antivirus, antijamur).pptx
michellepikachuuu
PPT Qurdis Bab 4 kelas IX MTs/SMP SMT 2.pptx
PPT Qurdis Bab 4 kelas IX MTs/SMP SMT 2.pptxPPT Qurdis Bab 4 kelas IX MTs/SMP SMT 2.pptx
PPT Qurdis Bab 4 kelas IX MTs/SMP SMT 2.pptx
hendipurnama1
03. DISTRIBUSI FREKUENSI (Ilmu Komputer Unpak).pdf
03. DISTRIBUSI FREKUENSI (Ilmu Komputer Unpak).pdf03. DISTRIBUSI FREKUENSI (Ilmu Komputer Unpak).pdf
03. DISTRIBUSI FREKUENSI (Ilmu Komputer Unpak).pdf
AsepSaepulrohman4

Praktikum fix 2

  • 1. 1 Praktikum Pemrograman Dasar MODUL PRAKTIKUM PENGGUNAAN FUNGSI A. TUJUAN 1. Menerapkan Penggunaan Fungsi 2. Membuat kode program menggunakan fungsi B. DASAR TEORI Fungsi adalah suatu bagian dari program yang dirancang untuk melaksanakan tugas tertentu dan letaknya dipisahkan dari program yang menggunakannya. Elemen utama dari program bahasa C berupa fungsi-fungsi, dalam hal ini program dari bahasa C dibentuk dari kumpulan fungsi pustaka (standar) dan fungsi yang dibuat sendiri oleh pemrogram. Fungsi banyak digunakan pada program C dengan tujuan : 1. Program menjadi terstruktur, sehingga mudah dipahami dan mudah dikembangkan. Dengan memisahkan langkah-langkah detail ke satu atau lebih fungsi-fungsi, maka fungsi utama (main()) menjadi lebih pendek, jelas dan mudah dimengerti. 2. Dapat mengurangi pengulangan (duplikasi) kode. Langkah-langkah program yang sama dan dipakai berulang-ulang di program dapat dituliskan sekali saja secara terpisah dalam bentuk fungsi-fungsi. Selanjutnya bagian program yang membutuhkan langkah-langkah ini tidak perlu selalu menuliskannya, tetapi cukup memanggil fungsifungsi tersebut. Suatu fungsi dibuat untuk maksud menyelesaikan tugas tertentu. Suatu fungsi dapat hanya melakukan suatu tugas saja tanpa memberikan suatu hasil keluaran atau melakukan suatu tugas dan kemudian memberikan hasil keluaran. Fungsi yang hanya melakukan suatu tugas saja tanpa memberikan hasil keluaran misalnya adalah fungsi untuk menampilkan hasil di layar. Dalam tubuh fungsi, pernyataan yang digunakan untuk memberikan nilai keluaran fungsi berupa return. Sebagai contoh, pada fungsi inisialisasi() di atas terdapat pernyataan return(0);
  • 2. 2 Praktikum Pemrograman Dasar Merupakan pernyataan untuk memberikan nilai keluaran fungsi berupa nol. Selengkapnya perhatikan program di bawah in /* File program : inisial.c Contoh pembuatan fungsi */ int inisialisasi(); #include <stdio.h> main() { int x, y; x = inisialisasi(); printf("x = %dn", x); y = inisialisasi(); printf("y = %dn", y); } int inisialisasi() { return(0); } Contoh eksekusi : x = 0 y = 0 Program di atas sekaligus menjelaskan bahwa suatu fungsi cukup didefinisikan satu kali tetapi bisa digunakan beberapa kali. Pada keadaan semacam ini seandainya tubuh fungsi mengandung banyak pernyataan, maka pemakaian fungsi dapat menghindari duplikasi kode dan tentu saja menghemat penulisan program maupun kode dalam memori. Gambar 8.3 Proses pemanggilan fungsi main() { int x, y; x = inisialisasi(); printf("x = %dn", x); y = inisialisasi(); printf("y = %dn", y); } int inisialisasi() { return(0); } pemangg ilan fun gsi definisi fungsi
  • 3. 3 Praktikum Pemrograman Dasar Misalnya pada saat pernyataan x = inisialisasi(); dijalankan, mula-mula eksekusi akan diarahkan ke fungsi inisialisasi(), selanjutnya suatu nilai keluaran (hasil fungsi) akhir fungsi diberikan ke x. Proses yang serupa, dilakukan untuk pernyataan y = inisialisasi(); Bagi suatu fungsi, jika suatu pernyataan return dieksekusi, maka eksekusi terhadap fungsi akan berakhir dan nilai pada parameter return akan menjadi keluaran fungsi. Untuk fungsi yang tidak memiliki pernyataan return, tanda } pada bagian akhir fungsi akan menyatakan akhir eksekusi fungsi. Di bawah ini diberikan contoh sebuah fungsi yang mengandung dua buah pernyataan return. Fungsi digunakan untuk memperoleh nilai minimum di antara 2 buah nilai yang menjadi parameternya. int minimum(int x, int y) { if (x < y) return(x); else return(y); } Pada fungsi di atas terdapat dua buah parameter berupa x dan y. Oleh karena itu fungsi juga mengandung bagian untuk mendeklarasikan parameter, yang menyatakan x dan y bertipe int. Adapun penentuan nilai keluaran fungsi dilakukan pada tubuh fungsi, berupa pernyataan if (x < y) return(x); else return(y); yang menyatakan : jika x < y maka nilai keluaran fungsi adalah sebesar nilai x. untuk keadaan lainnya (x >= y) maka keluaran fungsi adalah sebesar y.
  • 4. 4 Praktikum Pemrograman Dasar Selengkapnya perhatikan program di bawah ini. /* File program : minimum1.c */ #include <stdio.h> int minimum (int, int); main() { int a, b, kecil; printf("Masukkan nilai a : "); scanf("%d", &a); printf("Masukkan nilai b : "); scanf("%d", &b); kecil = minimum(a, b); printf("nBilangan terkecil antara %d dan %d adalah %dnn", a, b, kecil); } minimum(int x, int y) { if (x < y) return(x); else return(y); } Contoh eksekusi : Masukkan nilai a = 4 Masukkan nilai b = 2 Bilangan terkecil antara 4 dan 2 adalah 2 Fungsi Dengan Keluaran Bukan Integer Untuk fungsi yang mempunyai keluaran bertipe bukan integer, maka fungsi haruslah didefiniskan dengan diawali tipe keluaran fungsinya (ditulis di depan nama fungsi). Sebagai contoh untuk menghasilkan nilai terkecil di antara dua buah nilai real, maka definisinya berupa : float minimum(float x, float y) { if (x < y) return(x); else
  • 5. 5 Praktikum Pemrograman Dasar return(y); } Perhatikan, di depan nama minimum diberikan tipe keluaran fungsi berupa float. Seluruh parameter sendiri juga didefinisikan dengan tipe float. Selengkapnya adalah sebagai berikut : /* File program : minimum2.c */ #include <stdio.h> float minimum (float, float); main() { float a, b, kecil; printf("Masukkan nilai a : "); scanf("%f", &a); printf("Masukkan nilai b : "); scanf("%f", &b); kecil = minimum(a, b); printf("nBilangan terkecil antara %g dan %g adalah %gnn", a, b, kecil); } float minimum(float x, float y) { if (x < y) return(x); else return(y); } Contoh eksekusi : Masukkan nilai a = 5.5 Masukkan nilai b = 6.23 Bilangan terkecil antara 5 dan 6.23 adalah 5.5 Khusus untuk fungsi yang dirancang tanpa memberikan nilai keluaran (melainkan hanya menjalankan suatu tugas khusus) biasa didefinisikan dengan diawali kata kunci void (di depan nama fungsi).
  • 6. 6 Praktikum Pemrograman Dasar Prototipe Fungsi Prototipe fungsi digunakan untuk menjelaskan kepada kompiler mengenai : tipe keluaran fungsi jumlah parameter tipe dari masing-masing parameter. Bagi kompiler, informasi dalam prototipe akan dipakai untuk memeriksa keabsahan (validitas) parameter dalam pemanggilan fungsi. Salah satu keuntungannya adalah, kompiler akan melakukan konversi seandainya antara tipe parameter dalam fungsi dan parameter saat pemanggilan fungsi tidak sama, atau akan menunjukan kesalahan bila jumlah parameter dalam definisi dan saat pemanggilan berbeda. Contoh prototipe fungsi; float jumlah (float x, float y); atau float jumlah (float, float); Penjelasannya adalah sbb : Nama fungsi Diakhiri dengan titik koma Tipe parameter kedua Tipe parameter pertama Tipe keluaran fungsi Perhatikan contoh program di bawah ini. /* File program : jumlah.c contoh pemakaian prototipe fungsi */ #include <stdio.h> float jumlah(float, float); /* prototipe fungsi */ main() { float a, b,c; printf("Masukkan nilai a : "); scanf("%f", &a); float jumlah (float, float);
  • 7. 7 Praktikum Pemrograman Dasar printf("Masukkan nilai b : "); scanf("%f", &b); c = jumlah(a, b); printf("nHasil penjumlahan a + b = %gn", c); } float jumlah(float x, float y) /* definisi fungsi */ { return(x + y); } Contoh eksekusi : Masukkan nilai a : 4.5 Masukkan nilai b : 7.65 Hasil penjumlahan a + b = 12.15 C. PRAKTIKUM 1. Buka program aplikasi Code Blocks 2. Lalu ketikkan dan analisislah eror script program dibawah ini. /* File program : void.c Contoh fungsi tanpa nilai keluaran (pamakaian void) */ #include <stdio.h> void main() {
  • 8. 8 Praktikum Pemrograman Dasar printf("==================================n"); printf("Progam dibuat oleh Arvian Ilmi n"); printf("Tanggal : 28 April 2018 n "); printf(" n") printf("Selamat menggunakannya....... n"); printf("==================================n"); } 3. Jika terdapat eror maka sempurnakan script program tersebut 4. Kemudian jika tidak terdapat eror maka compile program dengan menekan Ctrl-F9. 5. Dan tampilkan output dari script program tersebut. D. TUGAS PRAKTIKUM 1. Buatlah program dengan menyebutkan biodata lengkap(Nama lengkap, tempat/tanggal lahir dll) dan cantumkan jumlah saudara anda. Dimana jumlah saudara anda otomatis menjumlahkan sesuai jumlah saudara perempuan dan laki-laki yang anda ketik seperti output dibawah ini