Kamis, Mei 15, 2008

Bhs C Dasar - Chapter IV

Bayangkan jika program anda sekarang dalam baris yang sangat panjang, merepotkan sekali bukan nah dengan fungsi kita dapat menyederhakan sebuah program menjadi jelas dan mudah di baca

okeh.. kita mulai lagi.
contoh pemakaian sebagai berikut :
#include
void writename(); // ini sebuah fungsi
void writename() // ini sebuah fungsi bernama writename()
{
printf("Riefkhy\n");
}

int main()
{
int index;

for(index = 0 ; index < 10 ; index = index + 1)
writename(); // panggil fungi yang bernama writename();
return 0;
}

contoh lain ;
#include
int tempcalc(int centtemp);
int main()
{
int count;
int farenheit; /* temperature farenheit */
int centigrade; /* temperature centigrade */

printf("Table Farenheit temperature \n\n");
for(count = -2 ; count <= 12 ; count = count + 1)
{
centigrade = 10 * count;
farenheit = tempcalc(centigrade);
printf(" C =%4d F =%4d ", centigrade, farenheit);
if (centigrade == 0)
printf(" Freezing point of water");
if (centigrade == 100)
printf(" Boiling point of water");
printf("\n");
} /* akhir dari perulangan*/
return 0;
}

int tempcalc(int centtemp)
{
int faren;

faren = 32 + (centtemp * 9)/5;
return (faren);
}

note :
ingat , didalam sebuah program terdapat yang namanya variabel local dan grobal, jika kita ingin melempar sebuah varibel kesuatu fungsi maka kita dapat melakukan hal sebagai berikut

model passing by value
void fungsi (int tampung){
printf("%d",tampung); /// disini nilai 5 akan tercetak dari operan
dibawah
}

void main(){
int a=5;
cetak(a); ///lempar variabel a ke fungsi cetak diatas
}

gimana jika kita ingin melempar sebuah 2 buah varibel
void fungsi (int tampung, float tampung1){
printf("%d",tampung); /// disini nilai 5 akan tercetak dari operan dibawah
printf("%f",tampung1); /// disini nilai 4.5 akan tercetak dari operan dibawah
}

void main(){
int a=5;
float b=4.5
cetak(a,b); ///lempar variabel a ke fungsi cetak diatas
}

model passing by pointer
void testing(int &a){
printf("%d",*a);
}

void main(){
int a=5;
testing(&a);
}

perhatikan tipe data yang anda lemparkan ,,, dia harus di tampung didalam tipe yang sama (jika memungkinkan)

contoh kombinasi :
#include
void header(void);
void square(int number);
void ending(void);

int sum; /* ini global variable */

int main(void)
{
int index; // ini local variabel

header(); /* ini memanggil fungsi header */
for (index = 1 ; index <= 7 ; index++)
square(index); /* ini memanggil fungsi square */
ending(); /* ini memanggil fungsi ending */

return 0;
}

void header(void) /* ini fungsi header */
{
sum = 0; /* inisialisasi dari sum=0 */
printf("ini adalah header dari square program\n\n");
}

void square(int number) /* ini fungsi square */
{
int numsq;

numsq = number * number;
sum += numsq;
printf("nilai square %d adalah %d\n", number, numsq);
}

void ending(void) /* ini fungsi ending */
{
printf("\njumlah dari square adalah %d\n", sum);
}

/* ouputnya
ini adalah header dari square program
nilai square 1 adalah 1
nilai square 2 adalah 4
nilai square 3 adalah 9
nilai square 4 adalah 16
nilai square 5 adalah 25
nilai square 6 adalah 36
nilai square 7 adalah 49
jumlah dari square adalah :140
*/

Tidak ada komentar: