ASSALAMUALAIKUM Wr. Wb
Selamat Pagi, siang, sore, dan malam…. Ketemu lagi dengan saya Zukruf kurnia firmansyah….. kali ini kita akan membahas tentang pengembangan fungsi-fungsi
mari kita simak bersama…..
- TEORI
Suatu fungsi adalah bagian program yang terpisah dari fungsi program utamanya main() dan berdiri sendiri untuk mengerjakan suatu proses tertentu. Suatu fungsi dapat digunakan sebagai fungsi itu sendiri, Subrutin dan prosedur seperti istilah yang digunakan pada bahasa pemrograman BASIC atau PASCAL.
Tujuan digunakannya fungsi adalah untuk mencegah penggunaan program secara berulang-ulang, sehingga program menjadi sangat panjang. Pada percobaan-percobaan diatas telah digunakan fungsi-fungsi dari C, seperti printf(), scanf(), getch(), clrscr(), for(), puts(), dan sebagainya, maka disini dicoba untuk membuat fungsi baru dimana tidak ada pada pustaka bahasa C (Turbo C).
CONTOH PROGRAM
Tugas 6.5.1
#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));
}
Tugas 6.5.2
#include<stdio.h>
factorial(long int x)
{
int n, jumlah=1;
for (n=1;n<=x;n++)
jumlah=jumlah*n;
return (jumlah);
}
void main()
{
long int x;
printf(“Fungsi faktorial\n”);
printf(“Masukkan bilangan faktorial=”);
scanf(“%d”,&x);
printf(“Nilai %d! adalah %d\n”, x, factorial(x));
}
Tugas 6.5.3
#include<stdio.h>
permutasi(int n,int r)
{
int i,j,jumlah1=1, jumlah2=1,hasil;
for(i=1;i<=n;i++)
jumlah1*=i;
for(j=1;j<=(n-r);j++)
jumlah2*=j;
hasil= jumlah1/jumlah2;
return (hasil);
}
kombinasi (int n,int r)
{
int k,jumlah3=1,hasil;
for(k=1;k<=r;k++)
jumlah3*=k;
hasil= permutasi(n,r)/jumlah3;
return (hasil);
}
void main()
{
int n,r;
printf(“Fungsi permutasi dan kombinasi\n”);
printf(“Masukkan n=”);
scanf(“%d”,&n);
printf(“Masukkan r=”);
scanf(“%d”,&r);
printf(“\nNilai permutasi P(%d,%d) adalah %d”,n,r,permutasi(n,r));
printf(“\nNilai kombinasi C(%d,%d) adalah %d\n”,n,r,kombinasi(n,r));
}
Tugas 6.5.4
#include<stdio.h>
#include<conio.h>
double suhu(float a,char b,char c)
{
float d;
if(b==’c’&&c==’f’) goto cf;
if(b==’c’&&c==’r’) goto cr;
if(b==’f’&&c==’c’) goto fc;
if(b==’f’&&c==’r’) goto fr;
if(b==’r’&&c==’c’) goto rc;
if(b==’r’&&c==’f’) goto rf;
cf: d=a*9/5+32; return (d);
cr: d=a*4/5; return (d);
fc: d=(a-32)*5/9; return (d);
fr: d=(a-32)*4/9; return (d);
rc: d=a*5/4; return (d);
rf: d=a*9/4+32; return (d);
}
main()
{
float a; char b,c,e;
menu1:
printf(“Konversi suhu\n”);
printf(“Masukkan suhu=”);
scanf(“%g”,&a);
printf(“Masukkan suhu sumber dan tujuan tanpa spasi<contoh cf>=”);
scanf(“%c%c%c”,&b,&b,&c);
if (b==c)
{
printf(“Format suhu salah, silahkan coba lagi”);
getch(); system(“cls”);goto menu1;
}
if ((b==’c’||b==’f’||b==’r’)&&(c==’c’||c==’f’||c==’r’))
{
printf(“Hasil konversi=%g\n”, suhu(a,b,c));
printf(“Tekan <y> untuk mengulang\n”);
e=getche();
while(e==’y’)
{
system(“cls”); goto menu1;
}
}
}
Tugas 6.5.5
#include<stdio.h>
prima(int bil)
{
int i,faktor=0;
for (i=1;i<=bil;i++)
if(bil%i==0)
faktor++;
if(faktor==2)
return 1;
else
return 0;
}
void main()
{
int bil;
printf(“Fungsi prima\n”);
printf(“Hasil=1 adalah bil prima\n”);
printf(“Hasil=0 bukan bil prima\n\n”);
printf(“Masukkan sebuah bilangan=”);
scanf(“%d”,&bil);
printf(“hasil=%d \n”,prima(bil));
}
Sekian dari saya kurang lebihnya mohon maaf, dan semoga bermanfaat untuk kalian semua….
Recent Comments