Pemrograman Kompetitif
  • Menu utama
    • Selamat Datang
  • Umum
    • Pengenalan Pemrograman
    • Pengenalan Pemrograman Kompetitif
    • Pengenalan Kontes
    • Sumber Belajar
    • Pengenalan C++
  • Pemrograman Dasar
    • Struktur Program
    • Variabel dan Tipe Data
    • Masukan dan Pengeluaran
    • Operator
    • Percabangan
    • Perulangan
      • While Loop
      • For Loop
        • Nested For Loop
        • Ranged-based for loop
      • Break dan Continue
    • Array
    • Pendalaman String
    • Fungsi
    • Rekursi
    • Analisis Kompleksitas
  • Struktur Data
    • Struktur Data Linear
      • Array Dinamis
      • Stack dan Queue
      • Struktur Set
      • Struktur Map
    • Struktur Data Non-Linear
      • Disjoint Set Union
      • Binary Heap
      • Hash Table
      • Segment Tree
  • Pencarian dan Pengurutan
    • Algoritma Pengurutan
      • Bubble Sort
      • Selection Sort
      • Insertion Sort
      • Counting Sort
      • Merge Sort
      • Bogosort
    • Algoritma Pencarian
      • Linear Search
      • Binary Search
  • Paradigma Penyelesaian Masalah
    • Complete Search
      • Complete Search Iteratif
      • Complete Search Rekursif
    • Divide and Conquer
    • Greedy
    • Dynamic Programming
  • Graf
    • Representasi Graf
      • Adjacency list
      • Adjacency matrix
      • Edge list
    • Penjelajahan Graf
      • DFS (Depth-first search)
      • BFS (Breadth-first search)
    • Tree
  • Matematika
  • Geometri
  • Teori Bilangan
  • Kombinatorika
  • Tentang
    • Tentang Website Ini
    • Tim Kami
Powered by GitBook
On this page
  1. Pemrograman Dasar

Fungsi

Penulis: Sayed

PreviousPendalaman StringNextRekursi

Last updated 2 years ago

Seperti dikatakan pada bab , int main() adalah suatu fungsi, tetapi apa itu suatu fungsi? Sederhananya, fungsi adalah suatu kumpulan code yang akan dieksekusi apabila dipanggil dan secara bersama akan mengerjakan suatu tugas tertentu. Tujuan utama suatu fungsi adalah untuk merapikan program. Fungsi dapat mengambil sesuatu yang disebut dengan parameter atau argumen. Kita dapat memberikan informasi kepada suatu fungsi dan fungsi akan memproses informasi yang telah kita berikan, dan pada fungsi jenis tertentu, memberikan Anda hasil prosesnya. Seperti jika Anda membuat suatu fungsi yang dapat menjumlahkan dua buah bilangan x dan y, dan setelah fungsi memprosesnya, fungsi akan mengembalikan kepada Anda bilangan x + y. Fungsi juga dapat digunakan berkali-kali sehingga program menjadi lebih singkat seperti apabila Anda ingin menulis suatu perumusan Fisika, tentunya Anda tidak ingin menuliskannya berkali-kali pada program, Anda dapat menuliskannya sekali pada suatu fungsi dan apabila dibutuhkan Anda dapat memanggilnya.

Sebelum Anda mendeklarasikan suatu fungsi, Anda harus menentukan jenis dari fungsi, terdapat empat buah jenis fungsi yang ditulis di bawah. Untuk mendeklarasikan suatu fungsi Anda ingin menuliskan tipe data yang akan dikembalikan oleh fungsi (atau menulis void apabila fungsi tidak mengebalikan apapun) lalu namanya disertai dengan parameternya yang ditulis di dalam tanda kurung (atau mengosongkan tanda kurung apabila fungsi tidak mengambil argumen). Fungsi biasanya dideklarasikan secara global.

Di bawah ini merupakan contoh dari fungsi menurut jenisnya

Tidak mengambil argumen dan tidak mengebalikan nilai

Sebagai contoh kita dapat menuliskan fungsi dengan kasus uji menjadi lebih rapi seperti program berikut:

#include <iostream>
using namespace std;

void solved(){
    //Code Anda di sini
}

int main(){
    int t;
    cin >> t;
    while(t--){
         solved();
    }
}

Tidak mengambil argumen tetapi mengebalikan nilai

Sebagai contoh kita dapat menuliskan fungsi yang mengebalikan jumlah dari bilangan pada interval 1 hingga 10.

#include <iostream>
using namespace std;

int fungsi(){
  ret = 0;
  for(int i = 1; i <= 10; ++i){
       ret += i;
  } 
  return ret;
}

int main(){
    cout << fungsi();
}

Mengambil argumen dan tidak mengebalikan nilai

Sebagai contoh kita dapat membuat fungsi yang dapat mengeluarkan 10 buah '*' dengan menuliskan code seperti di bawah ini:

#include <iostream>
using namespace std;

void cetak(int n){
  for(int i = 1; i <= n; ++i){
    cout << '*';
  }
}

int main(){
    int x = 10;
    cetak(x);
}

Mengambil argumen dan mengebalikan nilai

Sebagai contoh kita dapat membuat fungsi yang dapat menjumlahkan dua buah bilangan dan mengembalikan jumlahnya.

#include <iostream>
using namespace std;

int cetak(int x, int y){
  return (x + y);
}

int main(){
    int a = 5;
    int b = 12;
    cout << cetak(a, b);
}

Fungsi Bawaan

Pada C++, terdapat juga fungsi bawaan yang mana kita tidak perlu lagi menuliskannya sendiri. Beberapa fungsi bawaan mengharuskan kita untuk men-include library yang terpisah dari iostream. Di bawah ini adalah fungsi bawaan yang umum dipakai

Nama Fungsi
Fungsi
Library

pow()

Mengembalikan hasil pangkat sebuah bilangan dengan bilangan yang lain.

cmath

sqrt()

Mengembalikan akar dua suatu bilangan

cmath

min()

Mengembalikan bilangan terkecil di antara dua buah bilangan

algorithm

max()

Mengembalikan bilangan terbesar di antara dua buah bilangan

algorithm

floor()

Mengambalikan nilai bilangan bulat kebawah dari suatu bilangan berkoma

cmath

ceil()

Mengambalikan nilai bilangan bulat kebawah dari suatu bilangan berkoma

cmath

gcd()

Mengembalikan Faktor Persekutuan Terkecil (FPB) dan suatu bilangan.

numeric

Dan lain sebagainya.

Struktur Program