Sunday, October 10, 2010

Aplikasi Kalkulator Sederhana dengan Bahasa C

Berikut ini adalah program untuk membuat sebuah kalkulator sederhana dengan bahasa C. Di dalam propgram ini saya menggunakan pengulangan DO WHILE, agar kita bisa menentukan apakah kita keluar dari program, atau kita ingin mengulangi operasi. Berikut adalah kode programnya:

#include <stdio.h>
int isprima(int x);
float pangkat (float basis, int n);
float kpk(int x, int y);
float fpb(int x, int y);
main()
{
float X,Y,hasil;
int A,B,pilihan;
int Z;
char ulangi;
do{
printf("Pilihan operasi: ");
printf("\n1. X + Y\n2. X - Y\n3. X x Y\n4. X / Y");
printf("\n5. X Pangkat Y\n6. KPK X dan Y\n7. FPB X dan Y\n8. Cek prima X");
printf("\nPilihan anda: ");scanf("%d",&pilihan);
switch(pilihan)
{
case 1:
printf("\nX = ");scanf("%f",&X);
printf("Y = ");scanf("%f",&Y);
hasil = X + Y;
break;
case 2:
printf("\nX = ");scanf("%f",&X);
printf("Y = ");scanf("%f",&Y);
hasil = X - Y;
break;
case 3:
printf("\nX = ");scanf("%f",&X);
printf("Y = ");scanf("%f",&Y);
hasil = X * Y;
break;
case 4:
printf("\nX = ");scanf("%f",&X);
printf("Y = ");scanf("%f",&Y);
hasil = X / Y;
break;
case 5:
printf("\nX = ");scanf("%f",&X);
printf("Y = ");scanf("%d",&B);
hasil = pangkat(X,B);
break;
case 6:
printf("\nX = ");scanf("%d",&A);
printf("Y = ");scanf("%d",&B);
Z = kpk(A,B);
hasil = Z;
break;
case 7:
printf("\nX = ");scanf("%d",&A);
printf("Y = ");scanf("%d",&B);
Z = fpb(A,B);
hasil = Z;
break;
case 8:
printf("\nX = ");scanf("%d",&A);
Z = isprima(A);
if (Z==1)
printf("X adalah bilangan prima\n");
else
printf("X bukan bilangan prima\n");
break;
default:
printf("Pilihan anda salah!!");
}
if((pilihan<=7) && (pilihan>=1))
printf("Hasil = %f",hasil);

printf("\n");
printf("Ulangi operasi (Y/N)? ");
scanf("%s",&ulangi);
}while((ulangi=='Y')||(ulangi=='y'));
}

int isprima(int x)
{
int n,t=1,s;
if ( x < 2 )
{s = 0;}
else
{
for (n=2;t!=0;n++)
{
t = x%n;
}
n--;
if(n==x)
{s = 1;}
else
{s = 0;}
}
return (s);
}

float pangkat (float basis, int n)
{
int i;
float p;
p = 1;
for (i = 1; i <= n; ++i)
p = p* basis;
return p;
}


float kpk(int x, int y)
{
int w=1,n;
int z;
if (x < y)
{
for (n=1; w != 0; n++)
{ z = y * n;
w = z % x;
}
}
else
{
for (n=1; w != 0; n++)
{ z = x * n;
w = z % y;
}
}
return (z);
}


float fpb(int x,int y)
{
int sisabagi;
float hasil;
if(y<=x && x%y==0)
{
return(y);
}
else if(x<y)
{
hasil=fpb(y,x);
return(hasil);
}
else
sisabagi=x%y;
hasil=fpb(y,sisabagi);
return(hasil);
}

2 comments:

Anonymous,  January 9, 2011 at 7:21 PM  

gak bisa dicopy --"

pupil January 17, 2011 at 2:31 AM  

Sekarang sudah bisa, silahkan coba lagi. Meskipun sebenarnya copy-paste itu kurang bagus buat pengembangan belajar pemrograman.

Post a Comment

Followers

followers

  © Blogger templates ProBlogger Template by Ourblogtemplates.com 2008

Back to TOP