ASSALAMUALAIKUM SOBAT REDAKSI

Kembali lagi dengan saya Dery si manusia C 🙂
Pada kesempatan kali ini, saya akan melanjutkan pembahasan dari artikel yang sudah saya bahas sebelumnya. Pembahasan kali ini yaitu tentang MENGEMBANGKAN FUNGSI-FUNGSI SENDIRI.

Sebelum masuk pada pembahasan, Tujuan dari pembahasan kali ini yaitu mempelajari pembuatan fungsi-fungsi diluar fungsi-fungsi yang ada. Serta mempelajari penggunaan variabel global, local, eksternal, otomatis, statis, dan register.

FUNGSI? apasih fungsi itu?

Fungsi adalah sub-program yang bisa digunakan kembali baik di dalam program itu sendiri, maupun di program yang lain, atau gampang nya adalah bagian dari sebuah program yang bagian itu terpisah dari program utama dengan tujuan untuk melaksanakan tugas tertentu dalam bahasa c.

Bagian Fungsi

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

Nah, setelah mengetahui tentang FUNGSI kali ini mari mencoba membuat sebuah program dengan memberikan FUNGSI.

  1. Membuat Fungsi penentu tahun kabisat
    Ketiklah Program dibawah ini :

    #include<stdio.h>

    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();

    }

    Coba Jalankan programnya, maka outputnya akan terlihat seperti gambar dibawah

    • Facebook
    • Twitter
    • Google+
    • Pinterest
  2. Membuat Fungsi bilangan Faktorial
    Ketiklah Program dibawah ini :

    #include<stdio.h>

    int nilai;

    long int faktorial(nilai) {
    register int i;

    int faktorial=1;

    for(i=1;i<=nilai;i++)
    faktorial*=i;

    return(faktorial);
    }

    main()
    {
    char c;

    printf(“Masukan nilai x yang difaktorialkan = “);
    scanf(“%d”,&nilai);

    printf(“Faktorial dari %d = %d\n”,nilai,faktorial(nilai));
    getch();
    }

    Coba Jalankan programnya, maka outputnya akan terlihat seperti gambar dibawah

    • Facebook
    • Twitter
    • Google+
    • Pinterest
  3. Membuat fungsi Kombinasi dan Permutasi
    Ketiklah Program dibawah ini :

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

    float fak,p;

    float faktorial(float z)
    {
    register int i;

    float fak=1.0;
    for(i=1;i<=z;i++)
    fak*=i;
    return(fak);
    }

    float permutasi(float n,float r)
    {
    p=(faktorial(n)/faktorial(n-r));
    return(p);
    }

    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();
    }

    Coba Jalankan programnya, maka outputnya akan terlihat seperti gambar dibawah

    • Facebook
    • Twitter
    • Google+
    • Pinterest
  4. Membuat fungsi Konversi Suhu
    Ketiklah Program dibawah ini :

    #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();
    }

    Coba Jalankan programnya, maka outputnya akan terlihat seperti gambar dibawah

    • Facebook
    • Twitter
    • Google+
    • Pinterest
  5. Membuat fungsi bilangan Prima
    Ketiklah Program dibawah ini :

    #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 termasuk bukan bilangan prima”,input);
    }

    getch();
    }

    Coba Jalankan programnya, maka outputnya akan terlihat seperti gambar dibawah

    • Facebook
    • Twitter
    • Google+
    • Pinterest

Nah, Bagaimana sobat redaksi. Belajar bahasa C itu tidak mudah, namun menyenangkan.
Sekian dari saya, sampai jumpa di pembahasan selanjutnya 🙂

Wassalamualaikum Wr. Wb