Assalamualaikum Wr.Wb

Hallo sahabat nusantara kembali lagi bersama saya Zidni mahasiswa “Politeknik Elektronika Negeri Surabaya”.Bagaimana kabar kalian hari ini semoga selalu diberi kesehatan serta kelancaran dalam kegiatan yang kalian lakukan.Amiinn.Dalam minggu minggu ini banyak yang sedang menjalani UTS sama seperti yang saya lakukan pada minggu ini tetapi tetap dong saya akan memberi sedikit ilmu pada sahabat sahabat nusantara yang selalu saya lakukan dalam setiap minggu.Seperti biasanya kita akan mebahas siapa lagi kalau bukan Pemrgraman Bahasa C.

Pada percobaan ini saya akan membahas tentang “Mengembangkan Fungsi Fungsi Sendiri.Dalam percobaan kali ini kita akan mempelajari fungsi diluar fungsi yang ada serta penggunaan variabel global,local,eksternal,otomatis,statis,register.Sebelum masuk pada suatu percobaan saya akan memberi sedikit dasar teori dari percobaan ini.

Suatu Fungsi merupakan bagian program yang terpisah dari fungsi program utamanya yaitu main().Suatu Fungsi dapat digunakan sebagai fungsi itu sendiri.,subrutin dan fungsi.Tujuannya adalah mencegah penggunaan program secara berulang ulang sehingga program menjadi panjang.Disini akan menggunakan fungsi baru yaitu Turbo C.Bila suatu fungsi diletakkan diatas fungsi main() maka tidak diperlukan deklarasi fungsi lagi.Mari kita masuk pada suatu percobaan dimana percobaan merupakan suatu tugas dari mata kuliah saya.

 

TUGAS 6.5.1

Pada tugas ini kita akan membuat sebuah fungsi kabisat dimana akan memberikan nilai balik 1 bila tahun kabisat, dan 0 bila bukan tahun kabisat.Dalam percobaan ini seperti yang dijelaskan tadi kita menggunakan fungsi lain yaitu diatas main.Jika dalam hasil perhitungan tersebut benar maka akan menghasilkan nilai 1 jika dalam kata lain maka akan bernilai 0 berarti dalam perhitungan tersebut tidak sesuai dengan suatu perhitungan.Kita kan menjalankan suatu pemrograman seperti dibawah ini.Dan kita akan menjalankan suatu hasil dari pemrograman tersebut.

#include <stdio.h>

Kabisat ( int z)

{

    if ( (z % 100 == 0 && z % 400 == 0) || (z % 100 != 0 && z % 4 == 0) )

        return 1;

    else

        return 0;

}

main()

{

    int z;

    printf(“Tahun Kabisat\n”);

    printf(“Jika Bernilai : 1 adalah Tahun Kabisat\n”);

    printf(“Jika Bernilai : 0 adalah Bukan Tahun Kabisat\n”);

    printf(“\nMasukkan Tahun : “);

    scanf(“%d”, &z);

    printf(“Nilai = %d\n”, Kabisat(z));

}

  • Facebook
  • Twitter
  • Google+
  • Pinterest

  • Facebook
  • Twitter
  • Google+
  • Pinterest

 

TUGAS 6.5.2

Pada percobaan kali ini kita membuat sebuah fungsi faktorial biasanya disimbolkan dengan (!) .Dalam nilai faktorial menggunakan long.Dalam fak torial kita akan mengalikan sebuah angka sesuai angka tersebut dengan turun kebawah.Misal 3 ! maka 3x2x1 dan akan didapat suatu hasil 6.Dalam praktikum ini kita akan menggunakan sebuah fungsi diatas main sesuai dengan dasar teori diatas tadi.Kita akan masuk pada suatu pemrograman dan dibawahnya adalah hasil dari run sebuah program.

#include <stdio.h>

factorial (int z)

{

    int y, jumlah = 1;

    for(y=1;y<=z;y++)

        jumlah = jumlah * y;

    return (jumlah);

}

main()

{

    int z;

    printf(“Fungsi Faktorial\n”);

    printf(“\nMasukkan Bilangan Faktorial : “);

    scanf(“%d”,&z);

    printf(“Nilai %d! adalah %d\n”, z,factorial(z));

}

  • Facebook
  • Twitter
  • Google+
  • Pinterest

TUGAS 6.5.3

Pada percobaan yang ketiga ini yaitu menghitung kombinasi dan permutasi dengan suatu rumus yaitu P(n.r)=  dan C(n.r)=..Kita selalu menggunakan sebuah fungsi diatas main().Dalam percobaan ini kita misalkan angjka y dan z dan kita akan menggunakan huruf lain dalam suatu rumus dimana terdapat dua yaitu permutasi dan kombinasi.Setelah itu kita akan memasukkan jadi satu dalam sebuah printf dan misalkan y dan z dan akan kita masukkan sebuah nilai dan kita akan menemukan suatu hasil.Seperti dibawah ini adalah sebuah programnya dan dibawahnya lagi merupakan sebuah hasil dari jalannya program.

#include <stdio.h>

Permutasi (int y, int z)

{

    int v, w, jumlah1 = 1, jumlah2 = 1, hasil;

    for (v = 1; v <= y; v++)

        jumlah1 *= v;

    for (w = 1; w <= (y-z); w++)

        jumlah2 *= w;

    hasil = jumlah1 / jumlah2;

    return(hasil);

}

Kombinasi (int y, int z)

{

    int t, jumlah3 = 1, hasil;

    for (t = 1; t <= z; t++)

        jumlah3 *= t;

    hasil = Permutasi(y,z) / jumlah3;

    return (hasil);

}

int y, z;

main()

{

printf(“Fungsi permutasi dan kombinasi\n”);

printf(“Masukkan nilai y = “);

scanf(“%d”, &y);

printf(“Masukkan nilai z = “);

scanf(“%d”, &z);

printf(“\nNilai dari Permutasi (%d,%d) adalah %d”, y, z, Permutasi(y,z));

printf(“\nNilai dari Kombinasi (%d,%d) adalah %d”, y, z, Kombinasi(y,z));

}

  • Facebook
  • Twitter
  • Google+
  • Pinterest

TUGAS 6.5.4

Pada tugas keempat ini seperti yang kita lakukan kemarin yaitu membuat fungsi float suhu untuk mengkonversikan dari Celsius ke Farenheit ,Celsius ke Reamur,Farenheit ke Celcius.Farenheit ke Reamur,Reamur ke Celsius,Reamur ke Farenheit.Dimana suatu S adalah suhu sumber d adalah suhu konversi dan suhu() adalah hasil konversi suhu.Pada kali ini masih sama menggunakan sebuah fungsi diatas main dan kita masukkan rumus terlebih dahulu untuk menentukan suatu kebenarannya dari suatu data setelah diketahui dari masing masing suatu suhu x ke suatu suhu y maka kita akan masukkan sebuah tampilan seperti pada suatu keterangan yaitu jika masukkan suatu suhu sumber = 100C dengan suhu tujuan R maka hasil konversi adalah 80 R.Kita akan memasuki pada suatu program meskipun dalam program ini semakin rumit dari sebelumya.Dan setelah itu akan muncul sebuah hasil setelah di run.

#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(“Masukkan Suhu Sumber = “);

    scanf(“%f %c”,&input,&c);

    printf(“Masukkan Suhu Tujuan = “);

    getchar(); scanf(“%c”,&d);

    x = akhir(input,d);

    if(z==1){printf(“Hasil Konversi Suhu = %g”,x);}

    else {printf(“Operator  salah”);}

    getchar();scanf(“%c”,&p);

    if (p==’y’||p==’Y’){goto mulai;}

getch();

}

  • Facebook
  • Twitter
  • Google+
  • Pinterest

TUGAS 6.5.5

Pada percobaan kelima kita akan menentukan sebuah bilanagan apakah bilangan tersebut masuk dalam sebuah bilangan prima atau tidak.Dengan cara kita akan menggunakan sebuah nilai 1 adalah prima dan 0 adalah buka prima.Pada percobaan kita kali ini kita menggunakan sebuah if else untuk sebuah rumus agar dapat kebaca jika hasil dari rumus adalah benar maka nilai tersebut adalah prima jika lain bilangan tersebut bukan prima.Berikut merupakan sebuah susunan program dan dibawahnya merupakan sebuah hasil yang telah dijalankan.

#include <stdio.h>

prima (int bil)

{

    int z, faktor = 0;

    for (z=1;z<=bil;z++)

        if (bil%z==0)

        faktor++;

    if (faktor==2)

        return 1;

    else

        return 0;

}

main()

{

    int bil;

    printf(“Fungsi Prima\n”);

    printf(“Hasil=1 adalah Bilangan prima\n”);

    printf(“Hasil=0 adalah Bukan Bilangan Prima\n\n”);

    printf(“Masukkan Bilangan : “);

    scanf(“%d”,&bil);

    printf(“Hasil = %d\n”,prima(bil));

}

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Dari percobaan pertama sampai kelima tersebut merupakan sebuah contoh dari “Mengembangkan Fungsi Fungsi Sendiri” yang dapat saya bagikan dalam artikel kali ini.Jika masih banyak sebuah kekurangan kesalahan tulisan maupun sebuah program dan lainnya mohon koreksinya teman teman.Dengan sebuah kritik dan saran akan membangun saya lebih baiknya untuk kedepannya.Kita disini sama sama bertukar ilmu karena ilmu sangatlah penting.Sampaikanlah ilmu walaupun sedikit.Cukup sekian dari saya.

Wassalamualaikum Wr.Wb