! "
#
5 6
$ % &' ( &% ) * + , - . ( * / ( $ % ,0 ( 1 2 , ( / ( $ % ,0 ( 1 2 , 3 , % 4 , + 2 % ) 2 ,
6 7 86
9 6 ::6 ; 6
<=> 6 ? @ :
: =J B = < = > 6 H =K 6 ? A B H A
8A K 6 OB @ :
6
K PE=6 :
6
> @ ?
<7 B C D @
f(),
F 7 A :HQ A :
6
:A B :6 C D @
F 7 A
> 86E6
> @ B :HEL = 6
E A 86 > =@ B 6 ; 6 :
8=:H6
> @ ?
6
F 7 A
9 @ ; A EG6 ? @ :
:=? 9 8A :? A B HA
R S T UVW T W X
; @
HAE
? A 8I @ E 6 ; @
8=J 6 ; 6 M N :H6
> L ; =J @
F 7 A
:AB :6 C D @
A :>EAK A ? @ :Y
=B > 87 =B ; @ Z
[ M
5 @
@ ? @ 9 @ ; A ? @ : 6 K 6 8=6 E 6 R S T UVW T W X ; A 7 ?
\
^ M
@ ? @
\
; A : A B K @ 8K A E > L ; =J @
9 E@ J E6? 6 ]
; A R S T UVW T W X ]
F 7 A : A : A J 7 A Y H A B H 6 E A ? @ : 6 _ @ E ; 6 E A :H 6 : F 7 A :H Q A : M
` a bc d ba e f g h i j d f k d ` a hl d m n h
o p q r q s q t u vr qw xy s p q zs { u p | y s x p
x s| r u
y u p x
xp
s| t v u t
x p q s p q zs
w x y vz{ u
r x
q y
zsx
} z~ y { zq x y w x y q v zq q r z z s u
{ x zs
s
r x
u
{ u p vx x y r xv
vu t
x p q
s u
| u w
u t q
q q v zv r q s s u
| x s r x { q r q
w xy vz{ u
x
u
vu t
x p q
r x { u p u v
v u w v x s s z q p x y x
v x x v zr q
y u ssu
{ u p u
x sv| | v q r q
¡
« £ ¡ ¬ «
q
q
u v vu x {q v | p
| y u
p q zs
vu x {u
vu w vqp q
x p
zxvqv | z{ q p x y x
q y q
zsq r u
x sx
r u vu t
x p q x p
vu { x ssu
vu {| vqp u s
s| t v u t
x p q
| x
w
u t q
szp
x s
x
vu w vqp q
| x
x sv| | v q r u
| y x s
r x
r x x p u s
¢ £ ¤ ¥ ¦ ¤ § ¨ ¥ ¨© ¤ ª ¤
£ § ¬ ¡ ² «¤ ª ¬ «
u
« «
r sx
{ u y s v | zv
x sx v u { x s su
u
| p q
r sx u y u p x
ª ¨¼ ¨ª ¨£
ª ¤
½ ¨ £¤£· ® ¨§ ¤ ¡ ² © ¨² ª ² ª ² © «
§ ¬ ¡
ª ¤
¦® ² ³ ¶ ¬
º ¡
r x sx p x y qv
s q
u vp q
x p
r x
x
zy r x x y r x y x s
vu w vq p qv
u s s x
v z{ q
® ¡ ¤
¦¤ « ¤
ª r q
| y x s
vu x {u
£¬ ¢ £¤¡ ¤£
r u
u vw q y z q r q s
vu w vqp q u
vu w vqp q u
£¬¯ §©¬
u
{ u p u
«© £ ® ©® £ ¤ ª ¬ ° ± «© ¬
² «¤£¡ ¬ «
ª u
¦¬ £¡ ¤
§ ¸ ª ¨¢ ¬ ¨£ ´ © £ °
£¬ ¢ £¤¡ ¤ ³ ¶ ¬
¨² © £ ¦¤ § «
r q s u vp q s r x
x sv| | v q r u vu x | p q u vw q y z q u
§ ¬ ¡ ³ ¤£¡ ¬ «
r x xv
| sq p u s
zy w | q w x y s r x
¦¬ £ £ § ª ¨ª ¤
¹ « º ² ¦ »§ ¨¬ «
£¬¯ §©¬
q
sx w | zv | q y r u
ª { u p | q r u v | p q
zp
x p x y qv
szp
x s
{u p x qvp u s
¤² © «
r x
vu w vqp q
r x
vu x {u
p q zs
· ® ¬ ² ¬ ««¬
ª ¬
u
{ x zs
« ¨ «© ¡ ´ © ¨§ ¤ ² ¤ ¬ £ ¢ ¤ ² ¨µ ¤ ³ ¶ ¬
¡
vqqv
r x sy x sx
y u ssu
qq { qv
x
«©£® ©® £ ¤ ª ¤
¢ ¥¬ º ¤ ¥
ª ¦ ¨² ¨ª ¤ «
ª ¬
§ ®¯ ¤
£ «® ¥© ¤ ¡
£¬ ¢ £¤¡ ¤
©¤£ ¦¤
ª ¤
¡
¬ ««¤
² ¬ ««¤
§ ¤ ¤ § ¨ª ¤ ª ¦® ² ³ ¾ «
« £
«¨¡ ¥ «
² © ² ª ¨ª ¤
« ¡
£ § ¬ ££ £ ¤ ¬ ® ©£ ¤ « ¦® ² ³ ¾ « °
¿ ¥¢ ® ¡ ¤ «
¼ ¤ ² ©¤¢ ² «
©£ ¤ ª ¨§ ¨¬ ² ¤ ¥¡ ² © ¤ ©£ ¨º ® »ª ¤ «
¤ ¬
£¬¯ §©¬
À
£¬ ¢ £¤¡ ¤ ³ ¶ ¬
«©£® ©® £ ¤ ª ¤ Á
Â
Â
Â
Â
¤ § ¨ ¥ ¨© ¤ ¤ ¨¡ ¥ ¡ ² © ¤ ³ ¶ ¬
¤ ¡ ¤ ² ® © ² ³ ¶ ¬ Ä ¨ ° ° § ¬ £ £ § ³ ¾ « ¡ ¥ ½ ¬ £ ¤ ¡ ² © ¬ « Å
Ã
£¬ ¡ ¬ ¼ ¤ ¨¡ ¥ ¡ ² ©¤ ³ ¶ ¬ ¤ £ ¤ ¥ ¥¤ Å
Æ
ª ® µ ¤ ¬ § ¬ ££È ² § ¨¤ ª ££¬ « ª £¬ ¢ £¤ ¡ ¤ ³ ¶ ¬ Å
Ç
¿ © ² ® ¤ ¬ « ¦ ¨© ¬ « ª ¼ ¨ ª ¬ « ¤ Ä · ® ² ¤ « ¤ ¥© £ ¤ ³ ¾ « Å
/
! " # $ % & % ' # $ ( # %
0 " 1 2 ' " " % $' /
5
/
3
) " $ $#
" ', " ( #
%
( % , - * # $ ) *# + * "
1 3 $' # + 2# 4 " 2 ( # ) * # + * "
( * % 1 6 7 #
0 " 1 2 ' " " # ) ' ) *%+ #
" ( # *% $.
" .
8 * % 3 '2! " 6 7 # .
! " 6 7 #
9
2+ 3
" $
( % $, " '"+ % $
"4 # *( "+ %
/
9
/
9
( #
) *#: % 1'#
1 " * " 1 '% *! " 6 7 #
/
( "
) *# + *"
" 6 7 #
% $'*3 '3 * " ( " ;
( % 1# **% '% $
( "
$% * + 3 " ( " ) # * &3 6 < % $ =
% $'*3 '3 * " ( # $ ( " ( # $ >
@
%
( %
% + 2+ % 1 " ( " .
3
) *# + *"
"
1 #
3
"
? 1 "
&3 6 7 #
+ 2# 4 " 2
) # ( %
$%*
3 % $'# - , % 2.
A 7 # '#
" %
1 # ' " " " ' 3 * % ! " % , # 23 ' , " ( # $ ) * # + * "
" $ .
9
( % 1 #
) # $6 7 #
"4 # *( "+ %
%
&3 6 < % $ 7 #
> " ? 1 " &# *
" ( % ( % 1 #
) # $ 6 7 # ) # $ $ B, % 2 C D
" # 3 '*"
4 " $ % " E $% " ( % '& 1 " 6 7 # ( % 1 2" $ $% $ ( % # 4: % 1 '# $ % $% 3 $ * % 2" 1 # "
% '# $ C D
@
@
( " ( # $ % &3 6 < % $
3 % # $
" ) 3 2"
; $% ( #
3 % # $ ( " ( # $ 7 # % $'7 #
# 4: % 1'#
% + 2# 4 "
( * % 1 ' "
% ' % " 1 % $ $ B, % $ ( #
% F '% *# * ( # # 4: % 1 '# C
9
" 4 # *( "+ %
H
* % '" ( "
4 " $% " ( "
%
H
H
4: % 1'# $ C
) # *
%, ( I 1 " " 1 #
) *% % $7 #
%
( $ 1 ) 2 " $
) "*'% ;
L $'%
J
c
" $
# 4: % 1'# $
$%*-
( % $ % , # 2, 1 # 1 % ) '3 " 2 ( #
( %
% $'3 ( " ( "
% '#
$$'%
) *# 4 2%
J + % K " * "
"
( $1 ) 2 "
- '1 #
( %
( %
) *# + *"
" $
G *# + *"
" 6 7 #
@
3 % ) < % %
" ; " '% $ ( " ) *# + *"
" 6 7 # ; $ % * - % $'3 ( " ( " ;
9
L # &'M " * %
%
- 2$%
%
# ( % 2" 6 7 #
( %
( %
" $ C
+ % * " 2; & " 2" E $ %
Y d e f ]
] Y
Y W
( %
( % 1 #
) # $6 7 #
%
N O P Q RS T U
V W
X Y V
Y W
W Z [ Y \]
^ ] [ V_`
aV_
Y W b
] gh V ij] k l ]
i b a]
[ ] a ] gh V ij] aU b
[ V i ] W ^ ] ame f ]
V W
W Z [ Y \] aU ] Y
c
] _ e b b a o b d j b p V d a b ^ ] d j b [ b a b d j V _ m] _ W V d j V U V d X Y b d j ] ^ _ ] i Y _ b _ V [ Y n m_
W ] [ Y \b _ mn b e f ] U _ V
b a [ V ao b d jbp Vd a k
q
b_V i V
aV_
b ^ \mi b e f ]
i \b_]
bp ] _b
[ V ajb
X Y V
b
W V j] [ ] \] p mb
W ] [ Y \b _ mn b e f ]
^ b aab
^ V \]
_V [ Y n
V ajY [ ]
b
i ] W ^ \V r m[ b [ V V
c
b ij] _V a
[ V
[ ] a
ma a]
s
g ] W k t
u Y b \m[ b [ V
[ ] a
^ _ ] p _ b W b aU ^ V \b a v V Y _ wajmi b a V ^ V \b a V aj_ b js p mb a [ V ^ _ ]h V i j] k
x y z {| } ~ ~
y y ~
¡
¢
£¤¥ ¤ ¢
¦ § ¨
5
! " # $ % ! & " $ '
6 7 $ *(
!7 $
' )
& ( "
' )* !
*3 * ! ' )(
( & 3 %( " ' )
' & ! ! < * ( ' )* " # $ % ! 8 $ )= "
m
+ , -. - / ) * & ( ' ( ! 0 1 " 2 ! ( & 3 % ( ! 4
8 $ & " $ '
n o p q rs t
( !/
8 $ & ** !3 ' 9
& " $ '
& ( : ; & (* 4
u v w n w s n o p q rs x y z {w | p s w r}| ~ q w ~ n
s p }w ~ w n w u s { s | p w
A() {
g
/* … */
y = B(x);
/* … */
l
}
!
" # $ % !
( & ! ! ?@ & " $ "
!
(
( & "
8 $ ( %8 $ *
)*( $ 1 2!
' $ "
3 * > % " ( ! !) ) 3 C
U S
C
U EYO
6 *)
1 2 !
U NNH E
V Q S
H Q Y N H Y LM H
Y LM H
F O
S ] F Q JH
Q EG S
)= "
+) 3
& ( " ' )
( & 3 %( " ' )
@ !*
@ )( ( !
" ( !
A
!
8 $ !); ( & 3 %( " ' )
3 ! ! ?@ % 4 5 %7 $ ' !
!; B
G JO I LK LJLF G F O F H M N H I N G S G T
F H E F G F H E LS M J L R G N \ G G JY O N G Z [ H
^ Q O
7 % > (
& " $ " 4
G JY O N O
F G F H E
NO_JO RYO S `EO
F H E S ] F Q JH E T
V H E
H Q YNH E
S ] F Q JH E
^ Q O
O E EO E F G F H E b
F O G R H M JG S O V YH
G R H M JG S O V YH
V O R O E E \ N LH E M G N G
( !
8 $ ( & 3 %( " ' )
( & 3 %( " ' )
M N LV R WM LH X G G JY O N G Z [ H
YGS K a S
S
" !" !
D E F G F H E I JH K G L E M N OP Q F LR G S
C
c
( !
" # $ % 0
^ Q O
H
_ H NY O X ^ Q O F O d O S H E O d LY G N X a H
H R H NNO
S ] F Q JH
^ Q GV F H
EO
F O EO S M O V e O
O V d LG
G
EQ G
G
Q S
G R H M JG S O V YH M H N LS G I O S b
S ] F Q JH
V [ H
_Q V Z [ H X S G E YH F G
GM O V G E
H E
G U EY N Q YQ N G
F G F H E
OS
^ Q O
O E E O E F G F H E O EY [ H LV E O N L F H E b f H N O g O S M JH h
{q q w
s r s | m
{{s w
i
H
R G EH
F G F H E
F G
RH S H
_LI Q N G X G
H
U EY N Q YQ N G
V H S O X Y WY Q JH X
O EY N Q Y Q N G a Q S G E H JQ Z [ H
JG F H X M G N G d G JLF G N H
f H N
H Q YNH
JG F H X EO
LS M JLR GNLG S
M O EEH G
S H NG F G X
F O YO JO _H V O
H M Y\ EEO S H E M H N
G JY O N G Z k O E V H
LV R JQ LX M G N G G Ja S F H V j S O N H F O Y O JO _ H V O X H Q YN H E
i
G YQ N G JS O V YO ^ Q O M G E EG N G H S ] F Q JH YH F G G
OYR b
S G LE M H K NO F H
V j S ONH
^ Q O M G EEGN GM OV G E H
a
M G EEGN
V O R O E E\ N LH
G
O
V j S ONH
EQ _ LR LO V YO
O EYNQ YQ N G X O d O V YQ G LE
H
F O YO JO _H V O b f H N Q S
V j S ONH
G JY O N G Z k O E
F O YO JO _H V O T
V G
O EYNQ YQ N G
S ] F Q JH b
m
w u s rw n | s
p | p | u }w!
}n
|
p q w {
s w | s
q | " {
s
# q
{}% n
s { n o p q rs { n rv s y }{ n
}n w~ n
s
u s | s rs
s
~ wq
p
u s { s
}n
w
| wq ' w
p w {
|
p
}| s n w s
{}y $ q w | s
n w }{
{ {
} s {
rw " {
s w n
w { | w p s {
p }| }p w y t
{ } s
p us { s
u s { s w { | w p s { s
{ # q | u }w r
u s n q | }u w u }s | w r
u s }| u }p |
u s { s | p s w | s w s
p s { r n | s { p
w u w {s y
w q w rn |
u w w u } p w p | n
- | p ({
q n
|
s {
r n | s {
p u {u |
n s w r
| ,% r n w } {
{
u s n
u s { s
# q s { n o p q rs { { ) w n
p
s p n
p
s u {{w n | s
| s
q n w & | }u w q | s
$ q w r}p w p { s q | u }s | w r
ro ~ }u w
w u s
| u s | w n
n o p q rs
| { }* }r}p w p ! | n
p % s rq }
s w | s
s p n
s u p }n | w r
s ~ wn w s
# q
s
p + ( { s | s n p u s { s q | u }s | w ry
m { } s { p
w us
w
p u {u | p $ q w r}p w p y
}| }s p s n o p q rs | p n ( { n o p q rs { u q ) s { r n | s { s p q ' w n
* n
s q
p {w u s rw p s {
s { { ~ q }| { } s { p w u s rw n | s p p w p s { s
us | & p s y
u {u | p p | p | u }w s w | s s s p n
t
w| { | u }w
u s n q | }u w n
p
u s }| u }p | y t
u s {s
| q n
n o p q rs
u s }| u }p |
u s { s
u w w u }' w ( {
p {
| s
} s
n
rs
s n s
w }u w n |
p { (q }r}' w p s y
s n |
u s {s { y $ q w| s
n w }{ s s w
u s { s n | s { + s w u s rw n | s y
. / 0 1 2 3 4 5 6 7 3 8 / 9 1 :; / 6 4 :
t {
v q ,{}u w {
p q w| s
s p n
{
% }{w {
s * {% w " {
u s n s
p { | % s r% }n | s n rv s w n n
t { v q ,{}u w { p s) u s { w w p s w # q {q n n
<
t
{}n r}u }p w p =
<
t
r ~ }* }r}p w p w
p
* s n
{ | {s
# q
{
w r}u w p w {
~ w r w $ q w r}p w p p s { s ~ w n w { y
q n
s q u s s
# q % }n s { }| u rq n
| p | p | u }w
<
>
? 3 4 1 7 4 @ A 5 7 3 8 / 9 1 :; / 6 4 : B C : D E / 3 8 / F 1 :; / 6 4 : 9 : 1 G : H 4 1 7 4 :
I rw }% w n | w { w J ~ }w { p s) u s
w p s w n s { q n w J u | }u w p {}~ | w p w s s) u s
s us | ws y
t
J u | }u w p - s) u s s s | ws
x w| p Z
KL M N OP Q
l
{
p q w|
w
T U Q VW X Y V K! s } }| } u } w r n | s s { w s
w r{w y
w {
u s | {}p w p w
^[ [ _ ` y
l
{w J u | }u w * w { }w ( { | w
p % +
RS
| s } | , u } s p s { w | s { [ \ u y ]Z
q n
p
| s s
p
a } } u w n |
{ { y
t
w { { s y z n w
| q n
}{ | u }w
* q ~ y b s }{
p
w {{ s
s ~ wn w
p
p q w p s
w {
J q n w w } n w s
w { { " {
q n w
w {{ s
q n
s ~ wn w
u s n
| s
{ s
s
w | w {
% w rs
p % +
# q | q | u w
% } }u w p w {
ro ~ }u s
w r{s
J
w { {q n }
# q
w {
w { { " { { s w { { w p w { y
t
J u| }u w
p
- s) us
s
s | w s
q {w
{ } s {
p
w { { " { p w {
# q w }{ q }r}' w n s {
w | w { w { J w { o { u s | p } " { y
z n w
{ ) w
J (u s | p } s
w | { p
J
q n w
uq w p w
p u rww s
q n w
p
u s n s
s w s y
{ w n s {
# q
s
{w p s
p s
| p }u w s w | s w { u s | p } " { # q
s ~ wn w
{
p % s
>
% } }u w # q w | p s
y t
yN M =W Ysqrt(x)
X X X
( J
w ' s { s
s p ( { (}w
w q | s
x>=0
p w
| q n
sqrt
p s }{
p
{ | u { {w }w n |
y n
# q
w
X Q VM N
X Q U
# q n
p % + { s { s | {+ % r s
r , u } w p { s | { w * } r } p w p
wq { | u }w
p
{ {
{ s | {w * }r}p w p
p s
u r} | # q s u s | {q s u q w n
J q n w p u rww s
{ w } { } w
{w p u rw w s
n s {
{q n n
# q s
z n w o {(u s | p } s
p u s n s }u w s
# q
s
{
J
u r} |
p w
# q
s q w
s {! y
{ w p s p s s ~ w n w w o { u q w p w
| p }u w s w | s w { u s | p } " { # q w q | s ~ w w | {w }{ w '
>
u w { s p w w }' # q w p w p w w o { ( u s | p } s s p } w { p w p w s
s q
s
w r } { } u w n | s
p }| } s
q n
abs(y*y-x) < ε;
p w J
|
w
Y U Q VW X VU
ww q n
p w p s
o {(u s | p } " { p q n w
q | s
s {
{q {
ε>0
y*y=x
y
q | s
u r} | {
s
w !
s w s y
n }| w y
t
+
J ( u s | p } s s | w r , u } s
p
q | s
u { { s p { {
q n w
y t
( # q
u r} | p w q | s
u w }
u s | {q s
J u v w n w p w y - s n rs u s | { } p ( { w q | s w }' # q w p w p w
J (u s | p } s
s p
{ % }{w
q | " {
# q
w
u s n s
w
w o {
n w }{
p }| } s
q }r}' w n ! y
m
p
u s | w s
s p }w { p }~ } p s | { { n s {
"Eu, função fulana de tal, comprometo-me a fornecer um
estado final em que a pós-condição está satisfeita, se
e só se for chamada com a pré-condição satisfeita"
w
w
p s
u s | ws
p s
s * }~ w " { s p + s
u r} |
| s
us n s wn | s
s
{ w } { } w
| s
# q # q }{ ~ w q n
w
q | s
{q r w p s
}u w
{ n
r}%
p
{ | }p s s q
n {n s ww w uq s p s s ~ wn w y
w~ s w
- ww
q n
u rw s
w rJ n
w | u { {}p w p p
p s uq n | wn s { p % }p w n |
p p s uq n | w w ww
# q q n w
q | s
uq w
s
u o p }~ s
# q w r s
{}~ | } }u w p s
p s { { q { w ~ q n | s { J q | p w n | w r { u } }u w n s { w { {q w { J
- ww
wrJ n
p } { { s s % ' { J & }r }| u rq } n s { u s n | + }s { | s
u o p }~ s
# q s p q ' }n s { y
p u w p w
w { o {(u s | p } " { y
# q | s { r n * n
w % w r}p w p p u w { u s | p } " { y - s n rs
x = a*a + 1; /* x > 0 já que é a soma de 1 com uma quantidade positiva ou nula */
y = sqrt(x);
z n w
% w | w~ n
p s
s) us
s
us | ws
q | " { s u s | { # q | u }w p s
s p
| s
p % w { {q n } # q
u s s
s ({
J
w
{}~ | } } u w }% w
s ~ wn w y z n w % ' # q
w J (u s | p } s
{+
{}n r} }u w s
p s
u o p }~ s
s s ~ wn w p s p q n w
{ w } { } w | s
+ | u {{}p w p
p
p w {
q | s
w {w
p w q | s y
# q
s ~ wn w {
w
{}n r}u }p w p
# q
s
s q s
J
q n
rw p s
w { us
w
q | p w n | w r
us n r }p w p
J
q n
| s
p s {
p { | % s r% }n | s
n w }s {
}| }n }~ s {
p
p w
# q w r}p w p y
t r~ q n w { s q w { % w | w ~ | {
<
- s n s % w
q | s
{ u } w
p s ~ wn w { u s us {
{+ }n r n | w p w u s uw n |
u s n s
{ | s
s p n s { w { {~ q w # q q n w
{ u } } u w n s { }~ s s { w n |
s
# q w q | s + # q w ' ! =
<
w u } r } w w p s u q n | w s =
q s w s { w p q w s y
<
s ({
# q
u r} | {!
s
} s
OM
w q w rn |
{s w y
p
u s | w s
{w n s {
# q
- s
| s
s q w {
w
p }{u q }p s
} n s (| s {
{+
w' s +% r
w rw % w {
{w * r u }p s
J
u s n q | }u w s
w { {q n }
s p w
w
|
# q
| w p w
s
p
n {n s
p
q | " {
s | u p s {
{s w
{
ww
w { {w
}| s n w s
p s
{s w y
|
{{s w {
q }r}' w p s
ww
s
s ~ w n w + # q { p % }p w n | % w r}p w p w y
t {
w {{ " {
p % s
{
{ {w {
s
s n w rn |
# q w | s
s { { ,% r
M P q {w | p s
{ {" { x s s r w | w { y
n
{q n s
<
m
u s s
<
t
% }s rw s
p q n w q | s
<
t
<
z n w % }s rw s
n
% }s rw s
p
q n w
p % + w { {q n } # q w J ( u s | p } s { + { w } { } w =
p u q s p q n w w { { s J {}| w r p * q ~ | s s ~ w n w =
n s
J (u s | p } s
J
{}| s n w
* q ~
p
| s
u r} |
q | s
# q
w '
w
uv w n w p w! =
s n s
n rs
p % s r%
w
p q n w o {(u s | p } s
p s
u w * w
# q
p
w u w* w n s {
q n w
r}{w y
p
m
J {}| s n w p * q ~ | w o }w q | s =
%
u o p }~ s
u s | {}p ( {
p {w
s
u w {s
q | s
p w
q | s
}| u rq }| p s
wo n }u w
u s n | + }s {
# q
J
s
{ ~ q }|
/*
Retorna o item do primeiro nó do argumento, list.
Pré-condição: list != NULL
type lsthead(link list) {
return list -> item;
}
*/
s ( { # q p w n {n w s n w # q s | s n p w { q | " { # q n w | } q rw n
s
str
n w | } q rw n
# q
m
s
u s | % | u }s | w n s { s
p } { s | }* }r}' w q n
{
{+
r}{w { u s n w n
q n w
s
n u w | }{n s
| w
r}% w }w
s p n s { {u %
lst
p
q | }s n }p w p
# q
s { }s n |
<assert.h>.
s
{}| ~ { u s n w n
| s n
p w {
q | " {
y
{}n r { w w % }}u w w % }s rw s
p s { s ~ w n w { n } }| p s
p }| }p s
# q { s
- ww
q {w
w
{q w
{
p w {{ " { p q w |
p { w u }% w s y { {
n u w | }{n s
| w
n u w | }{n s
q | s
w | }s
#include <assert.h>
type lsthead(link list) {
assert(list != NULL); /* ou simplesmente assert(list); */
return list -> item;
}
w { { s
~ w p w
q n w
w~ q n | s
n | {w~ n
p
p w n w us
s
s % }s rw p w s
assert
w }| p }u w s
u s n
p s
s ~ w n w
}u v } s
{+
p w
w * s w p s
r}| v w
{+
n
# q
{
% } }u s q
w
% }s rw s y t o {
s
{
p s
s ~ wn w
w
% } }u w s
p w
w {{ s
s p +
{
p { w u }% w p w { { u % n s { w p } u }% w
#define NDEBUG
w| { p
#include <assert.h>.
x }w |
rr}{
y | }~ v w n Z y b | | } { I } u v }
M O VOU Q
M T
W U P W X OQ P
X Q P X P M - | }u ( w rr ^[ [ ^ y
s s } ' w w)
VW Y V W M N OQ
w v | } q {w | t | p {s | (
T s n q u } | u - { {
p
Q X M Q VX
s ^[ [
N
U
L X VX
y
] s q p s | _
`
y
s q p s |
| ~ r s s p
y s | {w | }|
y y ^ [ _
r}
VW Y V W M L M N OP Q - | } u ( w r r
y
Uma das primeiras e das mais relevantes referências sobre Projecto Estruturado.
Introduz o Diagrama de Estrutura, factores de Qualidade como Acoplamento e Coesão,
assim como discute várias heurísticas de projecto. Apesar da idade continua a valer a
pena ler.
]Z
[ _ `
l
R M Y V ! W O M Q V M U V " X W M
l
w n * J n v $ $ y } r y u s n y
x w | p
^[ [ _ y
I | u }w
s * }~ w o }w
w r}u w p s
#
Z
w u q w r}' w p w
ww
s
w* s p w~ n
{s *
{q p s
p
w us {
p
- s) us
T U Q N VW Y VOU Q - | }u
$ q w r}p w p
s
n
s | ws
{s w
w rr
| u }w
{ u }w rn |
# q w | p s
s } | w p w s s *) u s { y