background image

A

lg

o

ry

tm

ik

a

 i

 P

ro

g

ra

m

o

w

a

n

ie

.

In

st

ru

k

cj

st

er

u

ce

 i

 p

ęt

li

 c

d

.

Z

a

k

ła

d

 Z

a

s

to

s

o

w

a

ń

 I

n

fo

rm

a

ty

k

w

 I

n

Ŝ

y

n

ie

ri

L

ą

d

o

w

e

j

W

y

d

z

ia

ł 

In

Ŝ

y

n

ie

ri

L

ą

d

o

w

e

j

P

o

li

te

c

h

n

ik

a

 W

a

rs

z

a

w

s

k

a

S

ła

w

o

m

ir

 C

z

a

r

n

e

c

k

i

background image

P

o

w

n

y

w

a

n

ie

 w

a

rt

o

śc

i

•P

o

d

ej

m

o

w

an

ie

 d

ec

y

zj

w

y

m

ag

m

ec

h

an

iz

m

u

 p

o

w

n

y

w

an

ia

  

w

ie

lk

o

śc

(i

n

st

ru

k

cj

st

er

u

cy

ch

),

 k

re

 b

ar

d

zo

 c

st

o

w

y

k

o

rz

y

st

u

 o

p

er

a

to

ry

 l

o

g

ic

zn

e

 

•M

am

y

 6

 p

o

d

st

a

w

o

w

y

ch

 o

p

er

a

to

w

 l

o

g

ic

zn

y

ch

:

<

m

n

ie

js

zy

 n

<

=

m

n

ie

js

zy

 n

 l

u

b

 r

ó

w

n

y

>

w

k

sz

y

 n

>

=

w

k

sz

y

 n

 l

u

b

 r

ó

w

n

y

=

=

w

n

y

!=

n

ie

 r

ó

w

n

y

background image

O

p

er

a

to

p

o

w

n

a

n

ia

 =

=

m

a

 d

w

a

u

m

ie

sz

cz

o

n

o

b

o

k

 s

ie

b

ie

 z

n

a

k

'=

'.

 

O

p

er

a

to

p

rz

y

p

is

a

n

ia

 =

m

a

 j

ed

en

 z

n

a

k

 '

=

'.

 

C

st

ą

 p

o

m

y

łk

ą

 j

es

u

Ŝy

w

a

n

ie

 o

p

er

a

to

ra

 =

p

rz

y

p

is

a

n

ia

 w

 m

ie

js

ca

ch

g

d

zi

p

o

w

in

ie

n

 b

y

ć

u

Ŝy

ty

 o

p

er

a

to

p

o

w

n

a

n

ia

 =

=

 .

background image

•K

d

y

 z

 t

y

ch

 o

p

er

at

o

w

 p

o

w

n

u

je

 z

so

b

ą 

d

w

ie

 w

ar

to

śc

zw

ra

ca

je

d

n

ą 

d

w

ó

ch

 w

ar

to

śc

b

o

o

lo

w

sk

ic

h

tr

u

(p

ra

w

d

a

)

fa

ls

(f

a

łs

z)

 

•P

o

n

ej

 k

il

k

p

rz

y

k

ła

d

ó

w

 u

Ŝy

ci

o

p

er

at

o

w

 l

o

g

ic

zn

y

ch

•Z

ó

Ŝm

y

Ŝe

 z

m

ie

n

n

ca

łk

o

w

it

i

j

zo

st

y

 z

ai

n

ic

ja

li

zo

w

an

o

d

p

o

w

ie

d

n

io

 w

ar

to

śc

ia

m

1

0

-5

•W

te

d

y

 w

ar

to

ść

 b

o

o

lo

w

sk

k

d

eg

o

 z

 w

y

ra

Ŝe

n

ia

,

 >

 j

 

!=

 j

 

>

 8

 

<

=

 j

+

1

5

b

ęd

zi

tr

u

e

.

background image

In

st

ru

k

cj

a

 s

te

ru

ca

 

if

P

o

d

st

aw

o

w

in

st

ru

k

cj

if

p

o

zw

al

n

w

y

k

o

n

an

ie

 p

o

je

d

y

n

cz

ej

 

in

st

ru

k

cj

lu

b

 b

lo

k

u

 i

n

st

ru

k

cj

za

w

ar

ty

ch

 p

o

m

d

zy

 n

aw

ia

sa

m

{

..

.}

w

 p

rz

y

p

ad

k

u

 k

ie

d

y

 w

ar

u

n

ek

 (

co

n

d

it

io

n

m

w

ar

to

ść

 l

o

g

ic

zn

ą 

tr

u

e

background image

in

t

F

ix

;

ci

n

 >

>

 F

ix

;

if

 

(F

ix

>

0

)

co

u

t<

<

"p

o

si

ti

v

n

u

m

b

er

"<

<

en

d

l;

•T

es

to

w

an

y

 w

ar

u

n

ek

 p

o

ja

w

ia

 s

 w

 n

aw

ia

sa

ch

 (

 )

 z

o

w

em

 

k

lu

cz

o

w

y

m

 

if

•Z

w

ćm

y

 u

w

ag

ę 

n

p

o

ło

Ŝe

n

ie

 ś

re

d

n

ik

background image

in

t

F

ix

;

ci

n

 >

>

 F

ix

;

if

(F

ix

 >

 0

)

{

co

u

t<

<

"p

o

si

ti

v

n

u

m

b

er

"<

<

en

d

l;

co

u

t<

<

"F

ix

 =

 "

<

<

F

ix

<

<

en

d

l;

}

•W

 p

rz

y

k

ła

d

zi

e,

 d

w

ie

 i

n

st

ru

k

cj

w

 b

lo

k

u

 b

ęd

ą 

w

y

k

o

n

an

ty

lk

o

 j

li

w

ar

to

ść

 l

o

g

ic

zn

w

y

ra

Ŝe

n

ia

 (

F

ix

 >

 0

)

b

ęd

zi

tr

u

e

b

ez

 n

aw

ia

w

 

{

..

.

}

je

d

y

n

ie

 p

ie

rw

sz

in

st

ru

k

cj

w

y

k

o

n

ab

y

 s

n

at

o

m

ia

st

 d

ru

g

in

st

ru

k

cj

a

co

u

t<

<

"F

ix

 =

 "

<

<

F

ix

<

<

en

d

l;

w

y

k

o

n

y

w

ab

y

 s

 z

aw

sz

n

ie

za

le

Ŝn

ie

 o

d

 w

ar

to

śc

lo

g

ic

zn

ej

 

w

y

ra

Ŝe

n

ia

 (

F

ix

 >

 0

).

 

•Z

au

w

m

y

Ŝe

 ś

re

d

n

ik

 p

o

ja

w

ia

 s

 p

o

 k

d

ej

 i

n

st

ru

k

cj

n

ie

 p

o

ja

w

ia

 

si

ę 

n

at

o

m

ia

st

 p

o

 z

n

ak

u

 

}

k

ry

 z

am

y

k

b

lo

k

.

•W

 b

lo

k

u

 m

o

Ŝe

 b

y

ć 

d

o

w

o

ln

li

cz

b

in

st

ru

k

cj

i.

 

•J

li

 i

n

st

ru

k

cj

if

zw

ci

ła

b

y

 

fa

ls

e

w

te

d

y

 Ŝ

ad

n

in

st

ru

k

cj

n

ie

 b

ęd

zi

e

w

y

k

o

n

an

a.

background image

Z

a

g

n

ie

Ŝd

Ŝa

n

ie

 i

n

st

ru

k

cj

if

•I

n

st

ru

k

cj

ą 

w

y

k

o

n

y

w

an

ą 

p

o

 i

n

st

ru

k

cj

if

m

o

Ŝe

 b

y

ć 

k

o

le

jn

in

st

ru

k

cj

if

.

•T

ak

sp

o

b

 u

Ŝy

ci

n

az

y

w

am

y

 z

ag

n

ie

Ŝd

Ŝa

n

ie

m

 i

n

st

ru

k

cj

if

•L

ic

zb

k

o

le

jn

y

ch

 z

ag

n

ie

Ŝd

Ŝo

n

y

ch

 i

n

st

ru

k

cj

if

m

o

Ŝe

 b

y

ć 

d

o

w

o

ln

a.

background image

d

o

u

b

le

F

ix

;

ci

n

 >

>

 F

ix

;

if

(F

ix

 >

 0

)

{

if

(F

ix

 <

 1

)

co

u

t<

<

"n

u

m

b

er

 l

es

s

th

en

1

"<

<

en

d

l;

if

(F

ix

 >

 1

)

co

u

t<

<

"n

u

m

b

er

 g

re

at

er

 t

h

en

1

"<

<

en

d

l;

co

u

t<

<

"F

ix

 =

 "

<

<

F

ix

<

<

en

d

l;

}

•J

li

 z

m

ie

n

n

F

ix

b

ęd

zi

d

o

d

at

n

ia

 t

o

 s

te

ro

w

an

ie

 p

ro

g

ra

m

em

 b

ęd

zi

e

p

rz

ek

az

an

d

o

 b

lo

k

u

 

{

 }

w

 z

al

n

o

śc

o

d

 w

ar

to

śc

zm

ie

n

n

ej

 

F

ix

b

ęd

zi

lu

b

 n

ie

 b

ęd

zi

w

y

św

ie

tl

o

n

y

 o

d

p

o

w

ie

d

n

n

ap

is

.

•D

la

 

F

ix

 =

=

1

n

ie

 z

o

st

an

ie

 w

y

św

ie

tl

o

n

y

 Ŝ

ad

en

 n

ap

is

•J

li

 n

at

o

m

ia

st

 z

m

ie

n

n

F

ix

b

ęd

zi

d

o

d

at

n

ia

 t

o

 z

aw

sz

b

ęd

zi

e

w

y

św

ie

tl

o

n

w

ar

to

ść

 t

ej

 z

m

ie

n

n

ej

.

background image

in

t

F

ix

;

ci

n

 >

>

 F

ix

;

if

(F

ix

 %

 2

)

co

u

t<

<

"F

ix

 i

an

 o

d

d

 n

u

m

b

er

"<

<

en

d

l;

•P

o

 w

cz

y

ta

n

iu

 w

ar

to

śc

F

ix

sp

ra

w

d

za

n

je

st

 w

ar

to

ść

 r

es

zt

y

 z

 d

zi

el

en

ia

te

w

ar

to

śc

p

rz

ez

 2

 (

u

Ŝy

ci

o

p

er

at

o

ra

 %

ja

k

o

 w

ar

u

n

ek

 d

la

 i

n

st

ru

k

cj

if

.

•W

 t

y

m

 p

rz

y

p

ad

k

u

w

ar

to

śc

 w

y

ra

Ŝe

n

ia

 p

n

ce

g

o

 r

o

 w

ar

u

n

k

u

 w

 

in

st

ru

k

cj

if

je

st

 t

y

p

 c

k

o

w

it

y

 a

 n

ie

 l

o

g

ic

zn

y

 t

y

p

 

b

o

o

l

•N

ie

 j

es

to

 b

łą

d

p

o

n

ie

w

 i

n

st

ru

k

cj

if

in

te

rp

re

tu

je

 a

 k

d

ą 

n

ie

ze

ro

w

ą 

w

ar

to

ść

 w

y

ra

Ŝe

n

ia

 j

ak

o

 p

ra

w

d

ę 

tr

u

e

ze

ro

 i

n

te

rp

re

to

w

an

je

st

 z

aw

sz

ja

k

o

 f

sz

 

fa

ls

e

•I

n

n

y

m

o

w

y

w

 n

as

zy

m

 p

rz

y

k

ła

d

zi

e,

 i

n

st

ru

k

cj

if

(F

ix

 %

 2

)

je

st

 r

ó

w

n

o

w

n

in

st

ru

k

cj

if

(F

ix

 %

 2

 !

=

 0

)

.

•J

li

 r

es

zt

ą 

b

ęd

zi

1

to

 w

ar

u

n

ek

 m

w

ar

to

ść

 l

o

g

ic

zn

ą 

tr

u

e

k

o

le

jn

ą 

in

st

ru

k

cj

ą 

b

ęd

zi

w

y

św

ie

tl

en

ie

 n

ek

ra

n

ie

 o

d

p

o

w

ie

d

n

ie

g

o

 n

ap

is

u

.

•J

li

 r

es

zt

ą 

b

ęd

zi

0

w

ar

u

n

ek

 b

ęd

zi

m

ia

ł 

w

ar

to

ść

 l

o

g

ic

zn

ą 

fa

ls

e

n

ic

 

n

ie

 z

o

st

an

ie

 w

y

k

o

n

an

e.

 

R

o

zs

ze

rz

o

n

a

 i

n

st

ru

k

cj

a

 

if

1

 –

tr

u

e

0

 –

fa

ls

e

background image

In

st

ru

k

cj

a

 

if

 –

el

se

K

o

m

b

in

ac

ja

 

if

-e

ls

u

m

o

Ŝl

iw

ia

 w

y

b

ó

p

o

m

d

zy

 d

w

o

m

o

p

cj

am

i.

 

P

o

n

sz

y

 s

ch

em

at

 i

lu

st

ru

je

 i

n

st

ru

k

cj

ę 

if

-e

ls

e

:

•S

tr

za

łk

n

 

d

ia

g

ra

m

ie

 

w

sk

az

u

se

k

w

en

cj

 

w

y

k

o

n

an

ia

 

in

st

ru

k

cj

i,

 

w

 z

al

n

o

śc

o

d

 w

ar

to

śc

lo

g

ic

zn

ej

 w

in

st

ru

k

cj

if

co

n

d

it

io

n

 

(

tr

u

e

lu

b

 

fa

ls

e

)

background image

in

t

F

ix

;

ci

n

 >

>

 F

ix

;

if

(F

ix

 %

 2

)

co

u

t<

<

"F

ix

 i

an

 o

d

d

 n

u

m

b

er

"<

<

en

d

l;

el

se

co

u

t<

<

"F

ix

 i

an

 e

v

en

 n

u

m

b

er

"<

<

en

d

l;

co

u

t<

<

"F

ix

 =

 "

<

<

F

ix

<

<

en

d

l;

in

t

F

ix

;

ci

n

 >

>

 F

ix

;

if

(F

ix

 %

 2

)

{

co

u

t<

<

"F

ix

 i

an

 o

d

d

 n

u

m

b

er

"<

<

en

d

l;

co

u

t<

<

"F

ix

 =

 "

<

<

F

ix

<

<

en

d

l;

}

el

se

{

co

u

t<

<

"F

ix

 i

an

 e

v

en

 n

u

m

b

er

"<

<

en

d

l;

co

u

t<

<

"F

ix

 =

 "

<

<

F

ix

<

<

en

d

l;

}

•W

y

k

o

n

an

ie

 o

b

u

 k

o

d

ó

w

 j

es

t

id

en

ty

cz

n

e,

 a

le

 k

o

d

 w

 

p

ie

rw

sz

y

m

 p

rz

y

k

ła

d

zi

je

st

k

ts

zy

 i

 p

rz

ej

rz

y

st

sz

y

☺☺☺☺



background image

W

a

ru

n

k

w

ie

lu

 a

lt

er

n

a

ty

w

•Z

ap

is

 z

ag

n

ie

Ŝd

Ŝo

n

ej

 i

n

st

ru

k

cj

if

m

o

Ŝe

 b

y

ć 

u

p

ro

sz

cz

o

n

y

 i

 z

as

p

io

n

y

tz

w

w

ar

u

n

k

am

w

ie

lu

 a

lt

er

n

at

y

w

Z

o

b

ac

zm

y

 t

o

 n

p

rz

y

k

ła

d

zi

e:

#

in

cl

u

d

e

<

io

st

re

am

>

u

si

n

g

n

a

m

es

p

a

ce

st

d

;

in

t

m

ai

n

()

{

co

n

st

d

o

u

b

le

m

in

W

arm

W

o

rk

in

g

=

3

0

;

co

n

st

d

o

u

b

le

m

ax

W

arm

W

o

rk

in

g

=

6

0

;

d

o

u

b

le

te

m

pe

ra

tu

re

;

co

u

t<

<

"t

em

pe

ra

tu

re

=

 "

;

ci

n

>

>

te

m

pe

ra

tu

re

;

if

(t

em

pe

ra

tu

re

<

m

in

W

arm

W

o

rk

in

g

)

co

u

t<

<

en

d

l<

<

"C

o

ld

 W

o

rk

in

g

 P

ro

ce

ss

"<

<

en

d

l;

el

se

if

(t

em

pe

ra

tu

re

<

=

m

ax

W

arm

W

o

rk

in

g

)

co

u

t<

<

en

d

l<

<

"W

arm

 W

o

rk

in

g

 P

ro

ce

ss

"<

<

en

d

l;

el

se

co

u

t<

<

en

d

l<

<

"H

o

W

o

rk

in

g

 P

ro

ce

ss

"<

<

en

d

l;

re

tu

rn

0

;

}

background image

#

in

cl

u

d

e

<

io

st

re

am

>

u

si

n

g

n

a

m

es

p

a

ce

st

d

;

in

t

m

ai

n

()

{

co

n

st

d

o

u

b

le

m

in

W

arm

W

o

rk

in

g

=

3

0

;

co

n

st

d

o

u

b

le

m

ax

W

arm

W

o

rk

in

g

=

6

0

;

d

o

u

b

le

te

m

pe

ra

tu

re

;

co

u

t<

<

"t

em

pe

ra

tu

re

=

 "

;

ci

n

>

>

te

m

pe

ra

tu

re

;

if

(t

em

pe

ra

tu

re

<

m

in

W

arm

W

o

rk

in

g

)

co

u

t<

<

en

d

l<

<

"C

o

ld

 W

o

rk

in

g

 P

ro

ce

ss

"<

<

en

d

l;

el

se

if

(t

em

pe

ra

tu

re

<

=

m

ax

W

arm

W

o

rk

in

g

)

co

u

t<

<

en

d

l<

<

"W

arm

 W

o

rk

in

g

 P

ro

ce

ss

"<

<

en

d

l;

el

se

co

u

t<

<

en

d

l<

<

"H

o

W

o

rk

in

g

 P

ro

ce

ss

"<

<

en

d

l;

re

tu

rn

0

;

}

•T

ak

za

p

is

 c

zy

n

k

o

d

 b

ar

d

zi

ej

 p

rz

ej

rz

y

st

y

 i

 z

ro

zu

m

ia

ły

P

o

ja

w

ie

n

ie

 s

k

o

le

jn

ej

 i

n

st

ru

k

cj

el

se

zd

et

er

m

in

o

w

an

je

st

 p

rz

ez

 n

ie

sp

n

ie

n

ie

 

w

ar

u

n

k

u

 w

 i

n

st

ru

k

cj

el

se

b

ez

p

o

śr

ed

n

io

 j

ą 

p

o

p

rz

ed

za

ce

j.

•I

n

st

ru

k

cj

p

o

 o

st

at

n

ie

in

st

ru

k

cj

el

se

za

w

sz

si

ę 

w

y

k

o

n

aj

ą 

o

 i

le

 

w

sz

y

st

k

ie

 p

o

p

rz

ed

n

ie

 w

ar

u

n

k

p

rz

y

 

el

se

 i

f

b

y

ły

b

y

 f

sz

y

w

e.

 

background image

co

n

st

d

o

u

b

le

t0

=

0

;

co

n

st

d

o

u

b

le

t1

=

1

0

0

;

co

n

st

d

o

u

b

le

t2

=

1

0

0

0

;

co

n

st

d

o

u

b

le

t3

=

1

0

0

0

0

0

0

;

d

o

u

b

le

te

m

p

er

at

u

re

;

co

u

t<

<

"t

em

p

er

at

u

re

=

 "

;

ci

n

>

>

te

m

p

er

at

u

re

;

if

(t

em

p

er

at

u

re

<

 t

0

)

co

u

t<

<

en

d

l<

<

"t

em

p

er

at

u

re

<

 "

<

<

t0

<

<

en

d

l;

el

se

if

(t

em

p

er

at

u

re

<

t1

)

co

u

t<

<

en

d

l<

<

t0

<

<

"<

=

te

m

p

er

at

u

re

<

 "

<

<

t1

<

<

en

d

l;

el

se

if

(t

em

p

er

at

u

re

<

t2

)

co

u

t<

<

en

d

l<

<

t1

<

<

"<

=

te

m

p

er

at

u

re

<

 "

<

<

t2

<

<

en

d

l;

el

se

if

(t

em

p

er

at

u

re

<

t3

)

co

u

t<

<

en

d

l<

<

t2

<

<

"<

=

te

m

p

er

at

u

re

<

 "

<

<

t3

<

<

en

d

l;

el

se

co

u

t<

<

en

d

l<

<

t3

<

<

"<

=

te

m

p

er

at

u

re

"<

<

en

d

l;

background image

•P

am

ta

jm

y

Ŝe

 „

el

se

” 

je

st

 z

aw

sz

zw

za

n

o

st

at

n

im

 

p

o

p

rz

ed

za

cy

m

 „

if

”.

•W

ci

ęc

ia

 n

ie

 m

a

 w

 j

ęz

y

k

u

 C

+

+

 Ŝ

a

d

n

eg

o

 z

n

a

cz

en

ia

 !

!!

#

in

cl

u

d

e

<

io

st

re

am

>

u

si

n

g

n

a

m

es

p

a

ce

st

d

;

v

o

id

m

ai

n

()

{

d

o

u

b

le

x

;

ci

n

>

>

x

;

if

(x

 !

=

 0

)

if

(x

 <

 1

)

co

u

t<

<

1

/x

<

<

en

d

l;

el

se

co

u

t<

<

"x

 i

eq

u

al

 t

o

 0

";

}

#

in

cl

u

d

e

<

io

st

re

am

>

u

si

n

g

n

a

m

es

p

a

ce

st

d

;

v

o

id

m

ai

n

()

{

d

o

u

b

le

x

;

ci

n

>

>

x

;

if

(x

 !

=

 0

)

if

(x

 <

 1

)

co

u

t<

<

1

/x

<

<

en

d

l;

el

se

co

u

t<

<

"x

 i

eq

u

al

 t

o

 0

"<

<

en

d

l;

}

•K

o

d

 o

b

y

d

w

u

 p

o

w

y

Ŝs

zy

ch

 p

rz

y

k

ła

d

ó

w

 j

es

id

en

ty

cz

n

y

.

•B

ra

k

 w

ci

ęc

ia

 p

rz

y

 i

n

st

ru

k

cj

el

se

w

 p

ie

rw

sz

y

m

 k

o

d

zi

n

ie

 w

p

ły

w

a

n

p

ie

rw

sz

ą 

in

st

ru

k

cj

ę 

if

n

p

d

la

 

x

 =

 2

.5

 

o

tr

zy

m

am

y

 (

ch

y

b

?)

„n

ie

sp

o

d

zi

ew

an

y

” 

n

ap

is

x

 i

eq

u

al

 t

o

 0

.

background image

•W

y

n

ik

to

 z

 f

ak

tu

Ŝe

 o

b

k

o

d

y

 s

ą 

w

n

o

w

n

n

as

p

u

ce

m

u

 

k

o

d

o

w

i:

#

in

cl

u

d

e

<

io

st

re

am

>

u

si

n

g

n

a

m

es

p

a

ce

st

d

;

v

o

id

m

ai

n

()

{

d

o

u

b

le

x

;

ci

n

>

>

x

;

if

(x

 !

=

 0

)

{

if

(x

 <

 1

)

co

u

t<

<

1

/x

<

<

en

d

l;

el

se

co

u

t<

<

"x

 i

eq

u

al

 t

o

 0

"<

<

en

d

l;

}

}



p

ew

n

o

śc

n

ie

 b

y

ło

 n

a

sz

ą

 

in

te

n

cj

ą

 p

is

a

ć 

n

o

n

se

n

s!

background image

#

in

cl

u

d

e

<

io

st

re

am

>

u

si

n

g

n

a

m

es

p

a

ce

st

d

;

v

o

id

m

ai

n

()

{

d

o

u

b

le

x

;

ci

n

>

>

x

;

if

(x

 !

=

 0

)

{

if

(x

 <

 1

)

co

u

t<

<

1

/x

<

<

en

d

l;

}

el

se

co

u

t<

<

"x

 i

eq

u

al

 t

o

 0

"<

<

en

d

l;

}

•A

b

y

 p

o

p

ra

w

n

ie

 z

ap

is

 k

o

d

m

u

si

m

y

 w

 t

ej

 s

y

tu

ac

ji

 d

o

d

 n

aw

ia

sy

{

..

.

}

co

 p

o

k

az

an

o

 n

p

o

n

sz

y

m

 (

p

o

p

ra

w

io

n

y

m

p

rz

y

k

ła

d

zi

e:



te

ra

m

a

 t

o

 s

en

!

D

o

d

at

k

o

w

n

aw

ia

sy

 

{

..

.

}

 p

o

tr

ze

b

n

e

D

o

d

at

k

o

w

n

aw

ia

sy

 

{

..

.

}

 p

o

tr

ze

b

n

e

background image

O

p

er

a

to

ry

 l

o

g

ic

zn

w

 w

y

ra

Ŝe

n

ia

ch

•U

Ŝy

w

an

ie

 i

n

st

ru

k

cj

if

if

-e

ls

e

w

 k

re

m

am

y

 w

ce

n

 d

w

w

ar

u

n

k

i,

m

o

Ŝe

 b

y

ć 

cz

as

am

m

o

 p

rz

ej

rz

y

st

(t

y

m

 m

n

ie

p

rz

ej

rz

y

st

im

 w

ce

m

am

y

 w

ar

u

n

k

ó

w

•O

p

er

at

o

ry

 l

o

g

ic

zn

w

 z

n

ac

zn

y

m

 s

to

p

n

iu

 m

o

g

ą 

p

o

p

ra

w

 c

zy

te

ln

o

ść

k

o

d

u

 a

 t

y

m

 s

am

y

m

 z

m

n

ie

js

zy

ć 

p

ra

w

d

o

p

o

d

o

b

ie

ń

st

w

o

 p

o

m

y

łk

i.

 

•D

y

sp

o

n

u

je

m

y

 t

rz

em

a

 o

p

er

a

to

ra

m

lo

g

ic

zn

y

m

i:

&

&

lo

g

ic

zn

k

o

n

iu

n

k

cj

A

N

D

||

lo

g

ic

zn

al

te

rn

at

y

w

a

O

R

!

lo

g

ic

zn

n

eg

ac

ja

 

(N

O

T

)

background image



T

ab

li

ca

 l

o

g

ic

zn

d

la

 o

p

er

at

o

ra

 

&

&

(m

at

em

at

y

cz

n

ie

)



T

ab

li

ca

 l

o

g

ic

zn

d

la

 o

p

er

at

o

ra

 

||

(m

at

em

at

y

cz

n

ie

 :

 ∨

)

↑↑↑↑

T

ab

el

lo

g

ic

zn

d

la

 i

m

p

li

k

ac

ji

p

 ⇒

q

P

am

ta

m

y

Ŝe

 (

p

 ⇒

q

(~

p

 ∨

q

)

background image

#

in

cl

u

d

e

<

io

st

re

am

>

u

si

n

g

n

a

m

es

p

a

ce

st

d

;

v

o

id

m

ai

n

()

{

d

o

u

b

le

x

,y

;

ci

n

>

>

x

;

ci

n

>

>

y

;

if

((

(x

 >

=

 0

&

&

 (

x

 <

=

 1

))

 ||

 (

(y

 >

=

 0

&

&

 (

y

 <

=

 1

))

)

co

u

t<

<

"B

in

g

o

";

el

se

co

u

t<

<

"T

ry

 a

g

ai

n

";

 

}

•W

ar

u

n

ek

 

if

sk

ła

d

si

ę 

d

w

ó

ch

 w

y

ra

Ŝe

ń

 l

o

g

ic

zn

y

ch

 p

o

łą

cz

o

n

y

ch

 

o

p

er

at

o

re

m

 

||

(O

R

),

 a

 z

at

em

je

śl

k

re

k

o

lw

ie

k

 z

 n

ic

h

 b

ęd

zi

m

ia

ło

 

w

ar

to

ść

 l

o

g

ic

zn

ą 

tr

u

e

w

te

d

y

 w

ar

to

ść

 l

o

g

ic

zn

ca

łe

g

o

 w

ar

u

n

k

u

 w

if

b

ęd

zi

w

n

tr

u

e

n

ap

is

 

B

in

g

o

 

zo

st

an

ie

 w

y

św

ie

tl

o

n

y

•J

li

 w

ar

to

ść

 l

o

g

ic

zn

o

b

y

d

w

u

 w

y

ra

Ŝe

ń

 b

ęd

zi

fa

ls

e

w

te

d

y

 i

n

st

ru

k

cj

a

el

se

b

ęd

zi

u

ru

ch

o

m

io

n

n

ap

is

 

T

ry

 a

g

ai

n

zo

st

an

ie

 w

y

św

ie

tl

o

n

y

.

•W

 t

y

m

 p

rz

y

k

ła

d

zi

e,

 z

ac

zy

n

am

y

 o

d

 

w

cz

y

ta

n

ia

 d

w

ó

ch

 l

ic

zb

 

x

y

background image

O

p

er

a

to

w

a

ru

n

k

o

w

y

•O

p

er

at

o

w

ar

u

n

k

o

w

y

 m

o

Ŝn

zd

ef

in

io

w

 n

as

p

u

co

:

co

n

d

it

io

n

 ?

 e

x

p

re

ss

io

n

1

 :

 e

x

p

re

ss

io

n

2

•J

li

 w

ar

to

ść

 l

o

g

ic

zn

co

n

d

it

io

n

je

st

 

tr

u

e

w

te

d

y

 w

y

n

ik

 m

w

ar

to

ść

w

y

ra

Ŝe

n

ia

 

ex

p

re

ss

io

n

1

w

 p

rz

ec

iw

n

y

m

 p

rz

y

p

ad

k

u

 w

ar

to

ść

 t

eg

o

 o

p

er

at

o

ra

 m

w

ar

to

ść

 

w

y

ra

Ŝe

n

ia

 

ex

p

re

ss

io

n

2

.

background image

•Z

o

b

ac

zm

y

 j

ak

 d

zi

te

n

 o

p

er

at

o

n

p

rz

y

k

ła

d

zi

e.

 

•Z

ó

Ŝm

y

Ŝe

 m

am

y

 d

w

ie

 z

m

ie

n

n

e,

 

a

b

o

ra

ch

ce

m

y

 w

k

sz

ą 

w

ar

to

śc

a

lu

b

 

b

p

rz

y

p

is

 t

rz

ec

ie

zm

ie

n

n

ej

 

c

•M

o

Ŝe

m

y

 t

o

 e

le

g

an

ck

o

 z

ro

b

 u

Ŝy

w

aj

ąc

 o

p

er

at

o

ra

 w

ar

u

n

k

o

w

eg

o

:

=

 a

>

b

 ?

 a

 :

 b

//

 P

rz

y

p

is

u

je

 c

 m

ak

sy

m

al

n

ą 

w

ar

to

ść

 a

 l

u

b

 b

 

•P

ie

rw

sz

y

 a

rg

u

m

en

o

p

er

at

o

ra

 w

ar

u

n

k

o

w

eg

o

 j

es

w

y

ra

Ŝe

n

ie

m

 

lo

g

ic

zn

y

m

 

a>

b

 

•J

li

 w

ar

to

ść

 l

o

g

ic

zn

te

g

o

 w

y

ra

Ŝe

n

ia

 j

es

t

tr

u

e

w

te

d

y

 d

ru

g

ar

g

u

m

en

t

te

g

o

 o

p

er

at

o

ra

 –

w

 n

as

zy

m

 p

rz

y

p

ad

k

u

 

a

je

st

 w

y

b

ra

n

y

 j

ak

o

 w

ar

to

ść

o

p

er

at

o

ra

 i

 t

w

ar

to

ść

 z

o

st

an

ie

 p

rz

y

p

is

an

zm

ie

n

n

ej

 

c

•J

li

 w

ar

to

ść

 l

o

g

ic

zn

te

g

o

 w

y

ra

Ŝe

n

ia

 j

es

t

fa

ls

e

w

te

d

y

 t

rz

ec

ar

g

u

m

en

t

te

g

o

 o

p

er

at

o

ra

 –

w

 n

as

zy

m

 p

rz

y

p

ad

k

u

 

b

je

st

 w

y

b

ra

n

y

 j

ak

o

 w

ar

to

ść

o

p

er

at

o

ra

 i

 t

w

ar

to

ść

 z

o

st

an

ie

 p

rz

y

p

is

an

zm

ie

n

n

ej

 

c

.

background image

A

 z

at

em

 w

ar

to

ść

 c

eg

o

 w

y

ra

Ŝe

n

ia

 

a>

b

 ?

 a

 :

 b

 

b

ęd

zi

a

je

śl

a

b

ęd

zi

w

k

sz

o

d

 

b

o

ra

b

w

 p

rz

ec

iw

n

y

m

 p

rz

y

p

ad

k

u

.

•W

ar

to

ść

 t

zo

st

an

ie

 n

as

p

n

ie

 p

rz

y

p

is

an

zm

ie

n

n

ej

 

c

=

 a

>

b

 ?

 a

 :

 b

•U

Ŝy

ci

o

p

er

at

o

ra

 w

ar

u

n

k

o

w

eg

o

 w

 t

y

m

 p

rz

y

k

ła

d

zi

je

st

 r

ó

w

n

o

w

n

e

n

as

p

u

ce

in

st

ru

k

cj

if

:

if

 

(a

>

b

=

 a

;

el

se

=

 b

background image

#

in

cl

u

d

e

<

io

st

re

am

>

u

si

n

g

n

a

m

es

p

a

ce

st

d

;

v

o

id

m

ai

n

()

{

d

o

u

b

le

x

,y

;

ci

n

>

>

x

;

ci

n

>

>

y

;

co

u

t<

<

((((x

 >

=

 0

&

&

 (x

 <

=

 1

)) 

|| 

((

y

 >

=

 0

&

&

 (

y

 <

=

 1

)))

 ?

 "

B

in

g

o

"T

ry

 a

g

ai

n

")

;

}

P

rz

y

k

ła

d

 u

Ŝy

ci

a

 o

p

er

a

to

ra

 w

a

ru

n

k

o

w

eg

o

 w

 b

a

rd

zi

ej

 

ro

zb

u

d

o

w

a

n

y

m

 p

rz

y

k

ła

d

zi

e

•C

st

o

 ł

ąc

zy

 s

 u

Ŝy

ci

o

p

er

at

o

ra

 w

ar

u

n

k

o

w

eg

o

 z

 i

n

st

ru

k

cj

ą 

w

y

ci

a

w

 z

al

n

o

śc

o

d

 w

ar

to

śc

lo

g

ic

zn

ej

 w

y

ra

Ŝe

n

ia

n

p

.

=

 

"B

in

g

o

 

lu

b

"T

ry

 a

g

ai

n

background image

In

st

ru

k

cj

a

 s

w

it

ch

•I

n

st

ru

k

cj

sw

it

ch

u

m

o

Ŝl

iw

ia

 n

am

 w

y

b

ó

sp

o

śr

ó

d

 w

ie

lu

 m

o

Ŝl

iw

y

ch

p

rz

y

p

ad

k

ó

w

 w

 o

p

ar

ci

u

 o

 s

ta

łą

 w

ar

to

ść

 d

an

eg

o

 w

y

ra

Ŝe

n

ia

 –

in

n

y

m

i

o

w

y

u

Ŝy

 d

o

 p

o

d

ej

m

o

w

an

ia

 w

ie

lo

w

ar

ia

n

to

w

y

ch

 d

ec

y

zj

i.

background image

#

in

cl

u

d

e

<

io

st

re

am

>

u

si

n

g

n

a

m

es

p

a

ce

st

d

;

v

o

id

m

ai

n

()

{

in

t

n

u

m

;

co

u

t<

<

en

d

l

<

<

"E

n

te

in

te

g

er

 b

et

w

ee

n

[-

2

,2

]:

 "

;

ci

n

>

>

n

u

m

;

sw

it

ch

(n

u

m

)

{

ca

se

-2

:

ca

se

-1

:

co

u

t<

<

en

d

l<

<

"Y

o

u

 e

n

te

re

d

 n

eg

at

iv

n

u

m

b

er

";

b

re

a

k

;

ca

se

0

 c

o

u

t<

<

en

d

l<

<

"Y

o

u

 e

n

te

re

d

ze

ro

";

b

re

a

k

;

ca

se

1

:

ca

se

2

 c

o

u

t<

<

en

d

l<

<

"Y

o

u

 e

n

te

re

d

 p

o

si

ti

v

n

u

m

b

er

";

b

re

a

k

;

d

ef

a

u

lt

 c

o

u

t<

<

en

d

l<

<

"Y

o

u

 e

n

te

re

d

 b

ad

 n

u

m

b

er

";

}

}

•P

o

 w

cz

y

ta

n

iu

 

w

ar

to

śc

zm

ie

n

n

ej

 

n

u

m

in

st

ru

k

cj

a

sw

it

ch

b

ęd

zi

w

y

k

o

n

y

w

an

w

 z

al

n

o

śc

o

d

 t

ej

 

w

ar

to

śc

i.

background image

#

in

cl

u

d

e

<

io

st

re

am

>

u

si

n

g

n

a

m

es

p

a

ce

st

d

;

v

o

id

m

ai

n

()

{

in

t

n

u

m

;

co

u

t<

<

en

d

l

<

<

"E

n

te

in

te

g

er

 b

et

w

ee

n

[-

2

,2

]:

 "

;

ci

n

>

>

n

u

m

;

sw

it

ch

(n

u

m

)

{

ca

se

-2

:

ca

se

-1

:

co

u

t<

<

en

d

l<

<

"Y

o

u

 e

n

te

re

d

 n

eg

at

iv

n

u

m

b

er

";

b

re

a

k

;

ca

se

0

 c

o

u

t<

<

en

d

l<

<

"Y

o

u

 e

n

te

re

d

ze

ro

";

b

re

a

k

;

ca

se

1

:

ca

se

2

 c

o

u

t<

<

en

d

l<

<

"Y

o

u

 e

n

te

re

d

 p

o

si

ti

v

n

u

m

b

er

";

b

re

a

k

;

d

ef

a

u

lt

 c

o

u

t<

<

en

d

l<

<

"Y

o

u

 e

n

te

re

d

 b

ad

 n

u

m

b

er

";

}

}

•J

li

 w

ar

to

ść

 

w

y

ra

Ŝe

n

ia

 

n

u

m

o

d

p

o

w

ia

d

k

re

w

ar

to

śc

p

o

d

an

ej

 

w

 j

ed

n

ej

 z

 e

ty

k

ie

ca

se

w

ó

w

cz

as

 

w

y

k

o

n

y

w

an

in

st

ru

k

cj

p

o

cz

ąw

sz

y

o

d

 t

ej

 e

ty

k

ie

ty

•W

y

k

o

n

an

ie

 i

ch

 

k

o

ń

cz

y

 s

 p

o

 

n

ap

o

tk

an

iu

 i

n

st

ru

k

cj

i

b

re

a

k

•P

o

w

o

d

u

je

 t

o

 

w

y

sk

o

k

 z

 i

n

st

ru

k

cj

sw

it

ch

.

background image

#

in

cl

u

d

e

<

io

st

re

am

>

u

si

n

g

n

a

m

es

p

a

ce

st

d

;

v

o

id

m

ai

n

()

{

in

t

n

u

m

;

co

u

t<

<

en

d

l

<

<

"E

n

te

in

te

g

er

 b

et

w

ee

n

[-

2

,2

]:

 "

;

ci

n

>

>

n

u

m

;

sw

it

ch

(n

u

m

)

{

ca

se

-2

:

ca

se

-1

:

co

u

t<

<

en

d

l<

<

"Y

o

u

 e

n

te

re

d

 n

eg

at

iv

n

u

m

b

er

";

b

re

a

k

;

ca

se

0

 c

o

u

t<

<

en

d

l<

<

"Y

o

u

 e

n

te

re

d

ze

ro

";

b

re

a

k

;

ca

se

1

:

ca

se

2

 c

o

u

t<

<

en

d

l<

<

"Y

o

u

 e

n

te

re

d

 p

o

si

ti

v

n

u

m

b

er

";

b

re

a

k

;

d

ef

a

u

lt

 c

o

u

t<

<

en

d

l<

<

"Y

o

u

 e

n

te

re

d

 b

ad

 n

u

m

b

er

";

}

}

p

rz

y

 e

ty

k

ie

ta

ch

 

ca

se

n

as

p

u

je

 o

p

u

sz

cz

en

ie

 i

n

st

r.

 

sw

it

ch

•J

li

 w

ar

to

ść

 

w

y

ra

Ŝe

n

ia

 n

ie

 

zg

ad

za

 s

 z

 Ŝ

ad

n

ą

w

ar

to

śc

p

o

d

an

y

ch

p

rz

y

 e

ty

k

ie

ta

ch

 

ca

se

,

w

ó

w

cz

as

 w

y

k

o

n

u

 

si

ę 

in

st

ru

k

cj

e

u

m

ie

sz

cz

o

n

p

o

 

et

y

k

ie

ci

d

ef

a

u

lt

•E

ty

k

ie

ty

 

d

ef

a

u

lt

m

o

Ŝe

 n

ie

 b

y

ć 

w

ca

le

 

w

te

d

y

 j

li

 w

ar

to

ść

w

y

ra

Ŝe

n

ia

 w

 

n

aw

ia

si

p

rz

y

o

w

ie

 k

lu

cz

o

w

y

m

sw

it

ch

n

ie

 z

g

ad

za

 s

Ŝa

d

n

ą 

w

ar

to

śc

i

background image

#

in

cl

u

d

e

<

io

st

re

am

>

u

si

n

g

n

a

m

es

p

a

ce

st

d

;

v

o

id

m

ai

n

()

{

in

t

n

u

m

;

co

u

t<

<

en

d

l

<

<

"E

n

te

in

te

g

er

 b

et

w

ee

n

[-

2

,2

]:

 "

;

ci

n

>

>

n

u

m

;

sw

it

ch

(n

u

m

)

{

ca

se

-2

:

ca

se

-1

:

co

u

t<

<

en

d

l<

<

"Y

o

u

 e

n

te

re

d

 n

eg

at

iv

n

u

m

b

er

";

b

re

a

k

;

ca

se

0

 c

o

u

t<

<

en

d

l<

<

"Y

o

u

 e

n

te

re

d

ze

ro

";

b

re

a

k

;

ca

se

1

:

ca

se

2

 c

o

u

t<

<

en

d

l<

<

"Y

o

u

 e

n

te

re

d

 p

o

si

ti

v

n

u

m

b

er

";

b

re

a

k

;

d

ef

a

u

lt

 c

o

u

t<

<

en

d

l<

<

"Y

o

u

 e

n

te

re

d

 b

ad

 n

u

m

b

er

";

}

}

•I

n

st

ru

k

cj

n

as

p

u

cy

ch

 p

o

 

et

y

k

ie

ci

ca

se

n

ie

 

m

u

si

m

y

 k

o

ń

cz

y

ć 

in

st

ru

k

cj

ą 

b

re

a

k

je

śl

je

n

ie

 

u

m

ie

śc

im

y

to

 

za

cz

n

ą 

si

ę 

w

y

k

o

n

y

w

 

in

st

ru

k

cj

e

u

m

ie

sz

cz

o

n

p

o

d

 

n

as

p

n

ą 

et

y

k

ie

ca

se

background image

#

in

cl

u

d

e

<

io

st

re

am

>

u

si

n

g

n

a

m

es

p

a

ce

st

d

;

v

o

id

m

ai

n

()

{

in

t

n

u

m

;

co

u

t<

<

en

d

l

<

<

"E

n

te

in

te

g

er

 b

et

w

ee

n

[-

2

,2

]:

 "

;

ci

n

>

>

n

u

m

;

sw

it

ch

(n

u

m

)

{

ca

se

-2

:

ca

se

-1

:

co

u

t<

<

en

d

l<

<

"Y

o

u

 e

n

te

re

d

 n

eg

at

iv

n

u

m

b

er

";

b

re

a

k

;

ca

se

0

 c

o

u

t<

<

en

d

l<

<

"Y

o

u

 e

n

te

re

d

ze

ro

";

b

re

a

k

;

ca

se

1

:

ca

se

2

 c

o

u

t<

<

en

d

l<

<

"Y

o

u

 e

n

te

re

d

 p

o

si

ti

v

n

u

m

b

er

";

b

re

a

k

;

d

ef

a

u

lt

 c

o

u

t<

<

en

d

l<

<

"Y

o

u

 e

n

te

re

d

 b

ad

 n

u

m

b

er

";

}

}

background image

In

st

ru

k

cj

a

 

g

o

to

In

st

ru

k

cj

ta

 m

fo

rm

ę:

g

o

to

 

et

y

k

ie

ta

 ;

P

o

 n

ap

o

tk

an

iu

 t

ak

ie

in

st

ru

k

cj

w

y

k

o

n

y

w

an

ie

 p

ro

g

ra

m

u

 p

rz

en

o

si

 s

d

o

 m

ie

js

ca

 g

d

zi

je

st

 d

an

et

y

k

ie

ta

background image

in

t

n

u

m

;

co

u

t<

<

"E

n

te

in

te

g

er

";

ci

n

>

>

n

u

m

;

if

((

n

u

m

 <

 -

1

|| 

(n

u

m

 >

 1

))

g

o

to

m

y

L

ab

el

;

sw

it

ch

(n

u

m

)

{

ca

se

-1

:c

o

u

t<

<

 "

N

eg

at

iv

n

u

m

b

er

";

g

o

to

m

y

L

ab

el

;

ca

se

0

:c

o

u

t<

<

 "

Z

er

o

";

g

o

to

m

y

L

ab

el

;

ca

se

1

:c

o

u

t<

<

 "

P

o

si

ti

v

n

u

m

b

er

";

g

o

to

m

y

L

ab

el

;

}

..

.

m

y

L

ab

el

:c

o

u

t<

<

"m

y

L

ab

el

 e

x

ec

u

te

d

";

 

..

.

•P

rz

y

k

ła

d

 u

Ŝy

ci

in

st

ru

k

cj

i

u

m

ie

sz

cz

o

n

ej

 w

 w

ie

rs

zu

w

 

k

ry

m

 j

es

et

y

k

ie

ta

.

•E

ty

k

ie

ta

 j

es

to

 n

az

w

a,

 p

o

k

re

n

as

p

u

je

 d

w

u

k

ro

p

ek

.

background image

•I

n

st

ru

k

cj

g

o

to

je

st

 z

aw

sz

m

o

Ŝl

iw

d

o

 z

as

p

ie

n

ia

 i

n

n

y

m

in

st

ru

k

cj

am

za

w

sz

e,

 z

w

y

tk

ie

m

 p

rz

y

p

ad

k

ó

w

k

ie

d

y

 j

es

to

 

p

o

d

y

k

to

w

an

ja

k

im

 s

p

ec

ja

ln

y

m

w

zg

d

am

i,

 p

o

w

in

n

m

y

 

u

n

ik

a

ć 

je

st

o

so

w

a

n

ia

background image

In

st

ru

k

cj

p

ęt

li

•M

o

Ŝl

iw

o

ść

 w

ie

lo

k

ro

tn

eg

o

 p

o

w

ta

rz

an

ia

 g

ru

p

y

 i

n

st

ru

k

cj

i,

 m

fu

n

d

am

en

ta

ln

zn

ac

ze

n

ie

 w

 n

ie

m

al

 w

sz

y

st

k

ic

h

 a

lg

o

ry

tm

ac

h

•I

n

st

ru

k

cj

p

ęt

li

 w

y

k

o

n

u

je

 c

g

 i

n

st

ru

k

cj

d

o

p

ó

ty

 d

o

p

ó

k

w

ar

to

ść

 

lo

g

ic

zn

p

ew

n

eg

o

 w

y

ra

Ŝe

n

ia

 m

w

ar

to

ść

 l

o

g

ic

zn

ą 

tr

u

e

(l

u

b

 

fa

ls

e

).

•O

k

az

u

je

 s

Ŝe

 j

u

Ŝ 

n

ty

m

 e

ta

p

ie

 n

as

zy

ch

 r

o

zw

 j

es

te

śm

y

w

 s

ta

n

ie

 n

ap

is

 k

o

d

 p

ęt

li

.

•W

sz

y

st

k

o

 c

ze

g

o

 p

o

tr

ze

b

u

je

m

y

 t

o

 i

n

st

ru

k

cj

if

g

o

to

background image

•W

 t

y

m

 p

rz

y

k

ła

d

zi

e,

 o

b

li

cz

y

m

y

 s

u

m

ę

li

cz

b

 n

at

u

ra

ln

y

ch

 o

d

 1

 d

o

 n

 =

 1

0

(

)

(

)

1

1

1

0

1

0

1

1

2

..

.

5

5

2

2

n

i

n

n

i

n

=

+

+

=

+

+

+

=

=

=

#

in

cl

u

d

e

<

io

st

re

am

>

u

si

n

g

n

a

m

es

p

a

ce

st

d

;

v

o

id

m

ai

n

()

{

co

n

st

in

t

n

 =

 1

0

 ;

in

t

=

 1

 ,

 s

u

m

 =

 0

 ;

lo

o

p

 :

su

m

 +

=

 i

 ;

if

(+

+

<

=

 n

)

g

o

to

lo

o

p

 ;

co

u

t<

<

en

d

l<

<

"s

u

m

=

"<

<

su

m

;

co

u

t<

<

en

d

l<

<

"i

=

"<

<

i<

<

en

d

l;

}

background image

#

in

cl

u

d

e

<

io

st

re

am

>

u

si

n

g

n

a

m

es

p

a

ce

st

d

;

v

o

id

m

ai

n

()

{

co

n

st

in

t

n

 =

 1

0

 ;

in

t

=

 1

 ,

 s

u

m

 =

 0

 ;

lo

o

p

 :

su

m

 +

=

 i

 ;

if

(+

+

<

=

 n

)

g

o

to

lo

o

p

 ;

co

u

t<

<

en

d

l<

<

"s

u

m

=

"<

<

su

m

;

co

u

t<

<

en

d

l<

<

"i

=

"<

<

i<

<

en

d

l;

}

•I

n

ic

ja

li

zu

je

m

y

 z

m

ie

n

n

ą 

i

w

ar

to

śc

 

1

k

 n

as

p

n

ie

d

o

d

aj

em

y

 d

o

 z

m

ie

n

n

ej

 

su

m

,

k

 w

cz

n

ie

in

ic

ja

li

zu

je

m

y

 

ze

re

m

 (

su

m

je

st

 t

er

az

 r

ó

w

n

1

).

 

•W

 w

y

ra

Ŝe

n

iu

 w

ar

u

n

k

o

w

y

m

 w

 

in

st

ru

k

cj

if

i

je

st

 n

aj

p

ie

rw

in

k

re

m

en

to

w

an

e,

 a

 d

o

p

ie

ro

p

ó

źn

ie

sp

ra

w

d

za

n

y

 j

es

w

ar

u

n

ek

 c

zy

 d

o

d

aw

an

li

cz

b

a

n

ie

 p

rz

ek

ro

cz

y

ła

 w

ar

to

śc

n

.

•D

o

p

ó

ty

 d

o

p

ó

k

m

am

y

 l

ic

zb

ę 

i

d

o

p

u

sz

cz

al

n

eg

o

 z

ak

re

su

,

n

as

p

u

je

 s

k

o

k

 d

o

 (

p

u

st

ej

)

in

st

ru

k

cj

o

zn

ac

zo

n

ej

 e

ty

k

ie

lo

o

p

w

 n

as

p

n

ej

 i

n

st

ru

k

cj

i

o

b

li

cz

an

je

st

 k

o

le

jn

su

m

a

cz

ęś

ci

o

w

su

m

,.

..

 i

td

..

1

0

1

1

2

3

4

..

.

1

0

5

5

i

i

=

=

+

+

+

+

+

=

=

 1

=

 2

=

 3

=

 4

=

 1

0

=

 

su

m

background image

•D

zi

an

ie

 p

ęt

li

 j

es

za

te

m

 c

k

ie

m

 p

ro

st

e.

 

•U

Ŝy

w

a

m

y

je

d

n

ak

 i

n

st

ru

k

cj

g

o

to

w

p

ro

w

ad

za

m

y

 e

ty

k

ie

 w

 

p

ro

g

ra

m

ie

co

 w

cz

n

ie

b

y

ło

 u

zn

a

n

za

 z

ły

 s

ty

p

ro

g

ra

m

o

w

a

n

ia

.

•M

o

Ŝe

m

y

 j

ed

n

ak

 u

Ŝy

ć 

sp

ec

ja

ln

ej

 i

n

st

ru

k

cj

p

ęt

li

 

fo

r

zn

ac

zn

ie

 u

p

ro

śc

 

k

o

d

:

#

in

cl

u

d

e

<

io

st

re

am

>

u

si

n

g

n

a

m

es

p

a

ce

st

d

;

v

o

id

m

ai

n

()

{

co

n

st

in

t

n

 =

 1

0

 ;

in

t

su

m

 =

 0

;

in

t

;

fo

r

(i

=

1

 ;

 i

 <

=

 n

 ;

 i

+

+

)

su

m

 +

=

 i

 ;

co

u

t<

<

en

d

l<

<

"s

u

m

=

"<

<

su

m

;

co

u

t<

<

en

d

l<

<

"i

=

"<

<

i<

<

en

d

l;

}

•W

ar

u

n

k

d

et

er

m

in

u

ce

 

w

y

k

o

n

an

ie

 p

ęt

li

 p

o

ja

w

ia

 s

w

 n

aw

ia

si

p

o

 s

ło

w

ie

 

k

lu

cz

o

w

y

m

 

fo

r

•W

id

zi

m

y

 t

u

 3

 w

y

ra

Ŝe

n

ia

 :

 

-

p

ie

rw

sz

in

ic

ja

li

zu

je

 

i

je

d

y

n

k

ą.

-

w

 d

ru

g

im

 s

p

ra

w

d

za

n

y

 j

es

w

ar

u

n

ek

cz

y

 

i

<

=

 

n

-

w

 t

rz

ec

im

 z

w

k

sz

an

je

st

 

zm

ie

n

n

i

p

o

 k

d

ej

 i

te

ra

cj

i.

 

background image

•O

g

ó

ln

d

ef

in

ic

ja

 p

ęt

li

 

fo

r

je

st

 n

as

p

u

ca

:

fo

r

(

in

it

ia

li

zi

n

g

_

ex

p

re

ss

io

n

te

st

_

ex

p

re

ss

io

n

st

ep

_

ex

p

re

ss

io

n

)

lo

o

p

_

st

at

em

en

t;

•O

cz

y

w

ci

e,

 

lo

o

p

_

st

at

em

en

t

m

o

Ŝe

 b

y

ć 

b

lo

k

ie

m

in

st

ru

k

cj

p

o

m

d

zy

 n

aw

ia

sa

m

{

 }

•W

y

ra

Ŝe

n

ia

 k

o

n

tr

o

lu

ce

 p

ęt

 

fo

r

m

o

g

ą 

sk

ła

d

 s

 n

aw

et

 z

 k

il

k

u

 i

n

st

ru

k

cj

o

d

d

zi

el

o

n

y

ch

 z

w

y

k

ły

m

p

rz

ec

in

k

am

,

•W

 w

y

ra

Ŝe

n

iu

 

in

it

ia

li

zi

n

g

_

ex

p

re

ss

io

n

in

ic

ja

li

zu

je

m

y

je

d

n

ą 

lu

b

 w

ce

p

o

tr

ze

b

n

y

ch

 

zm

ie

n

n

y

ch

.

•W

 w

y

ra

Ŝe

n

iu

 

te

st

_

ex

p

re

ss

io

n

te

st

u

je

m

y

w

ar

u

n

k

d

al

sz

eg

o

 w

y

k

o

n

an

ia

 p

ęt

li

.

•W

 w

y

ra

Ŝe

n

iu

 

st

ep

_

ex

p

re

ss

io

n

in

k

re

m

en

tu

je

m

y

d

ek

re

m

en

tu

je

m

y

lu

b

p

rz

ep

ro

w

a

d

za

m

y

 b

a

rd

zi

ej

 s

k

o

m

p

li

k

o

w

a

n

e

o

p

er

a

cj

n

a

 z

m

ie

n

n

y

ch

st

er

u

cy

ch

 p

ęt

.

background image

In

st

ru

k

cj

b

re

a

k

co

n

ti

n

u

e

•D

y

sp

o

n

u

je

m

y

 p

o

n

ad

to

 d

w

o

m

in

st

ru

k

cj

am

i,

 k

re

 u

Ŝy

te

 w

 p

ęt

li

m

o

g

ą

zm

ie

n

ia

ć 

k

o

le

jn

o

ść

 d

zi

 w

 p

ęt

li

 –

 t

o

 i

n

st

ru

k

cj

b

re

a

k

co

n

ti

n

u

e

.

#

in

cl

u

d

e

<

io

st

re

am

>

u

si

n

g

n

a

m

es

p

a

ce

st

d

;

v

o

id

m

ai

n

()

{

co

n

st

in

t

n

=

1

0

;

co

n

st

in

t

m

ax

_s

u

m

=

3

0

;

in

t

su

m

=

0

;

fo

r

(

in

t

i=

1

;i

<

=

n

;i

+

+

)

{

su

m

 +

=

 i

;

if

(s

u

m

 >

=

 m

ax

_s

u

m

)

{

su

m

 -=

 i

;

b

re

a

k

;

}

}

co

u

t<

<

en

d

l<

<

"s

u

m

=

"<

<

su

m

;

}

•P

ro

g

ra

m

 b

ęd

zi

o

b

li

cz

 s

u

m

ę 

su

m

li

cz

b

n

at

u

ra

ln

y

ch

 o

d

 

1

d

o

 

n

=

 1

0

d

o

p

ó

ty

 d

o

p

ó

k

o

b

li

cz

an

n

b

ie

Ŝą

co

 w

ar

to

ść

 z

m

ie

n

n

ej

 

su

m

b

ęd

zi

m

n

ie

js

za

 o

d

 

m

ax

_

su

m

=

3

0

.

•J

li

 o

b

li

cz

o

n

w

ar

to

ść

 

su

m

o

k

si

ę 

w

k

sz

a

lu

b

 r

ó

w

n

m

ax

_

su

m

o

d

tw

o

rz

o

n

b

ęd

zi

e

p

o

p

rz

ed

n

ia

 j

ej

 w

ar

to

ść

 i

 z

o

st

an

ie

 u

Ŝy

ta

in

st

ru

k

cj

b

re

a

k

.

•E

fe

k

d

zi

an

ia

 

b

re

a

k

w

 p

ęt

li

 j

es

p

o

d

o

b

n

y

 d

o

 

d

zi

an

ia

 w

 i

n

st

ru

k

cj

sw

it

ch

•N

as

p

u

je

 n

at

y

ch

m

ia

st

o

w

w

y

ci

in

st

ru

k

cj

i

fo

r

co

 w

 n

as

zy

m

 p

rz

y

p

ad

k

u

 o

zn

ac

za

w

y

św

ie

tl

en

ie

 w

ar

to

śc

zm

ie

n

n

ej

 

su

m

.

background image

•W

y

k

o

n

an

ie

 w

 p

ęt

li

 i

n

st

ru

k

cj

co

n

ti

n

u

e

p

o

w

o

d

u

je

 z

an

ie

ch

an

ie

 

in

st

ru

k

cj

b

ęd

ąc

y

ch

 t

re

śc

 p

ęt

li

je

d

n

ak

 w

 p

rz

ec

iw

ie

ń

st

w

ie

 d

o

 

in

st

ru

k

cj

b

re

ak

 s

am

p

ęt

la

 n

ie

 z

o

st

aj

p

rz

er

w

an

a,

 

co

n

ti

n

u

p

rz

er

y

w

ty

lk

o

 t

en

 o

b

ie

g

 p

ęt

li

 i

 z

ac

zy

n

n

as

p

n

y

k

o

n

ty

n

u

u

p

ra

 p

ęt

li

.

#

in

cl

u

d

e

<

io

st

re

am

>

u

si

n

g

n

a

m

es

p

a

ce

st

d

;

v

o

id

m

ai

n

()

{

co

n

st

in

t

n

=

1

0

;

co

n

st

in

t

m

ax

_s

u

m

=

3

0

;

in

t

su

m

=

0

;

fo

r

(

in

t

i=

1

;i

<

=

n

;i

+

+

)

{

if

(s

u

m

 >

=

 m

ax

_s

u

m

)

co

n

ti

n

u

e

;

su

m

 +

=

 i

;

}

co

u

t<

<

en

d

l<

<

"s

u

m

=

"<

<

su

m

;

}

•W

 t

ej

 p

ęt

li

 p

ro

g

ra

m

 b

ęd

zi

o

b

li

cz

 s

u

m

ę 

su

m

li

cz

b

 n

at

u

ra

ln

y

ch

 o

d

 

1

d

o

 

n

=

 1

0

d

o

p

ó

ty

 d

o

p

ó

k

i

o

b

li

cz

o

n

ak

tu

al

n

w

ar

to

ść

 

su

m

p

rz

ek

ro

cz

y

 l

u

b

b

ęd

zi

w

n

w

ar

to

śc

m

ax

_

su

m

=

3

0

.

•S

p

n

ie

n

ie

 p

o

w

y

Ŝs

ze

g

o

 w

ar

u

n

k

u

 s

p

o

w

o

d

u

je

w

 n

as

zy

m

 p

rz

y

k

ła

d

zi

je

d

y

n

ie

 t

zw

„p

u

st

p

rz

eb

ie

g

i”

 p

ęt

li

 a

Ŝ 

d

o

 s

p

n

ie

n

ia

 w

ar

u

n

k

u

 j

ej

 

st

o

p

u

 z

al

n

eg

o

 o

d

 w

ar

to

śc

zm

ie

n

n

ej

 

i

.

•Z

 t

eg

o

 t

 w

zg

d

u

je

st

 t

o

 p

rz

y

 o

k

az

ji

 p

rz

y

k

ła

d

eg

o

 s

ty

lu

 p

ro

je

k

to

w

a

n

ia

(o

cz

y

w

ci

n

ie

 z

w

zg

d

u

 n

u

Ŝy

ci

in

st

ru

k

cj

co

n

ti

n

u

e

!)

background image

E

fe

k

d

zi

an

ia

 i

n

st

ru

k

cj

i

b

re

a

k

o

ra

co

n

ti

n

u

e

w

 p

ęt

li

fo

r

zo

st

 z

il

u

st

ro

w

an

y

 o

b

o

k

.

background image

In

st

ru

k

cj

a

 

w

h

il

e

•D

ru

g

im

 r

o

d

za

je

m

 p

ęt

li

 w

 C

+

+

 j

es

p

ęt

la

 

w

h

il

e

•O

 i

le

 p

ęt

la

 

fo

r

je

st

 p

rz

ed

w

sz

y

st

k

im

 u

Ŝy

w

an

w

 p

rz

y

p

ad

k

ac

h

 k

ie

d

y

 

zn

an

je

st

 z

 g

ó

ry

 l

ic

zb

p

ęt

li

 d

o

 w

y

k

o

n

an

ia

to

 p

ęt

 

w

h

il

e

w

y

g

o

d

n

ie

 j

es

st

o

so

w

 w

 p

rz

y

p

ad

k

ac

h

 k

ie

d

y

 j

ej

 k

o

n

ty

n

u

ac

ja

(l

u

b

 z

an

ie

ch

an

ie

za

le

Ŝy

 o

d

 w

ar

to

śc

p

ew

n

eg

o

 w

y

ra

Ŝe

n

ia

 l

o

g

ic

zn

eg

o

,

k

re

 m

u

si

 b

y

ć 

o

b

li

cz

an

m

o

d

y

fi

k

o

w

an

w

ew

n

ąt

rz

 p

ęt

li

•F

o

rm

p

ęt

li

 

w

h

il

e

je

st

 n

as

p

u

ca

:

w

h

il

e

(c

o

n

d

it

io

n

)

lo

o

p

_

st

at

em

en

t;

g

d

zi

in

st

ru

k

cj

w

 

lo

o

p

_

st

at

em

en

t

b

ęd

ą 

su

k

ce

sy

w

n

ie

 w

y

k

o

n

y

w

an

e

d

o

p

ó

ty

 d

o

p

ó

k

w

ar

to

ść

 l

o

g

ic

zn

w

y

ra

Ŝe

n

ia

 

co

n

d

it

io

n

b

ęd

zi

tr

u

e

•P

rz

er

w

an

ie

 p

ęt

li

 n

as

p

u

je

 w

 m

o

m

en

ci

k

ie

d

y

 w

ar

to

ść

 l

o

g

ic

zn

co

n

d

it

io

n

b

ęd

zi

fa

ls

e

.

background image

•D

zi

an

ie

 p

ęt

li

 

w

h

il

e

.

background image

N

aj

w

k

sz

y

 W

sp

ó

ln

y

 D

zi

el

n

ik

-N

W

D

 

(G

re

at

es

C

o

m

m

o

n

 D

iv

is

o

r-

G

C

D

d

w

ó

ch

 l

ic

zb

 n

at

u

ra

ln

y

ch

.

W

e

rs

ja

 i

te

ra

c

y

jn

a

 a

lg

o

ry

tm

u

 E

u

k

li

d

e

s

a

.

P

re

m

n

d

w

ie

 l

ic

zb

y

 n

at

u

ra

ln

e.

P

o

st

G

C

D

 

(n

aj

w

k

sz

y

 w

sp

ó

ln

y

 d

zi

el

n

ik

 

m

n

)

A

lg

o

ry

tm

1

Z

ai

n

ic

ja

li

zu

a

w

ar

to

śc

 

m

b

w

ar

to

śc

 

n

(a

 ,

 b

=

 (

m

 ,

 n

)

2

D

o

p

ó

ty

 d

o

p

ó

k

b

je

st

 d

o

d

at

n

ie

 

0

(

b

 >

 0

p

rz

y

p

is

je

d

n

o

cz

n

ie

 (

!)

 

b

d

o

 

re

sz

 z

 d

zi

el

en

ia

 

a

p

rz

ez

 

b

d

o

 

b

(a

 ,

 b

=

 (

b

 ,

 a

 %

 b

)

3

.

G

C

D

 =

 a

background image

#

in

cl

u

d

e

<

io

st

re

am

>

u

si

n

g

n

a

m

es

p

a

ce

st

d

;

v

o

id

m

ai

n

()

{

lo

n

g

m

,n

,a

,b,

c;

lo

n

g

G

C

D

;

co

u

t<

<

en

d

l<

<

"E

n

te

fi

rs

po

si

ti

v

in

te

g

er 

m

 =

 "

;

ci

n

>

>

m

;

co

u

t<

<

en

d

l<

<

"E

n

te

se

co

n

d

 p

o

si

ti

v

in

te

g

er 

n

 =

 "

;

ci

n

>

>

n

;

=

 m

 ;

b

 =

 n

 ;

w

h

il

(b 

>

 0

)

{

=

 a

 ;

=

 b 

;

b

 =

 c

 %

 b 

;

}

G

C

D

 =

 a

 ;

co

u

t<

<

en

d

l<

<

"G

C

D

("

<

<

m

<

<

",

"<

<

n

<

<

")=

"

<

<

G

C

D

;

}



(a

 ,

 b

=

 (

m

 ,

 n

)



d

o

p

ó

ty

 d

o

p

ó

k

i

b

>

0



G

C

D

 =

 a



(a

 ,

 b

=

 (

b

 ,

 a

 %

 b

)

background image

P

ęt

la

 

d

o

-w

h

il

e

•P

ęt

la

 

d

o

-w

h

il

e

je

st

 p

o

d

o

b

n

d

o

 p

ęt

li

 

w

h

il

e

p

o

n

ie

w

 u

m

o

Ŝl

iw

ia

 

w

y

k

o

n

an

ie

 s

ek

w

en

cj

in

st

ru

k

cj

d

o

p

ó

ty

 d

o

p

ó

k

w

ar

to

ść

 l

o

g

ic

zn

a

w

y

ra

Ŝe

n

ia

 s

te

ru

ce

g

o

 p

ęt

 p

o

zo

st

aj

tr

u

e

•R

ó

Ŝn

ic

p

o

le

g

n

ty

m

Ŝe

 s

p

ra

w

d

ze

n

ie

 w

ar

to

śc

lo

g

ic

zn

ej

 w

y

ra

Ŝe

n

ia

st

er

u

ce

g

o

 p

ęt

 n

as

p

u

je

 p

o

 w

y

k

o

n

an

iu

 w

sz

y

st

k

ic

h

 s

ek

w

en

cj

in

st

ru

k

cj

n

ie

 n

p

o

cz

ąt

k

u

 p

ęt

li

 j

ak

 t

o

 j

es

w

 p

rz

y

p

ad

k

u

 p

ęt

li

 

w

h

il

e

lu

b

 

fo

r

•W

y

n

ik

st

ąd

Ŝe

 i

n

st

ru

k

cj

w

 p

ęt

li

 

d

o

-w

h

il

e

 z

aw

sz

w

y

k

o

n

an

e

p

rz

y

n

aj

m

n

ie

ra

z.

 

•O

g

ó

ln

p

o

st

 p

ęt

li

 

d

o

-w

h

il

e

je

st

 n

as

p

u

ca

:

d

o

 

lo

o

p

_

st

at

em

en

ts

;

w

h

il

e

(c

o

n

d

it

io

n

);

background image

•P

ęt

la

 

d

o

-w

h

il

e

background image

#

in

cl

u

d

e

<

io

st

re

am

>

u

si

n

g

n

a

m

es

p

a

ce

st

d

;

v

o

id

m

ai

n

()

{

in

t

i,

j,

m

u

lt

;

co

n

st

in

t

I=

4

;

co

n

st

in

t

J=

4

;

fo

r

(i

=

1

 ;

 i

 <

=

 I

 ;

 i

+

+

)

fo

r

(j

=

1

 ;

 j

 <

=

 J

 ;

 j

+

+

)

{

m

u

lt

=

 i

 *

 j

 ;

co

u

t<

<

en

d

l<

<

i<

<

"*

"<

<

j<

<

"=

"<

<

m

u

lt

;

}

co

u

t<

<

en

d

l;

}

Z

a

g

n

ie

Ŝd

Ŝa

n

ie

 p

ęt

li

•I

st

n

ie

je

 m

o

Ŝl

iw

o

ść

 z

ag

n

ie

Ŝd

Ŝa

n

ia

 i

n

st

ru

k

cj

p

ęt

li

 (

d

o

w

o

ln

ej

 i

ch

 l

ic

zb

y

).