Anda di halaman 1dari 20

CONTOH 5.

1 : Diketahui n buah cincin, dimana tiap cincin diilustrasikan sbb :


jl jd
i = 1 2 3

. . . . . . . dst
.
4 ........... n

Buat flowchart dan program C untuk menentukan luas masing2 cincin tsb
jl

Model Matematika :
jd

LL = 3.14 * Jl * Jl
jl

LC = LL - LD

LD = 3.14 * Jd * Jd
jd

FLOWCHART Program LUAS CINCIN dengan 1 fungsi yaitu fungsi main() CONTOH 5.1 :
START

phi = 3.14

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

Input jl,jd
LL = 3.14 *jl * jl LD = 3.14*jd * jd LC = LL - LD
atau

LL = phi *jl * jl LD = phi *jd * jd LC = LL - LD

Cetak LC
END

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

Program LUAS CINCIN dengan 1 fungsi yaitu funsi main() CONTOH 5.1 :

main() {
int N,i; float jl,jd,LL,LD,LC ;

phi = 3.14

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 ; LL = phi *jl * jl LD= 3.14 * jd * jd ; LL = phi *jd * jd LC=LL - LD ; printf("\t==> Luas Cicin ke %d = %8.1f cm2\n",i,LC); getch(); } }

FLOWCHART Program LUAS CINCIN dengan 2 fungsi ( yaitu fungsi main() dan fungsi Luas() )

CONTOH 5.1 versi-1 :


START phi = 3.14

START

Luas ( r )

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

Input n
i = 1 ; i <= n ; i++ Input jl,jd LC = Luas( jl ) Luas( jd )

phi = 3.14 L = phi * r * r


return (L)

Input jl,jd
LL = phi *jl * jl LL = phi *jd * jd LC =LL - LD

Cetak LC
END Flowchart hitung luas n cincin dengan 1 fungsi (fungsi main() )

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

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


START Luas ( r )

CONTOH 5.1 versi-1 :

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

phi = 3.14 L = phi * r * r

Input jl,jd
LC = Luas( jl ) Luas( jd )
return (L)

Cetak LC
END
- 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

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

CONTOH 5.1 versi-1a :

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

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)

#include<stdio.h> CONTOH 5.1 versi-1b : #include<conio.h> float Luas( float r ); main() { int N,i; float jl,jd,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

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); } }

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


- . - . - . ds t
CONTOH 5.1 versi-2 :

START

Sama dengan Contoh 5.1-versi 1

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

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

- 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

END Luas ( r )

Phi = 3.14 L = phi * r * r


return (L)

FUNGSI Luas() MENERIMA /MENGIRIM BALIK DATA DARI/KE FUNGSI PEMANGGIL - Proses input jari-jari lingkaran(luar jl/dalam jd) di fungsi main(), nilai CONTOH 5.1 versi-3 : jari-jari tsb tertransfer ke fungsi Luas() pd saat fungsi main() memang gil fungsi Luas() : START - Luas(jl) : memanggil fungsi Luas() atau keluar dari fungsi main() ke fungsi Luas() sambil membawa/mengirim var jl. Input n - Luas(jd) : memanggil fungsi Luas() atau keluar dari fungsi main() ke fungsi Luas() sambil membawa/mengirim var jd. i = 1 ; i <= n ; i++ - Proses menentukan luas cincin(LC) di fungsi main(), yaitu dg cara : - menentukan Luas lingkaran luar dulu(LL) : Input jl,jd LL = Luas(jl) : memanggil fungsi Luas() atau keluar dari fungsi LL = Luas(jl) main() ke fungsi Luas() sambil membawa/mengi LD= Luas(jd) rim var jl. Kemudian nilai balik dari fungsi Luas()disimpan ke var LL LC = LL LD - menentukan Luas lingkaran dalam(LD) : LD = Luas(jd) : memanggil fungsi Luas() atau keluar dari fungsi Cetak LL, LD, LC main() ke fungsi Luas() sambil membawa/mengi rim var jd. Kemudian nilai balik dari fungsi END Luas()disimpan ke var LD kemudian keduanya dikurangkan dan hasilnya disimpan ke var LC LC = LL - LD Luas (r ) - Proses cetak luas lingkaran(luar/dlm) dan luas cincin di fungsi main(): cetak LL : cetak nilai LL sbg luas lingkaran luar, tanpa hrs phi = 3.14 memanggil fungsi Luas() lagi cetak LD : cetak nilai LD sbg luas lingkaran dalam,tanpa hrs L = phi * r * r memanggil fungsi Luas() lagi return ( L) cetak LC : mencetak luas cincinc

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


CONTOH 5.1 versi-4 : START

Input n
i = 1 ; i <= n ; i++ Input jl,jd

LC = Luas( jl ) Luas( jd )

Cetak LC
END

Luas ( r )

phi = 3.14 L = phi * r * r

Cetak L
return (L )

- 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

FUNGSI Luas() TIDAK MENERIMA DATA DR FUNGSI PEMANGGIL TETAPI MENGIRIM NILAI BALIK FUNGSINYA KE FUNGSSI PEMANGGIL
START
CONTOH 5.1 versi-5 :

jl
jd r

Input n
i = 1 ; i <= n ; i++ LC = Luas( ) Luas( )

Cetak Luas( ),Luas( ), LC


END
Luas ( ) phi = 3.14

Input r
L = phi * r * r return ( L)

- 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

FUNGSI Luas() TIDAK MENERIMA DATA DR FUNGSI PEMANGGIL TETAPI MENGIRIM NILAI BALIK FUNGSINYA KE FUNGSI PEMANGGIL
START CONTOH 5.1 versi-6 :

jl jd r

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

LL = Luas() LD= Luas()


LC = LL LD

Cetak LL, LD, LC

END

Luas ( ) phi = 3.14

Input r
L = phi * r * r return ( L)

- 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

FUNGSI Luas() TIDAK MENERIMA DATA DR FUNGSI PEMANGGIL TETAPI MENGIRIM NILAI BALIK FUNGSINYA KE FUNGSI PEMANGGIL
START
CONTOH 5.1 versi-7 :

jl

Input n

jd
i = 1 ; i <= n ; i++ LC = Luas( ) Luas( )

Cetak LC

END

Luas ( ) phi = 3.14

Input r
L = phi * r * r

cetak L
return ( L)

- 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

INISIALISASI FUNGSI
CONTOH 5.1 versi-1 :

Luas ( r )
START

START

Input n phi = 3.14


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

Luas ( r ) L = 3.14 * r * r return (L)

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

L = phi * r * r return (L)

Input jl,jd
LC = Luas( jl ) Luas( jd )

Input jl,jd
LC = Luas( jl ) Luas( jd )

START

Cetak LC
END

Cetak LC
Luas(r) = 3.14 * r * r
END

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

Input jl,jd
LC = Luas( jl ) Luas( jd )

Cetak LC
END CONTOH 5.1 versi-8 :

#include<stdio.h>

CONTOH 5.1 versi-8 a

float Luas( ); main() { int N,i; float jl,jd,LC;

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

START printf("\n\n\t\t LUAS CINCIN"); printf("\n\t\t=============="); Luas(r) = 3.14 * r * r printf("\n\t\tOleh:SI GONDOL"); printf("\n\n\n* Banyaknya Cincin : ");scanf("%d",&N); Input n for(i=1;i<=N;i++) i = 1 ; i <= n ; i++ { Input jl,jd printf("\n* Entry data Cicin ke %d : ", i); printf("\n\tJari-jari luar : ");scanf("%f",&jl); LC = Luas( jl ) Luas( jd ) printf("\tJari-jari dalam : ");scanf("%f",&jd); Cetak LC LC = Luas(jl) - Luas(jd); printf("\t==> Luas Cicin ke %d = %8.1f cm2\n",i,LC); } END

#include<stdio.h>

CONTOH 5.1 versi-8 b :

float Luas(float r); main() { int N,i; float jl,jd,LC;

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

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); } }

Semoga sukses , amiiiiin

Anda mungkin juga menyukai