A. TUJUAN 1. Menjelaskan tentang prinsip dasar fungsi. 2. Menjelaskan tentang.parameter formal dan parameter aktual

dokumen-dokumen yang mirip
Fungsi : Dasar Fungsi

PRAKTIKUM 7 FUNGSI 1

Konsep Pemrograman. Bab 7. Fungsi1. Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 PENS-ITS. Umi Sa adah

Fungsi 1 DASAR PEMROGRAMAN

FUNCTION (FUNGSI) LOGO. Pendidikan Teknik Elektronika FT UNY. Muh. Izzuddin Mahali, M.Cs.

BAB V FUNGSI Tujuan : 5.1 Dasar Fungsi

Fungsi DASAR PEMROGRAMAN

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

Fungsi DASAR PEMROGRAMAN

MODUL 10 Fungsi 10.1 Kompetensi 10.2 Alat Dan Bahan: 10.3 Ulasan Teori: Dasar Fungsi Deklarasi Fungsi

Konsep Pemrograman Praktikum 14 Fungsi : Parameter Fromal & Aktual

Kurikulum Qt. { Basic OOP } Chapter 4. Function

Kurikulum Qt. Chapter 4 Function. Fungsi

PRAKTIKUM : 14 BAHASA C : BAB FUNGSI SUB-BAB: PARAMETER FORMAL & AKTUAL DWI SETIYA NINGSIH // [COMPANY NAME] [Company address]

Bab 2. Dasar-Dasar Pemrograman C

Algoritma Pemrograman 2B (Pemrograman C++)

KONSEP DASAR. menyusunnya menjadi potongan-potongan mudah untuk ditangani dibanding. conquer.

PENGENALAN BAHASA C. A. Struktur Kode Program dalam Bahasa C Secara garis besar, suatu kode program dalam bahasa C memiliki struktur umum seperti ini:

ALGORITMA (2) Mengupas Kentang

BAB 4 PENGENALAN BAHASA C

A. TUJUAN 1. Memecah program dalam fungsi fungsi yang sederhana. 2. Menjelaskan tentang pemrograman terstruktur.

PENGENALAN BAHASA C. Praktikum 3

VI. FUNGSI. Fungsi Main ( ) Fungsi a ( ) Fungsi b ( ) Fungsi c ( ) Fungsi c1 ( ) Fungsi c2 ( ) Fungsi c3 ( ) Bentuk umumnya :

Pemrograman Dasar C. Minggu 6

OPERASI PERNYATAAN KONDISI

PEMROGRAMAN DAN METODE NUMERIK Semester 2/ 2 sks/ MFF 1024

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET BAHASA PEMROGRAMAN Fungsi : Passing Parameter by Value & Semester 3

PRAKTIKUM 3 DASAR PEMROGRAMAN C

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

BAB II DASAR-DASAR PEMROGRAMAN C

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

Chapter 1 KONSEP DASAR C

PRAKTIKUM 3 DASAR PEMROGRAMAN C

Bahasa C-M6 By Jamilah, Skom 1

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

Fungsi Lanjut DASAR PEMROGRAMAN

BAB IV PENGULANGAN PROSES

Tipe Data, Variabel, Input/Output

BAB I PENGENALAN BAHASA C

ALGORITMA DAN STRUKTUR DATA POINTER DAN FUNCTION

A. TUJUAN PEMBELAJARAN

Bahasa C melengkapi fasilitas modular dengan menggunakan fungsi pada setiap SubProgram. Contoh pembagian program menjadi beberapa subprogram.

/* File program : tukar1.c Untuk melihat pengaruh pemanggilan nilai pada fungsi untuk penukaran dua data */

BAB I SEKILAS TENTANG C

Array LOGO. Pendidikan Teknik Elektronika FT UNY. Muh. Izzuddin Mahali, M.Cs.

Tipe Data Dasar. Data bisa dinyatakan dalam bentuk konstanta atau variabel.

MODUL 7 FUNGSI A. Tujuan. B. Petunjuk. C. Dasar Teori

E STRUKTUR DATA & E PRAKTIK STRUKTUR DATA. Pointer & Function. Alfa Faridh Suni, S.T., M.T. PTIK

Algoritma & Pemrograman FUNGSI. Pengampu : Agus Priyanto, M.Kom SEKOLAH TINGGI TEKNOLOGI TELEMATIKA TELKOM. Smart, Trustworthy, And Teamwork

Tipe Data Dasar. Berdasarkan jenisnya, data dapat dibagi menjadi lima kelompok dinamakan tipe data dasar, yaitu:

BAB 6 FUNGSI TUJUAN PRAKTIKUM

Array 1 A. TUJUAN PEMBELAJARAN

Sedangkan bentuk umum pendefinisian fungsi adalah : Tipe_fungsi nama_fungsi(parameter_fungsi) { statement statement... }

Pengantar Visual C++ & Penulisan Program

Bab 3. Decision 1 (Pengambilan Keputusan)

Praktikum 3 DASAR-DASAR PEMROGRAMAN C

Dasar-dasar Pemrograman C DASAR PEMROGRAMAN & ALGORITMA

Program pendek dan simple = mudah dihandle. Program besar, banyak dan kompleks = tidak

Kuliah III - Dasar Pemrograman

IT234 ALGORITMA DAN STRUKTUR DATA FUNGSI

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

BAHASA PEMROGRAMAN C LANGUAGE

FUNGSI II. Variabel Statis. Sifat variabel statis: Sintaks: static tipe_data nama_variabel; Contoh: static int angka;

POINTER DASAR PEMROGRAMAN

BAHASA PEMROGRAMAN C

Tipe Data dan Variabel

Data bisa dinyatakan dalam bentuk konstanta atau variabel.

MAKALAH POINTER PADA BAHASA C

PERULANGAN for. Praktikum 6 (1/4)

Konsep Pemrograman. Bab 8. Fungsi 2. Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 PENS-ITS. Umi Sa adah

FUNGSI. tipe Tipe nilai yang dihasilkan oleh fungsi. Jika tidak dinyatakan, hasil fungsi dianggap bilangan bulat (int)

PEMROGRAMAN BERORIENTASI OBJEK

Konsep Pemrograman. Bab 13. Pointer 3. Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 PENS-ITS. Umi Sa adah

MODUL PRAKTIKUM ALGORITMA DAN PEMROGRAMAN REVISI II EDY BUDIMAN, M.T PROGRAM STUDI TEKNIK INFORMATIKA

Perulangan, Percabangan, dan Studi Kasus

nama array untuk menyimpan data jumlah data

MENAMPILKAN HASIL Operasi Keluaran (Output)

Algoritme dan Pemrograman

1. Mempelajari konsep dasar array, array ganda, pengiriman array ke fungsi dan string 2. Membuat program menggunakan array, array ganda

BAB VIII POINTER. Tujuan :

Algoritme dan Pemrograman

elemen Dasar Bahasa Pemrograman C

Scope Variable. Sebuah variabel di dalam sebuah fungsi memiliki jangkauan tertentu. Skop variabel terdiri dari:

Fungsi. Fungsi. Dasar Komputer & Pemrograman 1. dipecah Sub Program. Program. Dasar Komputer & Pemrograman TC22052 Kartika Firdausy - UAD

Pernyataan (Statement) dan Input/Output

PRAKTIKUM 19 : ARRAY 2

Pengenalan C++ Oleh : Dewi Sartika

MATERI/BAHAN PRAKTIKUM PENDAHULUAN DAN PENGENALAN (IDENTIFIER)

PRAKTIKUM 6 PENGULANGAN PROSES 2

MODUL 1 STANDAR INPUT DAN OUTPUT

MODUL PRAKTIKUM ALGORITMA DAN STRUKTUR DATA PERTEMUAN 1

Fungsi, Parameter, Rekursi

Tipe Data dan Operator

Mengenal Subroutine pada Pemrograman C Dian Wirdasari

SOAL C++ Created by Yuli Astuti,S.Kom Copyright 2009

PRAKTIKUM 5 PENGULANGAN PROSES 1

MODUL IV Analisis Kasus/Pemilihan

DASAR PEMROGRAMAN. PENGANTAR BAHASA C ( Sejarah, Struktur Pemrograman, Tipe Data, Operator ) Djoko Soerjanto, M.Kom

