Skip to main content

Function dan Recursion dalam Programming C (Part 1)

Function dan Recursion dalam Programming C

Apa itu Function? Mengapa saya harus peduli?

Function diartikan sebagai fungsi untuk memanggil suatu proses-proses yang disatukan dalam satu fungsi, untuk memudahkan pembacaan program dan tidak perlu memanggil fungsi yang sama berkali-kali.

CONTOH:

Tanpa Fungsi
==========
int main (){
int a,b,c,d;
int sum;
int sum1, sum2;
sum = a + b;
printf("%d", sum);
sum1 = a + b;
sum2 = c + d;
sum = sum1 + sum2;
}

Fungsi
=====
int sum(int a, int b)
{
sum = a + b;
return sum;
}

int main(){
int a,b,c,d;
int sum, sum1, sum2;
sum = sum(a,b);
printf("%d",sum);
sum1 = sum(a,b);
sum2 = sum(c,d);
sum = sum(sum1,sum2);
}

Dengan adanya fungsi, maka anda dapat lebih mudah memanggil suatu fungsi tertentu dalam program.
Function dari suatu fungsi dapat dibagi menjadi 2, yaitu:
1. Normal Function Type
 Value yang dikembalikan oleh fungsi adalah tipe-tipe data dalam C, seperti int, char, float, dll. Khusus untuk void, fungsi TIDAK mengembalikan value apapun.
2. User-Defined Function Type
Value ditentukan berdasarkan apa yang dibuat oleh user, seperti dalam struct.


Akan lebih mudah memanggil fungsi menggunakan Pointer, seperti *array dibandingkan array[100].


Apa itu Recursion?
Bayangkan suatu loop while, tetapi kali ini loopnya itu adalah loop function. Rekursi adalah itu.

Rekursi diartikan sebagai fungsi yang memanggil dirinya sendiri, hingga mencapai basecase (keluar dari rekursi).

INGAT Untuk SELALU Mengadakan Base Case, karena jika tidak ada akan terjadi INFINITE LOOP!

Contoh Rekursi:

void print(int a){
 if(a == 0) return;

printf("Hi!");
a--;
print(a);
}

int main (){
int a = 10;
print(a);
}

Program diatas akan memprint Hi sebanyak 10 kali.

Anda dapat menggabungkan Rekursi dengan Rekursi untuk menghasilkan suatu pattern yang indah maupun yang unik.
Lanjutan dari topik ini akan dibahas di Part 2.

Comments

Popular posts from this blog

Selection dalam C Programming

Topik ini akan dibahas dan dapat dibaca kurang dari 3 menit. Apa itu Selection? Bayangkan anda diminta untuk memilih es krim, tetapi kamu melihat uang didalam dompetmu hanya cukup untuk es krim tertentu. Itulah selection. Selection dalam C programming diartikan sebagai pemilihan kondisi yang tepat, dengan variabel tertentu. Contoh: int main (){ int money = 1000; if(money < 500) { printf("Aku mau Es Krim Small aja"); } else { printf("Yang Besar aja deh"); } // akan keluar yang besar aja deh } Selection dibagi menjadi 3 dalam C : 1. Simple If-Else : Jika hanya terdapat satu kondisi, jika tidak terpenuhi, maka jalankan yang else 2. Nested If : Dalam If ada If lagi, digunakan untuk kondisi yang lebih detail, seperti jika uang diatas 500 dan dibawah 1000 3. Combined / Multiple If : If yang digabungkan dengan kondisi lainnya, dan lebih detail dibandingkan yang lainnya. Atau If multiple untuk tiap kondisi. Post ini telah distamp oleh: Nam...

Repetition dalam Programming (Bahasa C)

Pada Post kali ini, terdiri dalam rangkuman singkat mengenai Repetisi dalam Bahasa C. Jika anda ingin membaca rangkuman lebih Panjang, dapat mengakses post berikutnya setelah post ini. Apa itu Repetisi? Repetisi adalah Pengulangan suatu instruksi hingga suatu waktu tertentu. Ini sangat berguna untuk menghemat tempat, efisiensi, dan pengunaan memori. Dan biasa digunakan untuk suatu instruksi yang memang diperlukan berulang-ulang (seperti Menghitung Uang, Menghitung jumlah peserta, dan lain-lainnya) Repetisi dalam Bahasa C dapat dijalankan dengan 3 Operasi: 1. For 2. While 3. Do-While For : Repetisi dengan syntax for(Inisialisasi; Kondisi; Pertambahan/Pengurangan){Instruksi} For merupakan penggunaan instruksi repetisi yang paling umum dikarenakan fungsinya yang kuat untuk menjalankan suatu instruksi dengan penjelasan yang cukup rinci, tetapi fungsi ini juga dapat digantikan dengan While. For juga dapat memiliki Infinite Loop (ketika tidak ada instruksi untuk pertambahan/...