Apa Itu Prosedur dan Fungsi Dalam Bahasa Pemrograman C

Tutorial Prosedur dan Fungsi dalam Bahasa C

Bagi mereka mahasiswa baru atau orang yang baru belajar bahasa pemrograman terutama saat ngontrak mata kuliah Algoritma dan Pemrograman 1 biasanya dibingungkan dengan definisi, perbedaan, hingga apa manfaat dari prosedur dan fungsi. Untuk menghindari kebingungan terebut kali ini prilude akan mengupas sedikit tentang apa itu prosedur dan fungsi.

Penjelasan Singkat Prosedur dan Fungsi

Dalam membuat suatu program ada kalanya kita memerlukan bagian program yang terpisah. Bagian program tersebut disimpan secara terpisah atau istilah kerennya adalah modular dengan tujuan agar bisa digunakan pada blok perintah lainnya Dengan menggunaan blok program yang terpisah maka kita bisa menghemat waktu untuk melakukan pemrograman.

Baca Juga : Tutorial Membuat Aplikasi Kalkulator dengan C

Penghematan waktu bisa terjadi karena kita bisa menggunakan satu perintah logic untuk berbagai permasalahan yang sifatnya berulang. Contoh, misal kita ingin membuat aplikasi yang berguna untuk menghitung harga barang. Perhitungan harga barang bisa dibuat pada modul terpisah, sehingga dia bisa dimanfaatkan oleh banyak bagian. Lantas bagian apa saja yang perlu melakukan perhitungan barang, misalnya adalah bagian untuk keranjang belanja, hingga bagian untuk checkout. Keranjang belanja dan checkout, bisa sajah terpisah secara program namun logika untuk perhitungannya adalah sama yaitu sama-sama jumlah barang dikali harga jual (harga_jual*qty).

Masih bingung? Mari kita kembali perhatikan contoh sebelumnya tentang perhitungan harga barang. Setiap Anda belanja online, pasti Anda sudah tidak asing lagi dengen keranjang belanja yang bentuknya kurang lebih seperti ini.

No Kode Nama Barang Harga Qty Sub Total
1 K001 Modem 4G Smartfren Rp 300.000 1 Rp 300.000
2 K022 Flash Disk Sandisk 32GB Rp 100.000 1 Rp 100.000

Pada contoh diatas saya sengaja tidak menambahkan total pembayaran sebagaimana layaknya di toko online, karena saya ingin Anda fokus pada bagian yang saya tandai warna merah dan biru.

Lihat, kita bisa perhatikan bahwa keduanya melakukan proses yang sama, yaitu sama-sama berguna untuk menampilkan kode barang, harga, kuantiti, dan pada akhirnya adalah menghitung sub total. Bayangkan, ini hanya sedikit transaksi yang terjadi (hanya 2 buah), lalu bagaimana jika transaksi tersebut terjadi ribuan kali? Apakah kita akan membuat kode program untuk tiap transaksi masing-masing satu? Tentu tidak. Langkah yang paling efisien adalah kita membuat fungsi yang berguna untuk menghitung sub total, dan kemudian fungsi tersebut bisa dipanggil berkali-kali oleh kode program.

Saya harap, sampai titik ini Anda sudah paham maksud dan tujuan dari adanya fungsi dan prosedur. Jika sudah, paham mari kita lanjutkan ke pembahasan berikutnya.

Apa itu Prosedur dalam Pemrograman?

Dari judul modul ini saja sudah dijelaskan bahwa kita akan membahas antara prosedur dan fungsi. Kenapa pembahasan materi ini biasanya dilakuakan secara bersama-sama? Karena tidak bisa lepas bahwa Prosedur dan Fungsi memiliki kesamaan satu dan lainnya. Namun demikian, tetap saja ada perbedaannya.

Kelak anda akan dijelaskan tentang perbedaan dari keduanya, namun demikian mari kita pahami dulu definisi dari prosedur.

Prosedur adalah suatu program terpisah dalam blok sendiri yang berfungsi sebagai subprogram (program bagian). Prosedur biasanya bersifat suatu aktifitas seperti meghitung luas segitiga, mencari bilangan genap dari sekumpulan bilangan, menghitung luas persegi dsb.