Pengambilan Keputusan. Konsep Pemrograman Oleh Tita Karlita

Struktur Program Bahasa C

Transkripsi:

Praktikum 7 FUNGSI 1 A. TUJUAN 1. Menjelaskan tentang prinsip dasar fungsi. 2. Menjelaskan tentang.parameter formal dan parameter aktual 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 : a. 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. b. 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 fungsi-fungsi tersebut. Dasar Fungsi Fungsi standar C yang mengemban tugas khusus contohnya adalah ; printf(), yaitu untuk menampilkan informasi atau data ke layar. scanf(), yaitu untuk membaca kode tombol yang diinputkan. Pada umumnya fungsi memerlukan nilai masukan atau parameter yang disebut sebagai argumen. Nilai masukan ini akan diolah oleh fungsi. Hasil akhir fungsi berupa sebuah nilai (disebut sebagai return value atau nilai keluaran fungsi). Oleh karena itu 46

fungsi sering digambarkan sebagai "kotak gelap" seperti ditunjukkan pada gambar di bawah ini. Parameter FUNGSI Keluaran Fungsi Gambar 7.1 Fungsi sebagai sebuah kotak gelap Penggambaran sebagai kotak gelap di antaranya menjelaskan bahwa bagian dalam fungsi bersifat pribadi bagi fungsi. Tak ada suatu pernyataan di luar fungsi yang bisa mengakses bagian dalam fungsi, selain melalui parameter (atau variabel eksternal yang akan dibahas belakangan). Misalnya melakukan goto dari pernyataan di luar fungsi ke pernyataan dalam fungsi adalah tidak diperkenankan. Bentuk umum dari definisi sebuah fungsi adalah sebagai berikut ; tipe-keluaran-fungsi nama-fungsi (deklarasi argumen) tubuh fungsi Keterangan : tipe-keluaran-fungsi, dapat berupa salah satu tipe data C, misalnya char atau int. Kalau penentu tipe tidak disebutkan maka dianggap bertipe int (secara default). tubuh fungsi berisi deklarasi variabel (kalau ada) dan statemen-statemen yang akan melakukan tugas yang akan diberikan kepada fungsi yang bersangkutan. Tubuh fungsi ini ditulis di dalam tanda kurung kurawal buka dan kurung kurawal tutup. Sebuah fungsi yang sederhana bisa saja tidak mengandung parameter sama sekali dan tentu saja untuk keadaan ini deklarasi parameter juga tidak ada. Contoh : int inisialisasi() inisialisasi() 47

Pada fungsi di atas : tipe keluaran fungsi tidak disebutkan, berarti keluaran fungsi ber tipe int. inisialisasi adalah nama fungsi Tanda () sesudah nama fungsi menyatakan bahwa fungsi tak memiliki parameter. Tanda dan adalah awal dan akhir fungsi return(0) merupakan sebuah pernyataan dalam tubuh fungsi. inisialisasi() Nama fungsi Sepasang tanda kurung, tanpa argumen Tak ada tanda titik koma Awal fungsi Tubuh fungsi Akhir fungsi Gambar 7.2 Penjelasan definisi sebuah fungsi Memberikan Nilai Keluaran Fungsi 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 merupakan pernyataan untuk memberikan nilai keluaran fungsi berupa nol. main() int x, y; x = inisialisasi(); printf("x = %d\n", x); y = inisialisasi(); printf("y = %d\n", y); int inisialisasi() pemanggilan fungsi definisi fungsi Gambar 7.3 Proses pemanggilan fungsi 48

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. 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. 49

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 return(y); Perhatikan, di depan nama minimum diberikan tipe keluaran fungsi berupa float. Seluruh parameter sendiri juga didefinisikan dengan tipe float. 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). 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); 50

Penjelasannya adalah sbb : float jumlah (float, float); Nama fungsi Diakhiri dengan titik koma Tipe parameter kedua Tipe parameter pertama Tipe keluaran fungsi Gambar 7.4 Prototipe fungsi Untuk fungsi yang tidak memiliki argumen (contoh program void.c), maka deklarasinya adalah void info_program(void); menyatakan bahwa info_program() tidak memiliki parameter Catatan : Untuk fungsi-fungsi pustaka, prototipe dari fungsi-fungsi berada di file-file judulnya (header file). Misalnya fungsi pustaka printf() dan scanf() prototipenya berada pada file dengan nama stdio.h Untuk fungsi pustaka pencantuman pada prototipe fungsi dapat dilakukan dengan menggunakan preprocessor directive #include. Parameter Formal dan Parameter Aktual Parameter formal adalah variabel yang ada pada daftar parameter dalam definisi fungsi. Pada contoh program di atas misalnya, maka dalam fungsi jumlah() variabel x dan y dinamakan sebagai parameter formal. Adapun parameter aktual adalah parameter (tidak selalu berupa variabel) yang dipakai dalam pemanggilan fungsi. main()... c = jumlah(a, b);... parameter aktual float jumlah(float x, float y) return(x + y); Gambar 7.5 Paramater formal dan parameter aktual parameter formal 51

Pada pernyataan : x = jumlah(a, b); y = jumlah(20.1, 45.6); a dan b merupakan parameter aktual dari fungsi jumlah() dalam hal ini parameter berupa variabel. Demikian juga 20.1 dan 45.6 adalah parameter aktual, dalam hal ini berupa konstanta. Bahkan bisa juga parameter aktual berupa ungkapan yang melibatkan operator, misalnya : printf("%g\n", jumlah(2+3, 3+6)); ungkapan C. PERCOBAAN 1. a. Buatlah sebuah fungsi untuk menghitung jumlah triangular n (misal nama fungsinya = triangular). Fungsi tersebut memiliki sebuah parameter berupa bilangan int (n) yang akan dicari triangularnya serta tidak memiliki nilai kembalian (return value) b. Tulislah prototipe fungsi untuk fungsi tersebut. c. Buat function main untuk memanggil function triangular() tersebut dengan nilai n yang merupakan input dari user. 2. a. Buatlah sebuah fungsi untuk menghitung nilai bilangan kuadrat (misal nama fungsinya = kuadrat). Fungsi tersebut memiliki sebuah parameter bertipe float, yaitu bilangan yang akan dikuadratkan serta memiliki sebuah return value bertipe float, yaitu hasil kuadratnya b. Tulislah prototipe fungsi untuk fungsi tersebut. c. Buat function main untuk memanggil function kuadrat() tersebut dengan bilangan x yang akan dicari kuadratnya merupakan input dari user. 3. a. Definisikan sebuah fungsi radian() yang berfungsi untuk mengkonversi besaran sudut dari derajat ke radian dengan rumus sbb : rad = drjt / 180.0f * PI. 52

Fungsi tersebut memiliki sebuah parameter yaitu derajat yang akan dikonversi, dan memiliki sebuah return value berupa hasil konversi dalam radian. b. Tulislah prototipe fungsi untuk fungsi tersebut. c. Buat function main untuk memanggil function radian(), setelah sebelumnya meminta masukan nilai derajat yang akan dikonversi. d. Definisikan PI sebagai sebuah konstanta yang bernilai : 3.14159f D. TUGAS 1. Apa hasil eksekusi dari program berikut : #include <stdio.h> void ubah(int); main() int x; printf("masukkan nilai x : "); scanf("%d", &x); ubah(x); printf("x = %d\n", x); void ubah(int y) y = 85; 2. a. Definisikan sebuah fungsi float konversi(suhu, asal, tuj), untuk mengkonversikan suhu dari Celsius ke Fahrenheit, Celsius ke Reamur, Fahrenheit ke Celsius, Fahrenheit ke Reamur, Reamur ke Celsius, dan Reamur ke Fahrenheit. Dimana suhu adalah suhu sumber, asal adalah satuan awal suhu yang akan dikonversi dan tuj adalah satuan hasil konversi b. Tulislah prototipe fungsi untuk fungsi tersebut. c. Buat function main() untuk memanggil function konversi(), setelah sebelumnya meminta masukan nilai suhu, satuan asal dan satuan tujuannya. Contoh tampilan: Masukkan suhu sumber = 100 Masukkan satuan asal = C Masukkan satuan tujuan = R Hasil konversi suhu 100 C = 80 R 53