Assalamualaikum Wr Wb

Kembali dengan saya gaiss. Aloo gaess Alif disini. Apa kabar kalian hari ini? Semoga yang terbaik selalu bersama kita semua :). Kita ketemu lagi kali ini untuk membahas materi selanjutnya dari pemrograman dengan bahasa C. Materi ini tentang “Mengembangkan fungsi-fungsi sendiri pada pemrograman.

Tujuan pembelajaran ini sendiri ialah untuk mempelajari pembuatan fungsi-fungsi diluar fungsi-fungsi yang ada

Suatu fungsi dapat digunakan sebagai fungsi itu sendiri, subrutin dan prosedur seperti istilah yang digunakan pada bahasa pemrograman BASIC atau PASCAL.

Tujuan digunakannya fungsi untuk mencegah penggunaan program secara berulang-ulang, sehingga program menjadi sangat panjang. Pada percobaan perobaan di atas telah digunakan fungsi-fungsi dari C, seperti printf(), clrscr(), scanf(), getch(), puts(), for() dan sebagainya, maka disini dicoba untuk membuat fungsi baru dimana tidak ada dalam pustaka bahasa C (Turbo C).

Untuk dapat memahami lebih jauh lagi .. Ayo kita memcoba membuat suatu program untuk algoritma sesuatu hal atau permasalahan.

Pertama, Membuat program fungsi kabisat() yang akan memberikan nilai balik 1 bila tahun adalah kabisat, dan 0 bila tahun bukan kabisat. 

#include<stdio.h>
/*Fungsi kabisat*/
int kabisat(int tahun)
{int x;
x=tahun%4;
if(x!=0){return(0);}
else {return(1);}

}
void main()
{int tahun,z;char c;
printf(“Menentukan Tahun Kabisat\nMasukan tahun = “);
scanf(“%d”,&tahun);
z=kabisat(tahun);
if(z==0)
{printf(“Tahun %d adalah bukan tahun kabisat”,tahun);}
else {printf(“Tahun %d adalah tahun kabisat”,tahun);}
getch();

}

Berikut Hasil Program

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Kedua, Membuat program untuk menentukan Fungsi Faktorial  untuk menghitung nilai factorial dari suatu bilangan 

#include<stdio.h>
/*Fungsi faktorial*/
int nilai;
long int faktorial(nilai)
{register int i;
int fak=1;
for(i=1;i<=nilai;i++)
fak*=i;
return(fak);
}
main()
{char c;
printf(“Masukan nilai a yang difaktorialkan = “);
scanf(“%d”,&nilai);
printf(“Faktorial dari %d = %d\n”,nilai,faktorial(nilai));
getch();
}

Berikut Hasil Percobaan 

  • Facebook
  • Twitter
  • Google+
  • Pinterest
]

Ketiga, Membuat program suatu fungsi permutasi () dan kompinasi () untuk menghitung permutasi dan kombinasi dari suatu pasangan bilangan

#include<stdio.h>
#include<math.h>

float fak,p;
/*Fungsi faktorial*/
float faktorial(float z)
{
register int i;
float fak=1.0;
for(i=1;i<=z;i++)
fak*=i;
return(fak);
}
/*fungsi permutasi*/
float permutasi(float n,float r)
{
p=(faktorial(n)/faktorial(n-r));
return(p);
}
/*fungsi kombinasi*/
float kombinasi(float n,float r)
{
p= (faktorial(n)/(faktorial(n-r)*faktorial(r)));
return(p);
}
float main()
{float n,r;
char c;
printf(“Menyelesaikan permutasi dan kombinasi (n,r)”);
printf(“\nMasukan Nilai n = “);scanf(“%f”,&n);
printf(“\nMasukan nilai r = “);scanf(“%f”,&r);
if(n<r){printf(“Gagal karena nilai n<r”);goto gagal;}
printf(“Ketik k untuk kombinasi dan p untuk permutasi = “);
getchar();
scanf(“%c”,&c);
if(c==’k’||c==’K’) {
printf(“\nMaka nilai kombinasi dari %g dan %g adalah %g”,n,r,kombinasi(n,r));}
else if(c==’p’||c==’p’){ printf(“\nMaka nilai permutasi dari %g dan %g adalah %g”,n,r,permutasi(n,r));}
else{printf(“operator salah”);}
gagal:
getch();
}

Selanjutnya Build and Run dan berikut Hasil Percobaan

a) Permutasi

  • Facebook
  • Twitter
  • Google+
  • Pinterest

b) Kombinasi 

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Keempat, Membuat program fungsi float suhu (s, d), untuk mengkonversikan suhu dari Celcius ke Fahrenheit, Celcius ke Reamur, Fahrenheit ke Celcius, Fahrenheit ke Reamur, Reamur ke Celcius, dan Reamur ke Fahrenheit

#include<stdio.h>
#include<math.h>
float input, sumber,x,hasil,z=1.0;
char c,d,p;
/*fungsi awal*/
float awal(float input,char c){
if (c==’r’||c==’R’){(sumber=input/4);}
else if (c==’k’||c==’K’){(sumber=(input-273)/5);}
else if (c==’f’||c==’F’){(sumber=(input-32)/9);}
else if (c==’c’||c==’C’){(sumber=input/5);}
else {z=0.0;}
printf(“%g”,sumber);
return (sumber) ;}
/*fungsi akhir*/
float akhir(float input,char d){
if (d==’r’||d==’R’) {hasil= awal(input,c)*4;}
else if (d==’k’||d==’K’){hasil= awal(input,c)*5+273;}
else if (d==’f’||d==’F’){hasil= awal(input,c)*9+32;}
else if (d==’c’||d==’C’){hasil= awal(input,c)*5;}
else {z=0.0;}
return (hasil);}
float main(){
mulai:
printf(“Masukan suhu sumber = “);
scanf(“%f %c”,&input,&c);
printf(“Masukan suhu tujuan = “);
getchar(); scanf(“%c”,&d);
x=akhir(input,d);
if(z==1){printf (“Hasil konversi suhu = %g”,x);}
else {printf(“Operator salah”);}
printf(“\nulangi ??? (y/n)\n”);
getchar();scanf(“%c”,&p);
if (p==’y’||p==’Y’){goto mulai;}
getch();
}

Berikut Hasil Programnya

  • Facebook
  • Twitter
  • Google+
  • Pinterest

5.  Membuat program fungsi prima ()

#include<stdio.h>
#include<math.h>
int input,x,z=2,hasil=1;
int prima(int input)
{while(hasil!=0&&z<input)
{hasil=input%z;z++;}
if (hasil==0){return(0);}
else return(1);}

int main()
{char c;
printf(“Masukan bilangan bulat = “);
scanf(“%d”,&input);
x=prima(input);
if(x==1) {printf(“bilangan %d termasuk bilangan prima”,input);}
else {printf(“bilangan %d bukan termasuk bilangan prima”,input);}
getch();

}

Hasil Setelah Build and Run

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Keenam,  Membuat program menggunakan dua variable. Satu bertipe register dan lainnya bertipe interger

#include <stdio.h>
#include <time.h>
int main(){
int x=0;
clock_t t;
mulai:
t = clock();
if (x==0){integerwaktu();} else{registerwaktu();}
t = clock() – t;
double waktuyangdibutuhkan = ((double)t)/CLOCKS_PER_SEC;
if (x==0){printf(” integer membutuhkan %g detik untuk eksekusi \n”, waktuyangdibutuhkan);}
else{printf(” register %g detik untuk eksekusi \n”, waktuyangdibutuhkan);}
if(x==0){x++;goto mulai;}
getch();
}
void registerwaktu()
{
register z;
for(z=1;z<=2000;z++)
printf(“a”);
}
void integerwaktu()
{
int c;
for(c=1;c<=2000;c++)
printf(“a”);
}

Lalu, Ketik build and run. Hasil Program yang muncul sebagai berikut 

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Itulah beberapa contoh pemrograman tentang mengembangkan fungsi – fungsi sendiri. Semoga kalian dapat memahaminya dengan baik daan dapat mempraktekkan untuk membuat program sendiri.

Okee sekian cukup sampai sini untuk materi kali ini. Semoga bermanfaat sampai ketemu lagi dilain waktu.

Apabila ada salah saya pribadi, mohon maaf sebesarnya besarnya.

Wassalamualaikum Wr Wb.