Programmer yang baik haruslah memahami dan terbiasa dengan prosedur. Karena hal tersebut bisa bermanfaat untuk:

  • Memecah program-program yang rumit menjadi program-program bagian yang lebih sederhana.
  • Untuk hal-hal yang sering dilakukan secara berulang, kita bisa menuliskannya hanya satu kali. Kemudian blok prosedur tersebut bisa kita ambil atau panggil sewaktu-waktu diperlukan.
  • Selain itu, pemisahan program dengan prosedur juga berguna agar kode program lebih mudah terbaca. Bagian ini memang jarang diperhatikan atau sering diabaikan oleh programmer pemula. Namun bagi mereka yang sudah expert dalam dunia programming pasti sangat memperhatikan betul masalah kemudahan dibaca suatu program.
  • Terakhir, prosedur juga dapat digunakan untuk menyembunyikan detail program. Jika dianalogikan secara sederhana, kita sehari-hari biasa tahu cara menggunakan rice cooker untuk memasak nasi, namun kita tidak perlu tahu bagaiamana cara kerja dari rice cooker tersebut secara teknis. Adakalahnya dalam program juga demikian. Kita bisa saja memanfaatkan prosedur yang sudah dibuat oleh orang lain tanpa perlu memahami bagaiamana logika didalamnya.

Agar pemahaman Anda lebih baik tentang apa itu prosedur, silakan coba kode program ini. Anda dapat mencoba kode program ini pada IDE Codeblock atau yang lainnya.

#include <stdio.h>
#include <stdlib.h>

int main()
{
        int a=3;
        int b=4;

        hitung(a,b);
}

void hitung(int a,int b)
{
    int jumlah;
    jumlah=a+b;
    printf("Jumlah adalah= %d",jumlah);
}

Perhatikan pada baris program tersebut. Alih-alih kita menggunakan proses perhitungan penjumlahan secara langsung, kita malah membuat sub program baru dengan nama hitung.

Sub program hitung diawali dengan penulisan void kemudian nama prosedur dan perlu diisi juga oleh parameter masukannya apa. Oh iya, untuk parameter Anda bisa mengosongkannya sebetulnya. Jadi struktur dari penulisan prosedur adalah seperti ini:

Stuktur Prosedur

void nama_prosedur (parameter1,parameter,2…,parameter n)
{
        //Ini isi dari prosedur
}

Apa Itu Fungsi Dalam Pemrograman C?

Jika sebelumnya kita telah panjang lebar membahas tentang Prosedur, lantas apa itu fungsi? Fungsi sejatinya sama saja dengan prosedur yaitu pemisahakan kode program menjadi modul-modul terpisah. Namun demikian tetap ada bedanya. Beda dari fungsi adalah dia harus mengembalikan nilai sesuai dengan tipe data pada saat mendeklarasikannya.

Biar Anda tidak bingung, mari lihat struktur penulisan dari sebuah fungsi

Sturktur Fungsi

tipe_data nama_fungsi (parameter1,parameter2,…parameterN)
{
      //Isi dari logika fungsi
      return nilai_kembalian
}

Lihat bagian tipe_data, dan return nilai_kembalian. Bagian tersebut menandakan perbedaan antara prosedur dan fungsi. Sebelum melangkah lebih jauh, silakan Anda lihat kembali stuktur prosedur dan bandingkan dengan struktur fungsi. Bagaiaman sudah terlihat bedanya bukan? Ya, pada prosedur itu tidak ada nilai yang perlu di return, sedangkan pada fungsi ada nilai yang perlu di return.

Jika Anda masih belum benar-benar faham tentang fungsi, coba deh ikuti contoh program berikut ini.

#include <stdio.h>
#include <stdlib.h>

int main()
{
        int a=3;
        int b=4;
        int jumlah;
        jumlah=hitung(a,b);
        printf("Jumlah : %d",jumlah);
        getch();
}

int hitung(int a,int b)
{
    int jumlah;
    jumlah=a+b;
    return jumlah;
}

Lihat, pada fungsi hitung sekarang bukan diawali lagi oleh void, melainkan oleh int. Oh iya, untuk bagian ini anda bisa menggunakna tipe data apapun (int,char,float,dll.) sebagai tipe data kembaliannya. Hal yang terpeting adalah tipe datanya harus sama dengan tipe data nilai yang di return. Dalam contoh diatas kita bisa lihat bahwa tipe data dari fungsi hitung itu sama dengan tipe data dari return jumlah.

Untuk lebih memahami tentang fungsi, silakan coba kode program berikut ini:

#include <stdio.h>
#include <stdlib.h>

float segitiga(int alas,int tinggi);

int main()
{
    int alas;
    int tinggi;
    float luas;
    printf("--Program Penghitung Segitiga--\n");
    printf("Masukan Nilai Alas : ");
    scanf("%d",&alas);
    printf("\nMasukan Nilai Tinggi:");
    scanf("%d",&tinggi);

    luas=segitiga(alas,tinggi);
    printf("Luas Segitiga=%f",luas);
}

float segitiga(int alas,int tinggi)
{
    float luas;
    luas=(alas*tinggi)/2;
    return luas;
}

Demikian, penjelasan singkat dari prosedur dan fungsi yang ada di Bahasa Pemrograman C. Oh iya, tulisan ini bisa Anda unduh dalam bentuk PDF dari situs Program Studi Pendidikan Teknologi Informasi UMTAS. Melalui link berikut.

Berita Terbaru

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *