CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

20
Catatan Tambahan Fungsi – Inisialisasi Fungsi

description

fungsi

Transcript of CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

Page 1: CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

Catatan TambahanFungsi – Inisialisasi

Fungsi

Page 2: CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

Beberapa Variasi Fungsi

Page 3: CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

CONTOH 5.1 :Diketahui n buah cincin, dimana tiap cincin diilustrasikan sbb :

jl

jd

LL = 3.14 * Jl * Jl

LD = 3.14 * Jd * JdLC = LL - LD

.

Buat flowchart dan program C untuk menentukan luas masing2 cincin tsb

i = 1 2 3 4 . . . . . . . . . . . n

. . . . . . . dst

jl

jd

jl

jd* Model Matematika :

Page 4: CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

FLOWCHART Program LUAS CINCIN dengan 1 fungsi yaitu fungsi main()

START

Input N

Cetak LC

i = 1 ; i <= N ; i++

Input jl,jd

LL = 3.14 *jl * jlLD = 3.14*jd * jdLC = LL - LD

END

LL = phi *jl * jlLD = phi *jd * jdLC = LL - LD

phi = 3.14

atau

CONTOH 5.1 :

Page 5: CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

#include<stdio.h>#include<conio.h>

main(){

int N,i;float jl,jd,LL,LD,LC ;

printf("\n\n\t\t\tLUAS CINCIN");printf("\n\t\t\t==============");printf("\n\t\t\tOleh:SI GONDOL");

printf("\n\n* Banyaknya Cincin : ");scanf("%d",&N);for(i=1;i<=N;i++){

printf("\n* Entry data Cicin ke %d : ", i);printf("\n\tJari-jari luar : ");scanf("%f",&jl);printf("\tJari-jari dalam : ");scanf("%f",&jd);LL= 3.14 * jl * jl ;LD= 3.14 * jd * jd ;LC=LL - LD ;printf("\t==> Luas Cicin ke %d = %8.1f cm2\n",i,LC);getch();

}}

Program LUAS CINCIN dengan 1 fungsi yaitu funsi main()

LL = phi *jl * jlLL = phi *jd * jd

phi = 3.14 CONTOH 5.1 :

Page 6: CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

FLOWCHART Program LUAS CINCIN dengan 2 fungsi

( yaitu fungsi main() dan fungsi Luas() )

START

Input n

Cetak LC

i = 1 ; i <= n ; i++

Input jl,jd

LC = Luas( jl ) – Luas( jd )

END

START

Input n

Cetak LC

i = 1 ; i <= n ; i++

Input jl,jd

LL = phi *jl * jlLL = phi *jd * jdLC =LL - LD

END

phi = 3.14

return (L)

Luas ( r )

L = phi * r * r

phi = 3.14

Flowchart hitung luas n cincin dengan 1 fungsi(fungsi main() )

Flowchart hitung luas n cincin dengan 2 fungsi(fungsi main() dan fungsi Luas() )

CONTOH 5.1 versi-1 :

Page 7: CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

START

Input n

Cetak LC

i = 1 ; i <= n ; i++

Input jl,jd

LC = Luas( jl ) – Luas( jd )

END

return (L)

Luas ( r )

L = phi * r * r

phi = 3.14

- Proses input jari-jari (luar jl/dalam jd) di fungsi main(),kemudian dikirim ke fungsi Luas(),yaitu pada saat fungsi main() memanggil fungsi Luas() : - Luas(jl) : fungsi main() memanggil fungsi Luas() atau keluar dari fungsi main() ke fungsi Luas() sambil membawa/mengirim var jl - Luas(jd) : fungsi main() memanggil fungsi Luas() atau keluar dari fungsi main() ke fungsi Luas() sambil membawa/mengirim var jd Jd data yang dikirim dari fungsi main() ke fungsi Luas() adalah jl,jd dan nilai balik fungsi Luas() adalah L Jadi fungsi Luas()menerima data dari fungsi main() dan mengirim balik nilai fungsinya ke fungsi main() - Proses menentukan luas lingkaran(luar/dalam) di fungsi Luas(), sedangkan proses menentukan luas cincin(LC) di fungsi main(), yaitu dengan cara : memanggil fungsi Luas(jl) dan memanggil fungsi Luas(jd), kemudian keduanya dikurangkan dan hasilnya disimpan di var LC LC = Luas(jl)- Luas(jd)- Proses cetak luas cincin di fungsi main() : cetak LC , sedangkan luas lingkaran(luar/dalam) tidak dicetak

FUNGSI Luas() MENERIMA/MENGIRIM BALIK DATA DARI/KE FUNGSI PEMANGGIL

CONTOH 5.1 versi-1 :

Page 8: CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

#include<stdio.h>#include<conio.h>

float Luas( );main(){

int N,i;float jl,jd,LC;

printf("\n\n\t\t LUAS CINCIN");printf("\n\t\t==============");printf("\n\t\tOleh:SI GONDOL");

printf("\n\n\n* Banyaknya Cincin : ");scanf("%d",&N);for(i=1;i<=N;i++){

printf("\n* Entry data Cicin ke %d : ", i);printf("\n\tJari-jari luar : ");scanf("%f",&jl);printf("\tJari-jari dalam : ");scanf("%f",&jd);LC = Luas(jl) - Luas(jd);printf("\t==> Luas Cicin ke %d = %8.1f cm2\n",i,LC);

}}

float Luas(r)float r ;{

float phi=3.14, L;L=phi*r*r ;return(L) ;

}

Bila diinginkan fungsi Luas() dipindah ke sini(agar lebih jelas), tekan sembarang tombolCONTOH 5.1 versi-1a :

Page 9: CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

#include<stdio.h>#include<conio.h>

float Luas( float r );main(){

int N,i;float jl,jd,LC;

printf("\n\n\t\t LUAS CINCIN");printf("\n\t\t==============");printf("\n\t\tOleh:SI GONDOL");

printf("\n\n\n* Banyaknya Cincin : ");scanf("%d",&N);for(i=1;i<=N;i++){

printf("\n* Entry data Cicin ke %d : ", i);printf("\n\tJari-jari luar : ");scanf("%f",&jl);printf("\tJari-jari dalam : ");scanf("%f",&jd);LC = Luas(jl) - Luas(jd);printf("\t==> Luas Cicin ke %d = %8.1f cm2\n",i,LC);

}}

float Luas( float r ){

float phi=3.14,L;L=phi*r*r;return(L);

}

Bila diinginkan fungsi Luas() dipindah ke sini(agar lebih jelas), tekan sembarang tombol

CONTOH 5.1 versi-1b :

Page 10: CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

FUNGSI Luas() MENERIMA/MENGIRIM BALIK DATA DARI/KE FUNGSI PEMANGGIL

return (L)

Luas ( r )

L = phi * r * r

Phi = 3.14

START

Input n

Ctk Luas(jl),Luas(jd),LC

i = 1 ; i <= n ; i++

Input jl,jd

LC = Luas( jl ) – Luas( jd )

END

- ….- ….- …. ds t

- Proses cetak luas cincin, cetak luas lingkaran(luar/dalam) semua dilakukan di fungsi main(), yaitu : cetak LC untuk cetak luas cincin cetak Luas(jl) untuk cetak luas lingkaran luar cetak Luas(jd) untuk cetak luas lingkaran dalam

CONTOH 5.1 versi-2 :

Sama dengan Contoh 5.1-versi 1

Page 11: CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

FUNGSI Luas() MENERIMA /MENGIRIM BALIK DATA DARI/KE FUNGSI PEMANGGIL

return ( L)

Luas (r )

L = phi * r * r

phi = 3.14

- Proses input jari-jari lingkaran(luar jl/dalam jd) di fungsi main(), nilai jari-jari tsb tertransfer ke fungsi Luas() pd saat fungsi main() memang gil fungsi Luas() : - Luas(jl) : memanggil fungsi Luas() atau keluar dari fungsi main() ke fungsi Luas() sambil membawa/mengirim var jl. - Luas(jd) : memanggil fungsi Luas() atau keluar dari fungsi main() ke fungsi Luas() sambil membawa/mengirim var jd. - Proses menentukan luas cincin(LC) di fungsi main(), yaitu dg cara : - menentukan Luas lingkaran luar dulu(LL) : LL = Luas(jl) : memanggil fungsi Luas() atau keluar dari fungsi main() ke fungsi Luas() sambil membawa/mengi rim var jl. Kemudian nilai balik dari fungsi Luas()disimpan ke var LL - menentukan Luas lingkaran dalam(LD) : LD = Luas(jd) : memanggil fungsi Luas() atau keluar dari fungsi main() ke fungsi Luas() sambil membawa/mengi rim var jd. Kemudian nilai balik dari fungsi Luas()disimpan ke var LD kemudian keduanya dikurangkan dan hasilnya disimpan ke var LC LC = LL - LD- Proses cetak luas lingkaran(luar/dlm) dan luas cincin di fungsi main(): cetak LL : cetak nilai LL sbg luas lingkaran luar, tanpa hrs memanggil fungsi Luas() lagi cetak LD : cetak nilai LD sbg luas lingkaran dalam,tanpa hrs memanggil fungsi Luas() lagi cetak LC : mencetak luas cincinc

START

Input n

i = 1 ; i <= n ; i++

LC = LL – LD

END

Cetak LL, LD, LC

LL = Luas(jl)LD= Luas(jd)

Input jl,jd

CONTOH 5.1 versi-3 :

Page 12: CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

FUNGSI Luas() MENERIMA/MENGIRIM BALIK DATA DARI/KE FUNGSI PEMANGGIL

