Assalamualaikum Wr. Wb.
Halo sobat kembali lagi nih entah yang keberapa kali di hari terakhir saya bersama teman-teman melaksanakan ujian tengah semerter, wah alhamdulillah semoga saja diberikan hasil yang terbaik ya sobat, AAMMIINN.. bersama saya Achmad Hanif yang akan menyajikan kalian materi yang keenam yaitu “Mengembangkan Fungsi-Fungsi Sendiri”.
Fungsi adalah bagian program yang terpisah dari fungsi program utama main() dan berdiri sendiri untuk melakukan proses tertentu. Lalu Tujuan digunakannya fungsi adalah untuk mencegah penggunaan program secara berulang, dimana program menjadi sangat panjang.
Langsung saja kita praktikkan seperti di bawah ini
- Membuat fungsi kabisat() yang akan memberikan nilai balik 1 bila tahun adalah kabisat, dan 0 bila tahun bukan kabisat
Program :
#include<stdio.h>
kabisat(int x)
{
if ((x%100==0 && x%400==0)||(x%100!=0 && x%4==0))
return 1;
else ;
return 0;
}
void main()
{
int x;
printf (“Fungsi kabisat\n”);
printf (“nilai=1 adalah tahun kabisat\n”);
printf (“nilai=0 bukan tahun kabisat\n\n”);
printf (“Masukkan tahun=”);
scanf (“%d”, &x);
printf (“nilai=%d\n”,kabisat(x));
getch();
}
Lalu Klik Build and Run, hasil :
2. Membuat Program fungsi factorial() untuk menghitung nilai factorial
Program :
#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 x yang difaktorialkan = “);
scanf(“%d”,&nilai);
printf(“Faktorial dari %d = %d\n”,nilai,faktorial(nilai));
getch();
}
Lalu Klik Build and Run, Hasil :
3. Membuat suatu fungsi permutasi () dan kombinasi () untuk menghitung permutasi dan kombinasi dari suatu pasangan bilangan
Program :
#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();
}
Lalu Klik Build and Run, Hasil :
4. Membuat 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
Program :
#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();
}
Lalu Klik Build and Run, Hasil :
5. Membuat program fungsi prima ()
Program :
#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();
}
Lalu Klik Build and Run, Hasil :
6. Membuat program menggunakan dua variable. Satu bertipe register dan lainnya bertipe interger
Program :
#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 Klik Build and Run, Hasil :
Selesai juga materi kita kali ini semoga bisa bermanfaat ya sobat
Wassalamualaikum Wr. Wb.
Recent Comments