Senin, 07 Januari 2013

Function dan Procedure Matematika pada C

/*File       : jumkb_proc.cpp
Deskripsi    : MODULAR FUNGSI DAN PROCEDUR
IS           : Proses jumlah, kurang, kali,bagi,modulus,pangkat belum menggunakan "modular programming"
FS           : Proses jumlah, kurang, kali,bagi,modulus,pangkat sudah menggunakan "modular programming"
Author       : Trisna A.R

Tanggal      : 28 September 2012
*/

/*PROCEDURE untuk memanggil menu yang dipilih*/
void jumlah();
void kurang();
void kali();
void bagi();
void modulus();
void pangkat();
/*FUNGSI untuk melakukan operasi matematika. Dimana fungsi-fungsi ini menggunakan parameter sebagai input saja */
int operasi_tambah(int y,int x);
int operasi_kurang(int n,int m);
int operasi_kali(int p,int q);
int operasi_bagi(int r,int t);
int operasi_modulus(int s,int d);
int operasi_pangkat(int g, int h);

#include
#include
int main(){
int pil,l; 
do{
clrscr();
printf("PILIHAN OPERASI MATEMATIKA \n\n");
printf("  1. PENJUMLAH \n");
printf("  2. PENGURANG \n");
printf("  3. PERKALIAN \n");
printf("  4. PEMBAGIAN \n");
printf("  5. MODULUS \n");
printf("  6. PEMANGKATAN \n\n");
printf("Masukkan pilihan operasi : ");
scanf("%d",&pil);

/*Kondisi untuk menentukkan PROCEDURE mana yang akan dipanggil untuk melakukan proses input data, proses dan output*/
if(pil==1){
    jumlah();
}
else if(pil==2){
    kurang();
}
else if(pil==3){
    kali();
}
else if(pil==4){
    bagi();
}
else if(pil==5){
    modulus();
}
else{
    pangkat();
}

printf("\n\n");
printf("Mau Lagi 1[YES] dan 2 [NO] ?  ");    //proses mengulang menu jika jawaban 1[YES]
scanf("%d",&l);
}while(l==1);
return 0;
}

/*PROCEDURE jumlah() dipanggil ketika inputan pil==1*/
void jumlah(){
int a,b,jum;
printf("\n Masukkan Nilai A    : ");
scanf("%d",&a);
printf("\n Masukkan Nilai B    : ");
scanf("%d",&b);
jum=operasi_tambah(a,b);     /*memanggil fungsi operasi_tambah dimana parameter nya adalah a dan b sebagai inputan*/
printf("\n Hasil Penjumlahan    : %d",jum);
}

/*PROCEDURE kali() dipanggil ketika inputan pil==3*/
void kali(){
int kali,a,b;
printf("\n Masukkan Nilai A    : ");
scanf("%d",&a);
printf("\n Masukkan Nilai B    : ");
scanf("%d",&b);
kali=operasi_kali(a,b);  /*memanggil fungsi operasi_kali dimana parameter nya adalah a dan b sebagai inputan*/
printf("\n Hasil Perkalian : %d",kali);
}




/*PROCEDURE kurang() dipanggil ketika inputan pil==2*/
void kurang(){
int krg,a,b;
printf("\n Masukkan Nilai A    : ");
scanf("%d",&a);
printf("\n Masukkan Nilai B    : ");
scanf("%d",&b);
krg=operasi_kurang(a,b);     /*memanggil fungsi operasi_kurang dimana parameter nya adalah a dan b sebagai inputan*/
printf("\n Hasil Pengurangan : %d",krg);
}
/*PROCEDURE bagig() dipanggil ketika inputan pil==4*/
void bagi(){
float bg;
int a,b;
printf("\n Masukkan Nilai A    : ");
scanf("%d",&a);
printf("\n Masukkan Nilai B    : ");
scanf("%d",&b);
bg=operasi_bagi(a,b);        /*memanggil fungsi operasi_bagi dimana parameter nya adalah a dan b sebagai inputan*/
printf("\n Hasil Pembagian : %.2f",bg);
}
/*PROCEDURE modulus() dipanggil ketika inputan pil==5*/
void modulus(){
int mdl,a,b;
printf("\n Masukkan Nilai A    : ");
scanf("%d",&a);
printf("\n Masukkan Nilai B    : ");
scanf("%d",&b);
mdl=operasi_modulus(a,b);  /*memanggil fungsi operasi_modulus dimana parameter nya adalah a dan b sebagai inputan*/
printf("\n Hasil Modulus : %d",mdl);
}
/*PROCEDURE pangkat() dipanggil ketika inputan pil==6*/
void pangkat(){
int pg,a,b;
printf("\n Masukkan Nilai A    : ");
scanf("%d",&a);
printf("\n Masukkan Nilai B    : ");
scanf("%d",&b);
pg=operasi_pangkat(a,b);     /*memanggil fungsi operasi_pangkat dimana parameter nya adalah a dan b sebagai inputan*/
printf("\n Hasil Pemangkatan : %d",pg);
}

/*FUNCTION operasi_kurang() dipanggil pada PROCEDURE kurang(),
 fungsi ini memiliki parameter n dan m sebagai inputan dan mengembalikan nilai yang disimpan pada temp type int*/
int operasi_kurang(int n,int m){
int temp;
temp=n-m;
return temp;
}

/*FUNCTION operasi_bagi() dipanggil pada PROCEDURE bagi(),
 fungsi ini juga memanggil fungsi operasi_kurang(),
 fungsi ini memiliki parameter r dan t sebagai inputan dan mengembalikan nilai yang disimpan pada temp type int*/
int operasi_bagi(int r,int t){
int temp=0;
while(r>0 && r>=t){
r=operasi_kurang(r,t);
temp++;
}
return temp;
}

/*FUNCTION operasi_kali() dipanggil pada PROCEDURE modulus(),
 fungsi ini juga memanggil fungsi operasi_bagi() dan fungsi operasi_kali,
 fungsi ini memiliki parameter s dan d sebagai inputan dan mengembalikan nilai yang disimpan pada temp type int*/
int operasi_modulus(int s,int d){
int temp,k;
k=operasi_bagi(s,d);
temp=s-operasi_kali(k,d);
return temp;
}

/*FUNCTION operasi_kali() dipanggil pada PROCEDURE pangkat(),
 fungsi ini juga memanggil fungsi operasi_kali(),
 fungsi ini memiliki parameter g dan h sebagai inputan dan mengembalikan nilai yang disimpan pada temp type int*/
int operasi_pangkat(int g,int h){
int i,temp=1;
for(i=0;itemp=operasi_kali(temp,g);
}
return temp;
}
/*FUNCTION operasi_tambah() dipanggil pada PROCEDURE jumlah(),
 fungsi ini memiliki parameter a dan b sebagai inputan dan mengembalikan nilai yang disimpan pada temp type int*/
int operasi_tambah(int y,int x){
int temp;
temp=y+x;
return temp;
}

/*FUNCTION operasi_kali() dipanggil pada PROCEDURE kali(),
 fungsi ini juga memanggil fungsi operasi_tambah(),
 fungsi ini memiliki parameter a dan b sebagai inputan dan mengembalikan nilai yang disimpan pada temp type int*/
int operasi_kali(int p,int q){
int i,temp=0;
for(i=0;itemp=operasi_tambah(temp,p);
}
return temp;
}

Tidak ada komentar:

Posting Komentar

Author

Trisna Ari Roshinta

Subscribe & Follow

Disini saya hanya sharing beberapa pengalaman saya selama belajar informatika. Silahkan bertanya jika ada yang ingin ditanyakan..

Labels