Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #| test przykładowy: jeśli do pustej struktury dodamy element
- ;; i od razu go usuniemy, wynikowa struktura jest pusta
- - test 2(stos): wyciągany jest zawsze ostatnio dodany element
- - test 3(kolejka): wyciągany jest pierwszy element
- - test 4 i 5(stos): lista w stosie jest równa wprowadzony do stosu elementom (nic nie znika, nic dodatkowego się nie pojawia)
- - test 6 i 7(kolejka): analogicznie jak wyżej
- |#
- (quickcheck
- (property ([s1 arbitrary-symbol] [s2 arbitrary-symbol])
- (bag-empty? (bag-remove (bag-insert empty-bag s1)))
- ;;poniższy tylko dla stosu
- (eq? s2 (bag-peek (bag-insert (bag-insert empty-bag s1) s2)))
- ;;poniższy tylko dla kolejki
- ;(eq? s1 (bag-peek (bag-insert (bag-insert empty-bag s1) s2)))
- ;;poniższy tylko dla stosu
- (let ((bag (bag-insert (bag-insert empty-bag s1) s2)))
- (contain? (list s1 s2) (cadr bag)))
- ;;poniższy tylko dla stosu
- (let ((bag (bag-insert (bag-insert empty-bag s1) s2)))
- (contain? (cadr bag) (list s1 s2)))
- ;;poniższy tylko dla kolejki
- ;(let* ((bag (bag-insert (bag-insert empty-bag s1) s2))
- ; (e1 (bag-peek bag))
- ; (bag1 (bag-remove bag))
- ; (e2 (bag-peek bag)))
- ; (contain? (list e1 e2) (list s1 s2)))
- ;;poniższy tylko dla kolejki
- ;(let* ((bag (bag-insert (bag-insert empty-bag s1) s2))
- ; (e1 (bag-peek bag))
- ; (bag1 (bag-remove bag))
- ; (e2 (bag-peek bag)))
- ; (contain? (list s1 s2) (list e1 e2))))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement