skip to main |
skip to sidebar
program pointer
#include <>
#define FALSE 0
#define TRUE 1
void tukar(int * pX, int * pY);
void kuadrat(int * pX, int * pY);
void reset(int * pX, int * pY);
void main()
{
int keluar = FALSE;
int inrange = TRUE;
int var1;
int var2;
int pilihan;
void (*ptr_func) (int * , int *);
while (keluar != TRUE)
{
if (keluar == TRUE)
break;
printf("variabel pertama : ");
scanf("%d", &var1); printf("variabel pertama : ");
scanf("%d", &var2); printf("Ketikkan fungsi yang anda pilih (1-3) ");
scanf("%d", &pilihan); switch(pilihan)
{
case 1:
ptr_func = tukar ;
inrange = TRUE;
break;
case 2:
ptr_func = kuadrat;
inrange = TRUE;
break;
case 3:
ptr_func = reset;
inrange = TRUE;
break; default:
printf("Fungsi yang anda pilih tidak didefinisikan\n");
inrange = FALSE;
break;
}
if(inrange)
{
printf("Variabel 1 dan 2 sebelum fungsi di panggil: \n");
printf("Variabel 1: %d ; variabel 2: %d \n\n", var1, var2);
ptr_func(&var1, &var2); printf("Variabel 1 dan 2 setelah fungsi di panggil: \n");
printf("Variabel 1: %d ; variabel 2: %d \n\n", var1, var2);
}
printf("Apakah anda ingin mengakhiri program (1 = ya, 0 = tidak) ");
scanf("%d",&keluar);
}
}
void tukar(int * pX, int * pY)
{
int temp;
printf("tukar function called \n");
printf("Menukar variabel 1 dan variabel 2\n");
temp = *pX;
*pX = *pY;
*pY = temp;
}
void kuadrat(int * pX, int * pY)
{
printf("kuadrat function called \n"); *pX = (*pX)*(*pX);
*pY = (*pY)*(*pY);
}
void reset(int * pX, int * pY)
{
printf("reset function called \n");
*pX = 0;
*pY = 0;
}
Tidak ada komentar:
Posting Komentar