• Tidak ada hasil yang ditemukan

Modul Pemrograman Komputer Elektro

N/A
N/A
Protected

Academic year: 2017

Membagikan "Modul Pemrograman Komputer Elektro"

Copied!
14
0
0

Teks penuh

(1)

M O D U L

M A T A K U L I A H

P E M R O G R A M A N K O M P U T E R

JURUSAN PENDIDIKAN TEKNIK ELEKTRO

FAKULTAS TEKNIK

(2)

M O D U L K U L I A H

P E M R O G R A M A N K O M P U T E R

D A F T A R I S I

B A B 1. P E N D A H U L U A N B A H A S A C + + 1 .1 S t r u k t u r B a h a s a C + +

1 .2 O b y e k D a s a r D a l a m C + +

1 .3 M e m b e r i N i l a i K e V a r i a b e l ( P e n u g a s a n ) 1 .4 O p e r a t o r A r i t m a t i k a

1 .5 O p e r a t o r R e l a s i o n a l 1 .4 S t r l e n

L a t i h a n S o a l

B A B 2 . S T R U K T U R K E N D A L I P R O G R A M

(Control Structure)

2 .1 S e l e k s i K o n d i s i o n a l M e m a k a i I f

2 .2 S e l e k s i K o n d i s i o n a l M e m a k a i i f . . e l s e 2 .3 I f B e r s a r a n g ( N e s t e d I f )

2 .4 S t r u k t u r S e l e k t i f M e n g g u n a k a n S w i t c h L a t i h a n S o a l

B A B 3 . P E R U L A N G A N /I T E R A S I 3 .1 L o o p W h i l e

3 . 2 L o o p D o . . w h i l e 3 . 3 L o o p F o r

3 . 4 S t a t e m e n t J u m p

3 .4 .1 S t a t e m e n t : B r e a k 3 . 4 . 2 . S t a t e m e n t : C o n t i n u e 3 . 4 . 3 . S t a t e m e n t : G o t o L a t i h a n S o a l

B A B 4 . F U N G S I

4 .1 M a n f a a t P e n g g u n a a n F u n g s i 4 . 2 F o r m a t P e n g g u n a a n F u n g s i 4 . 3 P e l e w a t a n P a r a m e t e r

4 . 4 . V a r i a b e l L o k a l D a n V a r i a b e l G l o b a l 4 . 5 F u n g s i Y a n g T i d a k M e n g e m b a l i k a n N i l a i

4 . 6 A r g u m e n t s D i l e w a t k a n M e l a l u i N i l a i d a n R e f e r e n s i . 4 . 7 F u n g s i O v e r l o a d

4 . 8 R e k u r s i f L a t i h a n S o a l B A B 5 . A R R A Y 5 .1 D e f i n i s i A r r a y

5 . 2 I n i s i a l i s a s i N i l a i A r r a y 5 . 3 M e n g a k s e s E l e m e n A r r a y 5 . 4 A r r a y M u l t i d i m e n s i 5 .5 A r r a y T i p e C h a r

(3)

B A B 6 . P E M R O G R A M A N P O R T P A R A L E L 6 .1 P o r t S e r i a l D a n P a r a l e l

6 . 2 P e n g a l a m a t a n P o r t P a r a l e l L a t i h a n S o a l

B A B 7. O B J E C T - O R I E N T E D P R O G R A M M I N G (O O P ) 7 .1 M e m a n d a n g S e s u a t u S e b a g a i O b j e k

7 . 2 D u n i a T e r s u s u n D a r i O b j e k - O b j e k 7 . 3 O b j e k A b s t r a k D a n I n s t a n t

7 . 4 I n h e r i t a n c e ( P e w a r i s a n )

7 .5 O b j e k D i D u n i a N y a t a S e r t a P e m r o g r a m a n B e r o r i e n t a s i O b j e k 7 . 6 B e k e r j a D e n g a n C l a s s

7 .6 .1 D e f i n i s i C l a s s 7 . 6 . 2 V a r i a b e l D a n C l a s s 7 .7 . M e t h o d

L a t i h a n S o a l B A B 8 . O O P 2

8 .1 P e m a k a i a n S t r u k t u r

(4)

Modul

Pemrograman

Komputer (ARF)

B A B 1

P E N D A H U L U A N B A H A S A C + +

B a h a s a C + + m e r u p a k a n p e r k e m b a n g a n d a r i b a h a s a p e n d a h u l u n y a , y a i t u b a h a s a C . B a h a s a C d i c i p t a k a n o l e h B r i a n K e r n i g h a n d a n D e n n i s R i t c h i e , s e d a n g k a n C + + d i c i p t a k a n o l e h B j a r n e S t r o u s t r u p . B a h a s a C i n i b a n y a k d i g u n a k a n u n t u k m e m b a n g u n p e r a n g k a t l u n a k s e p e r t i M i c r o s o f t W i n d o w s , M i c r o s o f t O f f i c e , d s b . L i n u x y a n g m e r u p a k a n s i s t e m o p e r a s i i b e r s i f a t

open source

j u g a d i k e m b a n g k a n o l e h p r o g r a m m e r d i s e l u r u h d u n i a m e n g g u n a k a n C .

B a h a s a C + + m e m i l i k i k e l e b i h a n d i b a n d i n g k a n d e n g a n B a h a s a C , k a r e n a C + + m e m i l i k i k e m a m p u a n d a l a m h a l O O P

(Object Oriented Programming/P

e m r o g r a m a n B e r o r i e n r t a s i O b y e k ) y a n g m e r u p a k a n t r e n d m a s a k i n i d a l a m b i d a n g p e m r o g r a m a n . D i b a n d i n g k a n d e n g a n J a v a y a n g h a n y a b e r o r i e n t a s i p a d a O O P , C + + m e n g a d o p s i k e m a m p u a n b a h a s a C ( p e m r o g r a m a n t e r s t r u k t u r ) p l u s k e m a m p u a n O O P . J a d i , C + + t i d a k m u r n i O O P .

1.1 S T R U K T U R B A H A S A C + +

S e b e l u m m e m b a h a s a m e n g e n a i O O P , t e r l e b i h d a h u l u d i p e r k e n a l k a n s t r u k t u r u m u m d a n p e r i n t a h - p e r i n t a h d a s a r y a n g d i g u n a k a n p a d a C + + . A p a b i l a a n d a t e l a h m e n g u a s a i b a h a s a C , m a k a s a n g a t m u d a h b a g i a n d a u n t u k m e n g u a s a i C + + . U n t u k m e n g u a s a i b a h a s a C + + , t e r l e b i h d a h u l u h a r u s k i t a p a h a m i s t r u k t u r u m u m k o d e p r o g r a m C + + . U n t u k m e m a h a m i s t r u k t u r u m u m b a h a s a C + + , k i t a c o b a d e n g a n m e m b u a t s e b u a h p r o g r a m s e d e r h a n a s e b a g a i b e r i k u t .

/ / p r o g r a m p e r t a m a d a l a m C + + / / d i b u a t t a n g g a l 2 5 M a r e t 2 0 0 6

# i n c l u d e < i o s t r e a m > i n t m a i n ( )

{

c o u t < < " H e l l o W o r l d ! " < < e n d l ; r e t u r n 0 ;

}

P r o g r a m d i a t a s a k a n m e n g h a s i l k a n k e l u a r a n : " H e l l o W o r l d ! " p a d a l a y a r . U m u m n y a , p a r a p r o g r a m m e r y a n g i n g i n m e n g u a s a i C + + m e m u l a i m e m b u a t p r o g r a m d e n g a n p r o g r a m s e d e r h a n a s e p e r t i d i a t a s , m e n g i n g a t d a l a m p r o g r a m t e r s e b u t t e l a h m e n g a n d u n g k o m p o n e n d a s a r d a r i s e b u a h p r o g r a m C + + .

> C a t a t a n :

K e l u a r a n p r o g r a m y a n g d i h a s i l k a n s e t e l a h a n d a

mengcompile

p r o g r a m d i a t a s u m u m n y a t i d a k t e r l i h a t k a r e n a l a y a r a k a n s e g e r a m e n u t u p s e t e l a h m e n a m p i l k a n t u l i s a n " H e l l o W o r l d ! " . A g a r a n d a d a p a t m e l i h a t k e l u a r a n , t a m b a h k a n b a r i s : g e t c h ( ) ; p a d a a k h i r p r o g r a m .

P e n j e l a s a n p r o g r a m d i a t a s a d a l a h : 1 . / / m y f i r s t p r o g r a m i n C + +

(5)

Modul

Pemrograman

Komputer (ARF)

t u j u a n d i b u a t n y a p r o g r a m ) . B a r i s k o m e n t a r s e l a l u d i a w a l i d e n g a n t a n d a (//) . b a r i s k o m e n t a r t i d a k a k a n d i e k s e k u s i o l e h

compiler

/ d i a b a i k a n .

2 . # i n c l u d e < i o s t r e a m >

M e r u p a k a n p e n g a r a h p r e p r o c e s s o r . # i n c l u d e < i o s t r e a m > b e r a r t i b a h w a m e m b e r i p e r i n t a h k e p a d a p r e p r o c e s s o r u n t u k m e l i b a t k a n

(include)

f i l e s t a n d a r i o s t r e a m . F i l e i o s t r e a m i n i m e r u p a k a n f i l e y a n g d i d a l a m n y a b e r i s i d e k l a r a s i p u s t a k a s t a n d a r i n p u t - o u t p u t p a d a C + + , d a n o l e h k a r e n a n y a d i l i b a t k a n k a r e n a f u n g s i i n i s e l a n j u t n y a a k a n d i p e r g u n a k a n o l e h p r o g r a m .

3 . i n t m a i n ( )

M e r u p a k a n a w a l d a r i f u n g s i u t a m a p a d a C + + . F u n g s i u t a m a i n i m e r u p a k a n a w a l d i m a n a p r o g r a m C + + a k a n m u l a i d i e k s e k u s i . D i d a l a m f u n g s i u t a m a i n i , b i s a j a d i t e r d a p a t j u g a f u n g s i - f u n g s i l a i n ( s e p e r t i y a n g t e l a h a n d a k e t a h u i , b a h w a s e b u a h p r o g r a m y a n g s a n g a t b e s a r a k a n l e b i h m u d a h u n t u k d i t u l i s d e n g a n m e m b a g i n y a / d i p e c a h m e n j a d i b e b e r a p a f u n g s i ) . I b a r a t a n d a m e n u l i s s e b u a h b u k u , a n d a m e m b a g i i s i b u k u m e n j a d i b e b e r a p a b a b , d e m i k i a n j u g a d e n g a n k o d e p r o g r a m .

4 . K u r u n g k u r a w a l b u k a ( { ) d a n t u t u p ( } )

B l o k p r o g r a m p a d a f u n g s i u t a m a d i a w a l i d e n g a n k u r u n g k u r a w a l b u k a ({ ) d a n b e r a k h i r h i n g g a d i t e m u k a n k u r u n g k u r a w a l t u t u p ( } ) . S e m u a s t a t e m e n t y a n g b e r a d a p a d a b l o k p r o g r a m f u n g s i u t a m a i n i l a h y a n g a k a n d i e k s e k u s i o l e h

compiler.

5 . C o u t < < " H e l l o W o r l d "

M e r u p a k a n s t a t e m e n t p a d a C + + . s t a t e m e n t m e r u p a k a n e k s p r e s i ( s e d e r h a n a a t a u k o m p l e k s ) y a n g a k a n m e n g h a s i l k a n e f e k t e r t e n t u s a a t d i e k s e k u s i . S t a t e m e n t c o u t ( b a c a : C - o u t ) a k a n m e n a m p i l k a n k e l u a r a n p a d a l a y a r . c o u t d i d e k l a r a s i k a n p a d a f i l e i o s t r e a m . O l e h k a r e n a i t u l a h f i l e i o s t r e a m d i l i b a t k a n m e l a l u i p e r i n t a h # i n c l u d e < i o s t r e a m > .

T a n d a < < d a l a m C + + b e r a r t i m e y i s i p k a n s t r i n g " H e l l o W o r l d " k e d a l a m a l i r a n k e l u a r a n .

6 . E n d l

M e r u p a k a n p e r i n t a h u n t u k b e r g a n t i b a r i s s e t e l a h m e n u l i s k a n " H e l l o W o r l d " . B i a s a k a n a n d a s e l a l u m e n g g u n a k a n p e r i n t a h g a n t i b a r i s , y a n g m e n a n d a k a n b a h w a a n d a s i a p m e m b e r i k a n i n s t r u k s i p a d a c o m p i l e r u n t u k m e n g e k s e k u s i b a r i s p r o g r a m s e l a n j u t n y a . 7 . R e t u r n 0 ;

s t a t e m e n t r e t u r n m e n y a t a k a n a k h i r d a r i f u n g s i u t a m a . r e t u r n u m u m n y a d i i k u t i d e n g a n k o d e t e r t e n t u ( d a l a m c o n t o h i n i , k o d e r e t u r n a d a l a h 0 ) . r e t u r n 0 m e n y a t a k a n b a h w a p r o g r a m b e k e r j a s e b a g a i m a n a y a n g d i i n g i n k a n t a n p a a d a n y a e r r o r s e l a m a e k s e k u s i . K o d e i n i j u g a m e l a k u k a n t e r m i n a l i s a s i ( m e n u t u p b e r k a s - b e r k a s y a n g d i g u n a k a n ) s e r t a m e n g e m b a l i k a n k e n d a l i p r o g r a m k e s i s t e m o p e r a s i . R e t u r n 0 u m u m n y a d i g u n a k a n u n t u k m e n g a k h i r i p r o g r a m C + + .

A n d a b i s a j u g a m e n u l i s k a n k o d e p r o g r a m d i a t a s s e b a g a i b e r i k u t :

i n t m a i n ( ) { c o u t < < " H e l l o W o r l d " < < e n d l , - r e t u r n 0 ; }

N a m u n p e n u l i s a n d e n g a n c a r a k e d u a t e r s e b u t s a n g a t t i d a k d i a n j u r k a n , k a r e n a k o d e p r o g r a m m e n j a d i s u l i t d i b a c a , d a n s u l i t d i p a h a m i . U s a h a k a n u n t u k s e l a l u b e r p i n d a h k e b a r i s b a r u s e t e l a h a n d a m e n d e k l a r a s i k a n f u n g s i u t a m a , d a n s e t e l a h a d a t a n d a t i t i k k o m a ( ; ) .

(6)

Modul

Pemrograman

Komputer (ARF)

L A T I H A N I.

1. T u l i s k a n k a l i m a t b e r i k u t p a d a l a y a r k o m p u t e r : N a m a : ( is i n a m a a n d a )

N I M : ( is i N I M a n d a )

J u r u s a n : ( is i s e s u a i j u r u s a n a n d a )

P r o g r a m y a n g t e l a h a n d a b u a t h a n y a m e l i b a t k a n p e r i n t a h k e l u a r a n . T e n t u s a j a k i t a t i d a k m e m p e l a j a r i b a h a s a p e m r o g r a m a n h a n y a u n t u k m e n a m p i l k a n k e l u a r a n t e k s s e p e r t i p r o g r a m d i a t a s . P r o g r a m y a n g b a i k u m u m n y a m e l i b a t k a n i n t e r a k s i d e n g a n

user.

J a d i , a d a m a s u k a n y a n g d b e r i k a n o l e h

user.

P r o g r a m d i b a w a h i n i m e l i b a t k a n p e r i n t a h m a s u k a n , y a i t u c i n .

/ / p r o g r a m k e d u a d a l a m C + + / / d i b u a t t a n g g a l 2 5 M a r e t 2 0 0 6

# i n c l u d e < i o s t r e a m > i n t m a i n ( )

{

f l o a t i p k ;

c o u t < < " m a s u k k a n i p k a n d a = " < < f l u s h ; c i n > > i p k ;

c o u t < < " n i l a i I P K a n d a a d a l a h = " < < i p k < < " ( a p i k t e n a n ) " ; r e t u r n 0 ;

}

C a t a t a n :

• F l u s h m e r u p a k a n p e r i n t a h y a n g m i r i p d e n g a n e n d l , n a m u n t i d a k m e n g a k i b a t k a n g a n t i b a r i s b a r u . P r o g r a m d i a t a s a k a n m e m i n t a u s e r m e m a s u k k a n n i l a i I P K . S a a t u s e r m e n g e t i k n i l a i I P K , m a k a n i l a i y a n g d i k e t i k t e r s e b u t

( m e r u p a k a n m a s u k a n ) a k a n d i s i m p a n p a d a

buffer

( m e m o r i ) k o m p u t e r h i n g g a p e n u h . D a l a m h a l i n i , f l u s h d i g u n a k a n u n t u k m e m e r i n t a h k a n k o m p u t e r m e n g o s o n g k a n i s i b u f f e r d a n m e n u l i s k a n n y a k e l a y a r m o n i t o r .

• D i g u n a k a n c i n > > s e b a g a i p e r i n t a h m e m i n t a m a s u k a n d a r i u s e r , p e r h a t i k a n b a h w a c i n d i i k u t i d e n g a n t a n d a > > , s e d a n g k a n c o u t s e l a l u d i i k u t i d e n g a n < < . J a n g a n s a m p a i t e r b a l i k !!

• F l o a t I P K

M e r u p a k a n p e r n y a t a a n d e k l a r a s i v a r i a b e l . S a a t a n d a m e n g e t i k n i l a i I P K , n i l a i t e r s e b u t d i s i m p a n p a d a m e m o r i k o m p u t e r , d e n g a n n a m a I P K . I l u s t r a s i n y a s e b a g a i b e r i k u t .

M e m o r i

(7)

Modul Pemrograman Komputer (ARF)

B A B 8

O O P I I

8 .1 S T R U K T U R

U n t u k d a p a t m e m a h a m i p e m r o g r a m a n O O P p a d a C + + , d i h a r a p k a n a n d a s u d a h m e m a h a m i k o n s e p p e n g g u n a a n t i p e d a t a s t r u k t u r . M i s a l k a n s e b u a h t i p e s t r u k t u r d a l a m p r o g r a m C + + s e b a g a i b e r i k u t :

#include <iostream.h>

#include <conio.h>

#include <stdio.h>

struct atribut

{

char nama [2 0] ;

char alamat [30] ;

float ipk;

} ;

int main ()

{

atribut mhs;

cout<<"nama anda = ";gets(mhs.nama);

cout<<"alamat = ";gets(mhs.alamat);

cout<<"IPK = ";

cin>>(mhs.ipk);

c l r s c r ();

cout<<" SELAMAT DATANG "<<(mhs.nama)<<endl;

cout<<" IPK ANDA = "<<(mhs.ipk);

cout<<" alamat anda di :

"<<(mhs.alamat);

getch();

}

1. B a g a i m a n a k a h h a s i l t a m p i l a n p r o g r a m ? 2 . A p a b e d a f u n g s i

gets

d a n

cin ?

O O P m e l a k u k a n p e m r o g r a m a n m e n g g u n a k a n c l a s s . A p a b i l a p r o g r a m d i a t a s d i j a d i k a n O O P , m a k a d e k l a r a s i t i p e d a t a s t r u k t u r d i u b a h s e b a g a i b e r i k u t :

class atribut

{

public:

char n a m a [2 0] ;

char a l a m a t [30];

float ipk;

} ;

K a t a p u b l i c m e n y a t a k a n b a h w a a n g g o t a k e l a s d a p a t d i a k s e s s e c a r a u m u m . A p a b i l a a n d a m e n g i n g i n k a n a n g g o t a c l a s s t i d a k d a p a t d i a k s e s d i l u a r c l a s s s e c a r a l a n g s u n g , m a k a a n d a j a d i k a n s e b a g a i p r i v a t e. D a l a m O O P , s e t i a p o b j e k d a l a m a n g g o t a k e l a s d a p a t m e m i l i k i m e t h o d ( b e h a v i o r ) t e r t e n t u . U n t u k o b j e k c l a s s a t r r i b u t d i a t a s , t e r d a p a t b e b e r a p a m e t h o d ( b e h a v i o r ) y a n g d a p a t k i t a l a k u k a n , a n t a r a l a i n :

(8)

Modul Pemrograman Komputer (ARF)

1. M a s u k k a n d a t a m h s . 2 . T a m p i l k a n d a t a m h s .

M a k a p r o g r a m O O P s e l e n g k a p n y a a d a l a h s e b a g a i b e r i k u t :

A n a l i s i s :

1. C l a s s a t r i b u t m e m i l i k i 3 a n g g o t a y a n g b e r s i f a t p r i v a t e , y a i t u : n a m a , a l a m a t d a n i p k . C l a s s i n i m e m i l i k i 2 m e t h o d / f u n g s i a n g g o t a y a n g b e r s i f a t p u b l i c , y a i t u : i s i _ d a t a ( ) d a n t a m p i l ( ) .

2.

O b j e k b e r n a m a m h s m e m i l i k i c l a s s a t r i b u t , d i t u n j u k k a n p a d a d e k l a r a s i :

atribut mhs

3 . S e l a n j u t n y a , f u n g s i a n g g o t a d a p a t d i p a n g g i l d i d a l a m f u n g s i

main()

P a d a p r o g r a m d i a t a s , k i t a m e m i l i k i 1 o b j e k b e r n a m a m h s d e n g a n c l a s s a t r i b u t . K i t a d a p a t m e m b e n t u k b e b e r a p a o b j e k d e n g a n c l a s s y a n g s a m a ( f u n g s i i n h e r i t a n c e ? ) . t e n t u s a j a d a t a a n g g o t a m a s i n g - m a s i n g o b j e k a k a n b e r b e d a . M i s a l , k i t a b u a t o b j e k m e n j a d i 2 , y a i t u : m h s _ S 1 d a n m h s D 3 .

(9)

Modul Pemrograman Komputer (ARF)

D a l a m h a l i n i , d e k l a r a s i a n g g o t a c l a s s d a n m e t h o d / b e h a v i o r / f u n g s i a n g g o t a n y a t e t a p . P o t o n g a n f u n g s i d i d a l a m m a i n s e b a g a i b e r i k u t .

int main ()

{

cl r s c r ();

atribut mhs_S1, mhsD3;

mhs_S1.isi_data() ;

mhsD3.isi_data( )

;

cl r s c r ();

mhs_S1.tampil() ;

mhsD3.tampil();

getch();

}

P e r t a n y a a n :

1. B a g a i m a n a k e l u a r a n p r o g r a m ?

2 . A p a y a n g t e r j a d i j i k a d i d a l a m m a i n t e r d a p a t k o d e b e r i k u t :

int main ()

{

clrscr();

atribut mhs_S1, mhsD3;

mhs_S1.isi_data();

mhsD3=mhs_S1;

//apa maksudnya ?

clrscr();

mhsD3.tampil( );

g e t c h ();

}

P a d a O O P , t e r d a p a t 2 c a r a m e n d e f i n i s i k a n m e t h o d / b e h a v i o r / f u n g s i a n g g o t a . C a r a p e r t a m a a d a l a h s e p e r t i y a n g s u d a h k i t a g u n a k a n , d i m a n a f u n g s i a n g g o t a c l a s s k i t a d e f i n i s k a n s e c a r a l a n g s u n g d i d a l a m c l a s s . K e u n t u n g a n b e n t u k s e m a c a m i n i a d a l a h : s e m u a k o d e t e r k u m p u l d a l a m c l a s s , s e h i n g g a m e m p e r c e p a t p e n g e k s e k u s i a n , n a m u n m e m i l i k i k e l e m a h a n k a r e n a k o d e p r o g r a m y a n g d i b a n g k i t k a n m e n j a d i b e s a r , t e r u t a m a a p a b i l a b a n y a k f u n g s i a n g g o t a y a n g d i d e f i n i s i k a n d a n b a n y a k o b j e k y a n g t e r l i b a t . B e n t u k y a n g k e d u a , k i t a d e f i n i s i k a n f u n g s i c l a s s d i l u a r c l a s s s e p e r t i d i b a w a h i n i . U m u m n y a , b e n t u k k e d u a i n i p a l i n g b a n y a k d i g u n a k a n , t e r u t a m a a p a b i l a f u n g s i c l a s s s a n g a t p a n j a n g d a n k o m p l e k s . D e n g a n c a r a p e r t a m a a t a u p u n k e d u a , a k a n d i d a p a t k a n k e l u a r a n y a n g s a m a .

#include <iostream.h>

#include <conio.h>

#include <stdio.h>

class atribut

{

private:

char n a m a [2 0];

char a l a m a t [30];

float ipk;

public:

(10)

Modul Pemrograman Komputer (ARF)

void isi_data();

void t ampil();

};

int main ()

{

cl r s c r ();

atribut mhs;

mhs.isi_data( )

;

cl r s c r ();

mhs.tampil()

;

getch();

}

void atribut::isi_data()

{

cout<<"nama

= "; gets(nama);

cout<<"alamat

= "; gets(alamat);

cout<<"ipk = "; cin>>ipk;

}

void atribut::tampil()

{

cout<<"nama anda adalah= "<<nama<<endl;

cout<<"anda beralamat di= "<<alamat<<endl;

cout<<"IPK anda ternyata= "<<ipk<<endl;

}

C a t a t a n : k a t a v o i d p a d a f u n g s i a n g g o t a b e r a r t i t i d a k a d a n i l a i b a l i k n y a ( v o i d ) . P e l a j a r i k e m b a l i : f u n c t i o n .

(11)

Modul Pemrograman Komputer (ARF)

B A B 8

O O P I I

8 .1 S T R U K T U R

U n t u k d a p a t m e m a h a m i p e m r o g r a m a n O O P p a d a C + + , d i h a r a p k a n a n d a s u d a h m e m a h a m i k o n s e p p e n g g u n a a n t i p e d a t a s t r u k t u r . M i s a l k a n s e b u a h t i p e s t r u k t u r d a l a m p r o g r a m C + + s e b a g a i b e r i k u t :

#include <iostream.h>

#include <conio.h>

#include <stdio.h>

struct atribut

{

char nama [2 0] ;

char alamat [30] ;

float ipk;

} ;

int main ()

{

atribut mhs;

cout<<"nama anda = ";gets(mhs.nama);

cout<<"alamat = ";gets(mhs.alamat);

cout<<"IPK = ";

cin>>(mhs.ipk);

c l r s c r ();

cout<<" SELAMAT DATANG "<<(mhs.nama)<<endl;

cout<<" IPK ANDA = "<<(mhs.ipk);

cout<<" alamat anda di :

"<<(mhs.alamat);

getch();

}

1. B a g a i m a n a k a h h a s i l t a m p i l a n p r o g r a m ? 2 . A p a b e d a f u n g s i

gets

d a n

cin ?

O O P m e l a k u k a n p e m r o g r a m a n m e n g g u n a k a n c l a s s . A p a b i l a p r o g r a m d i a t a s d i j a d i k a n O O P , m a k a d e k l a r a s i t i p e d a t a s t r u k t u r d i u b a h s e b a g a i b e r i k u t :

class atribut

{

public:

char n a m a [2 0] ;

char a l a m a t [30];

float ipk;

} ;

K a t a p u b l i c m e n y a t a k a n b a h w a a n g g o t a k e l a s d a p a t d i a k s e s s e c a r a u m u m . A p a b i l a a n d a m e n g i n g i n k a n a n g g o t a c l a s s t i d a k d a p a t d i a k s e s d i l u a r c l a s s s e c a r a l a n g s u n g , m a k a a n d a j a d i k a n s e b a g a i p r i v a t e. D a l a m O O P , s e t i a p o b j e k d a l a m a n g g o t a k e l a s d a p a t m e m i l i k i m e t h o d ( b e h a v i o r ) t e r t e n t u . U n t u k o b j e k c l a s s a t r r i b u t d i a t a s , t e r d a p a t b e b e r a p a m e t h o d ( b e h a v i o r ) y a n g d a p a t k i t a l a k u k a n , a n t a r a l a i n :

(12)

Modul Pemrograman Komputer (ARF)

1. M a s u k k a n d a t a m h s . 2 . T a m p i l k a n d a t a m h s .

M a k a p r o g r a m O O P s e l e n g k a p n y a a d a l a h s e b a g a i b e r i k u t :

A n a l i s i s :

1. C l a s s a t r i b u t m e m i l i k i 3 a n g g o t a y a n g b e r s i f a t p r i v a t e , y a i t u : n a m a , a l a m a t d a n i p k . C l a s s i n i m e m i l i k i 2 m e t h o d / f u n g s i a n g g o t a y a n g b e r s i f a t p u b l i c , y a i t u : i s i _ d a t a ( ) d a n t a m p i l ( ) .

2.

O b j e k b e r n a m a m h s m e m i l i k i c l a s s a t r i b u t , d i t u n j u k k a n p a d a d e k l a r a s i :

atribut mhs

3 . S e l a n j u t n y a , f u n g s i a n g g o t a d a p a t d i p a n g g i l d i d a l a m f u n g s i

main()

P a d a p r o g r a m d i a t a s , k i t a m e m i l i k i 1 o b j e k b e r n a m a m h s d e n g a n c l a s s a t r i b u t . K i t a d a p a t m e m b e n t u k b e b e r a p a o b j e k d e n g a n c l a s s y a n g s a m a ( f u n g s i i n h e r i t a n c e ? ) . t e n t u s a j a d a t a a n g g o t a m a s i n g - m a s i n g o b j e k a k a n b e r b e d a . M i s a l , k i t a b u a t o b j e k m e n j a d i 2 , y a i t u : m h s _ S 1 d a n m h s D 3 .

(13)

Modul Pemrograman Komputer (ARF)

D a l a m h a l i n i , d e k l a r a s i a n g g o t a c l a s s d a n m e t h o d / b e h a v i o r / f u n g s i a n g g o t a n y a t e t a p . P o t o n g a n f u n g s i d i d a l a m m a i n s e b a g a i b e r i k u t .

int main ()

{

cl r s c r ();

atribut mhs_S1, mhsD3;

mhs_S1.isi_data() ;

mhsD3.isi_data( )

;

cl r s c r ();

mhs_S1.tampil() ;

mhsD3.tampil()

;

getch();

}

P e r t a n y a a n :

1. B a g a i m a n a k e l u a r a n p r o g r a m ?

2 . A p a y a n g t e r j a d i j i k a d i d a l a m m a i n t e r d a p a t k o d e b e r i k u t :

int main ()

{

clrscr();

atribut mhs_S1, mhsD3;

mhs_S1.isi_data();

mhsD3=mhs_S1;

//apa maksudnya ?

clrscr();

mhsD3.tampil( );

g e t c h ();

}

P a d a O O P , t e r d a p a t 2 c a r a m e n d e f i n i s i k a n m e t h o d / b e h a v i o r / f u n g s i a n g g o t a . C a r a p e r t a m a a d a l a h s e p e r t i y a n g s u d a h k i t a g u n a k a n , d i m a n a f u n g s i a n g g o t a c l a s s k i t a d e f i n i s k a n s e c a r a l a n g s u n g d i d a l a m c l a s s . K e u n t u n g a n b e n t u k s e m a c a m i n i a d a l a h : s e m u a k o d e t e r k u m p u l d a l a m c l a s s , s e h i n g g a m e m p e r c e p a t p e n g e k s e k u s i a n , n a m u n m e m i l i k i k e l e m a h a n k a r e n a k o d e p r o g r a m y a n g d i b a n g k i t k a n m e n j a d i b e s a r , t e r u t a m a a p a b i l a b a n y a k f u n g s i a n g g o t a y a n g d i d e f i n i s i k a n d a n b a n y a k o b j e k y a n g t e r l i b a t . B e n t u k y a n g k e d u a , k i t a d e f i n i s i k a n f u n g s i c l a s s d i l u a r c l a s s s e p e r t i d i b a w a h i n i . U m u m n y a , b e n t u k k e d u a i n i p a l i n g b a n y a k d i g u n a k a n , t e r u t a m a a p a b i l a f u n g s i c l a s s s a n g a t p a n j a n g d a n k o m p l e k s . D e n g a n c a r a p e r t a m a a t a u p u n k e d u a , a k a n d i d a p a t k a n k e l u a r a n y a n g s a m a .

#include <iostream.h>

#include <conio.h>

#include <stdio.h>

class atribut

{

private:

char n a m a [2 0];

char a l a m a t [30];

float ipk;

public:

(14)

Modul Pemrograman Komputer (ARF)

void isi_data();

void t ampil();

};

int main ()

{

cl r s c r ();

atribut mhs;

mhs.isi_data( )

;

cl r s c r ();

mhs.tampil()

;

getch();

}

void atribut::isi_data()

{

cout<<"nama

= "; gets(nama);

cout<<"alamat

= "; gets(alamat);

cout<<"ipk = "; cin>>ipk;

}

void atribut::tampil()

{

cout<<"nama anda adalah= "<<nama<<endl;

cout<<"anda beralamat di= "<<alamat<<endl;

cout<<"IPK anda ternyata= "<<ipk<<endl;

}

C a t a t a n : k a t a v o i d p a d a f u n g s i a n g g o t a b e r a r t i t i d a k a d a n i l a i b a l i k n y a ( v o i d ) . P e l a j a r i k e m b a l i : f u n c t i o n .

Referensi

Dokumen terkait

Barang milik daerah jenisnya beragam, ada yan bernilai strategis dan ada juga yang bernilai administratif. Perlunya pengendalian dari ligkungan adalah jangan sampai barang milik

Pasal 34 ayat (4) UNCITRAL Model Law mengatur bahwa pengadilan ketika dimintakan untuk membatalkan suatu putusan arbitrase internasional dapat menunda proses pembatalan

Data yang diperoleh dianalisis dengan menjelaskan konteks terlebih dahulu untuk memudahkan proses menganalisis tindak tutur komisif dan modus kalimat yang

Hasil penelitian menunjukkan bahwa terjadi penurunan kadar lengas tanah, konduktivitas stomata, laju transpirasi, dan KAN pada semua varietas, sedangkan PAD dan kadar prolin

Banyak networker gagal hanya karena selalu melihat orang lain, dan membandingkan dengan diri kita, yang benar dan seharusnya kita lakukan adalah bagaimana kita melihat

Dalam skripsi ini penulis berusaha untuk membangun sistem pendukung keputusan yang menerapkan metode TOPSIS dalam mengolah nilai siswa pada setiap aspek

Rugi-rugi tembaga adalah rugi-rugi daya yang terjadi di dalam kumparan medan dan kumparan jangkar generator pada saat dibebani. Karena sikat memiliki nilai resistansi dan juga

Dari pernyataan semua informan di atas dapat di lihat bahwa segmentasi demografik yang dilakukan oleh UD Mebel Aneka sesuai dengan pernyataan dari Kotler dan Amstrong (1997), yang