Professional Documents
Culture Documents
CONV_MILIMETRE_TO_METRE (ml: R) r: R
Pre ml 0
Post r * 1000 = ml
19. c t hm tr v s d khi thc hin php chia a/b (xt trn s t nhin).
MOD (y: N, x: N) m: N
Pre (x # 0)
Post: d Z ( y=dx+ m) (0 <= m) ( m < x)
20. c t hm tnh cn bc 2 khng m ca s thc x.
UNSIGN_SQRT (x: R) r: R
Pre x 0
Post r * r = x r 0
21. c t hm kim tra trong mng a cc s nguyn c tn ti s khng m hay khng.
TonTaiSoKhongAm (a: Z*) rs : B
Post (rs = true ^ x elems a x 0 ) v (rs = false ^ x elems a x <0 )
22 c t hm tnh tng gi tr ca 1 mng a cc s thc.
Sum(a: R*) rs : R
Pre
Post (len a = 0 rs = 0)
V ( len a > 0 rs = hd a + Sum(tl a))
23) c t hm tnh tng cc phn t dng trong 1 mng a cc s thc.
TongDuong(a: R*) rs:R
Pre
Post (rs = 0 len (a) = 0)
V ( len a > 0 ) hd a > 0 rs = hd a + TongDuong(tl (a))
V ( len a > 0 hd a <= 0 rs = TongDuong(tl a))
24) c t hm tnh tng cc s nguyn t c trong mng a cc s t nhin.
IsPrime (a: N) rs: B
Pre:
Post: (rs = true ^
x N 1,1< x < a
Mod(a, x)
0) v
Mod(a,x) = 0)
Mod(y, x : N) rs : N
Pre: (x > 0 y > 0)
Post: d Z ( y=dx+ m) (0 <= m) ( m < x)
SumPrimeNumber (a: N*) rs: N
Post: (len a = 0 ^ rs = 0) v
(len a > 0 ^
(len a > 0 ^
IsPrime(hd a) = true
IsPrime(hd a) = false
^ rs = hd a + SumPrimeNumber(tl a)) v
^ rs = 0 + SumPrimeNumber(tl a))
25) c t hm kim tra 1 s t nhin x c xut hin trong mng a cc s t nhin hay
khng .
IsExist (x: Z, a: Z*) rs: B
Pre
Post: (rs = false ^ (len a = 0
x a) ) v
^
^
n mod 2 0) v
n mod 2 = 0)
x inds a.
Post: (
y inds a
rs
) ^
rs)
Post: (
y a
rs
IsEven(x) = false ^ x
) ^