- Proses input jari-jari lingkaran(luar jl/dalam jd) di fungsi main(), nilai jari-jari tsb tertransfer ke fungsi Luas() pd saat fungsi main() memanggil fungsi Luas() : - Luas(jl) : memanggil fungsi Luas() atau keluar dari fungsi main() ke fungsi Luas() sambil mem bawa/mengirim var jl - Luas(jd) : memanggil fungsi Luas() atau keluar dari fungsi main() ke fungsi Luas() sambil mem bawa/mengirim var jd Data yang dikirim dari fungsi main() ke fungsi Luas() adalah jl,jd dan nilai balik fungsi Luas() adalah L Jadi fungsi Luas()menerima data dari fungsi main() dan mengirim balik nilai fungsinya ke fungsi main() - Proses menentukan luas lingkaran(luar/dalam) di fungsi Luas(), sedangkan proses menentukan luas cincin(LC) di fungsi main(), yaitu dengan cara : - memanggil fungsi Luas(jl)dan memanggil fungsi Luas(jd) kemudian nilai balik keduanya dikurangkan dan hasil nya disimpan di var LC LC = Luas(jl) - Luas(jd)- Proses cetak luas cincin di fungsi main() cetak LC - Proses cetak luas lingkaran(luar/dalam di fungsi Luas(),yaitu : cetak L: Bila r diisi jari-jari lingkaran luar mk yg dicetak luas lingkaran luar. Bila r diisi jari-jari lingkaran dalam mk yang dicetak luas lingkaran dalam

Cetak L

return (L )

Luas ( r )

L = phi * r * r

phi = 3.14

START

Input n

i = 1 ; i <= n ; i++

Input jl,jd

LC = Luas( jl ) – Luas( jd )

END

Cetak LC

CONTOH 5.1 versi-4 :

Page 13: CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

START

Input n

i = 1 ; i <= n ; i++

LC = Luas( ) – Luas( )

END

Cetak Luas( ),Luas( ), LC

FUNGSI Luas() TIDAK MENERIMA DATA DR FUNGSI PEMANGGIL TETAPI

MENGIRIM NILAI BALIK FUNGSINYA KE FUNGSSI PEMANGGIL

jl

jd

r

r

- Proses input jari-jari (luar/dalam yaitu r) di fungsi Luas() Jadi fungsi Luas() tidak menerima data dari fungsi main(), tapi mengirim balik nilai fungsinya ke fungsi main() , yaitu L- Proses menentukan luas cincin(LC) di fungsi main(), yaitu dengan cara : - memanggil fungsi Luas() , dimana r masukkan jari-jari luar - memanggil fungsi Luas(), dimana r masukkan jari-jari dalam kemudian keduanya dikurangkan dan hasilnya disimpan di LC LC= Luas(jl)- Luas(jd)- Proses cetak luas cincin di fungsi main() : cetak LC- Proses mencetak luas lingkaran(luar/dalam) di fungsi Luas() : cetak Luas(): mencetak luas lingkaran luar,bila r=jari-jari luar cetakLuas():mencetak luas lingkaran dalam,bila r=jari-jari dalam

Input r

return ( L)

Luas ( )

L = phi * r * r

phi = 3.14

CONTOH 5.1 versi-5 :

Page 14: CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

FUNGSI Luas() TIDAK MENERIMA DATA DR FUNGSI PEMANGGIL TETAPI

MENGIRIM NILAI BALIK FUNGSINYA KE FUNGSI PEMANGGIL

jl

jd

r

r

- Proses input jari-jari (luar/dalam yaitu r) di fungsi Luas() Jadi fungsi Luas() tidak menerima data dari fungsi main(), tapi mengirim balik nilai fungsinya ke fungsi main() , yaitu L- Proses menentukan luas cincin(LC) di fungsi main(), yaitu dengan cara : - memanggil fungsi Luas() , dimana r masukkan jari-jari luar kemudian nilai baliknya dimasukkan ke var LLLL = Luas() - memanggil fungsi Luas(), dimana r masukkan jari-jari dalam kemudian nilai baliknya dimasukkan ke var LDLD = Luas() kemudian keduanya dikurangkan dan hasilnya disimpan ke var LC LC = LL - LD- Proses cetak luas lingkaran(luar/dlm) dan luas cincin di fungsi main(): cetak LL : cetak nilai LL sbg luas lingkaran luar, tanpa hrs me memanggil fungsi Luas() lagi cetak LD : cetak nilai LD sbg luas lingkaran dalam,tanpa hrs memanggil fungsi Luas() lagi cetak LC : mencetak luas cincin

Input r

return ( L)

Luas ( )

L = phi * r * r

phi = 3.14

START

Input n

i = 1 ; i <= n ; i++

LC = LL – LD

END

Cetak LL, LD, LC

LL = Luas()LD= Luas()

CONTOH 5.1 versi-6 :

Page 15: CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

START

Input n

i = 1 ; i <= n ; i++

LC = Luas( ) – Luas( )

END

Cetak LC

FUNGSI Luas() TIDAK MENERIMA DATA DR FUNGSI PEMANGGIL TETAPI

MENGIRIM NILAI BALIK FUNGSINYA KE FUNGSI PEMANGGIL

jl

jd

r

r

- Proses input jari-jari (luar/dalam yaitu r) di fungsi Luas() Jadi fungsi Luas() tidak menerima data dari fungsi main(), tapi mengirim balik nilai fungsinya ke fungsi main() ,yaitu L- Proses menentukan dan mencetak luas lingkaran(luar/dalam) di fungsi Luas()- Proses menentukan luas cincin(LC) di fungsi main(), yaitu dengan cara : - memanggil fungsi Luas() , dimana r masukkan jari-jari luar - memanggil fungsi Luas(), dimana r masukkan jari-jari dalam kemudian keduanya dikurangkan dan hasilnya disimpan di LC LC= Luas(jl)- Luas(jd)- Proses cetak luas cincin di fungsi main() : cetak LC- Proses cetak luas lingkaran(luar/dalam di fungsi Luas(),yaitu : cetak L: Bila r diisi jari-jari lingkaran luar mk cetak luas lingkaran luar. Bila r diisi jari-jari lingkar an dalam mk cetak luas lingkaran dalam

Input r

return ( L)

Luas ( )

L = phi * r * r

phi = 3.14

cetak L

CONTOH 5.1 versi-7 :

Page 16: CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

Inisialisasi Fungsi

Page 17: CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

START

Input n

Cetak LC

i = 1 ; i <= n ; i++

Input jl,jd

LC = Luas( jl ) – Luas( jd )

END

return (L)

Luas ( r )

L = phi * r * r

phi = 3.14

- Proses input jari-jari (luar jl/dalam jd) di fungsi main(),kemudian dikirim ke fungsi Luas(),yaitu pada saat fungsi main() memanggil fungsi Luas() : - Luas(jl) : fungsi main() memanggil fungsi Luas() atau keluar dari fungsi main() ke fungsi Luas() sambil membawa/mengirim var jl - Luas(jd) : fungsi main() memanggil fungsi Luas() atau keluar dari fungsi main() ke fungsi Luas() sambil membawa/mengirim var jd Jd data yang dikirim dari fungsi main() ke fungsi Luas() adalah jl,jd dan nilai balik fungsi Luas() adalah L Jadi fungsi Luas()menerima data dari fungsi main() dan mengirim balik nilai fungsinya ke fungsi main() - Proses menentukan luas lingkaran(luar/dalam) di fungsi Luas(), sedangkan proses menentukan luas cincin(LC) di fungsi main(), yaitu dengan cara : memanggil fungsi Luas(jl) dan memanggil fungsi Luas(jd), kemudian keduanya dikurangkan dan hasilnya disimpan di var LC LC = Luas(jl)- Luas(jd)- Proses cetak luas cincin di fungsi main() : cetak LC , sedangkan luas lingkaran(luar/dalam) tidak dicetak

INISIALISASI FUNGSI

START

Input n

Cetak LC

i = 1 ; i <= n ; i++

Input jl,jd

LC = Luas( jl ) – Luas( jd )

END

return (L)

Luas ( r )

L = 3.14 * r * rphi = 3.14

3.14

START

Input n

Cetak LC

i = 1 ; i <= n ; i++

Input jl,jd

LC = Luas( jl ) – Luas( jd )

END

Luas(r) = 3.14 * r * r

L = phi * r * r

Luas(r) = 3.14 * r * r

CONTOH 5.1 versi-1 :

CONTOH 5.1 versi-8 :

Page 18: CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

#include<stdio.h>

float Luas( );main(){

int N,i;float jl,jd,LC;

printf("\n\n\t\t LUAS CINCIN");printf("\n\t\t==============");printf("\n\t\tOleh:SI GONDOL");

printf("\n\n\n* Banyaknya Cincin : ");scanf("%d",&N);for(i=1;i<=N;i++){

printf("\n* Entry data Cicin ke %d : ", i);printf("\n\tJari-jari luar : ");scanf("%f",&jl);printf("\tJari-jari dalam : ");scanf("%f",&jd);LC = Luas(jl) - Luas(jd);printf("\t==> Luas Cicin ke %d = %8.1f cm2\n",i,LC);

}}

float Luas(r)float r ;{

float phi=3.14,L;L=phi*r*r;return(L);

}

float Luas(r)float r ;{ return(3.14 *r*r);}

START

Input n

Cetak LC

i = 1 ; i <= n ; i++

Input jl,jd

LC = Luas( jl ) – Luas( jd )

END

Luas(r) = 3.14 * r * r Luas(r) = 3.14 * r * r

CONTOH 5.1 versi-8 a

Page 19: CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

#include<stdio.h>

float Luas(float r);main(){

int N,i;float jl,jd,LC;

printf("\n\n\t\t LUAS CINCIN");printf("\n\t\t==============");printf("\n\t\tOleh:SI GONDOL");

printf("\n\n\n* Banyaknya Cincin : ");scanf("%d",&N);for(i=1;i<=N;i++){

printf("\n* Entry data Cicin ke %d : ", i);printf("\n\tJari-jari luar : ");scanf("%f",&jl);printf("\tJari-jari dalam : ");scanf("%f",&jd);LC = Luas(jl) - Luas(jd);printf("\t==> Luas Cicin ke %d = %8.1f cm2\n",i,LC);

}}

float Luas(float r){ return(3.14 *r*r);}

CONTOH 5.1 versi-8 b :

Page 20: CATATAN TAMBAHAN Fungsi Dan Inisialisai Fungsi

Semoga sukses , amiiiiin