100% satisfaction guarantee Immediately available after payment Both online and in PDF No strings attached 4.2 TrustPilot
logo-home
Exam (elaborations)

University of British Columbia CPSC 110 LAB 1

Rating
-
Sold
-
Pages
6
Grade
A+
Uploaded on
15-10-2021
Written in
2021/2022

University of British Columbia CPSC 110 LAB 1

Institution
Course









Whoops! We can’t load your doc right now. Try again or contact support.

Written for

Institution
Course

Document information

Uploaded on
October 15, 2021
Number of pages
6
Written in
2021/2022
Type
Exam (elaborations)
Contains
Questions & answers

Subjects

Content preview

CPSC 110 LAB 1

HtDF Lab

P3
A (much too) simple scheme for pluralizing words in English is to add an
s at the end unless the word already ends in s.

Design a function that consumes a string, and adds s to the end unless
the string already ends in s.

;; String -> String
;; Adds an s to end of given word, unless word already ends in s
(check-expect (pluralize "hello") "hellos")
(check-expect (pluralize "has") "has")
(check-expect (pluralize "") "")




m
er as
;(define (pluralize str) "") ;stub




co
eH w
;(define (pluralize str)




o.
; (... str)) ;template
rs e
ou urc
(define (pluralize str)
(if (string=? str "")
""
o

(if (string=? "s" (string-ith str (- (string-length str) 1)))
aC s

str
vi y re


(string-append str "s"))))

P4
Design a function called nth-char-equal? that consumes two strings
ed d




and a natural and produces true if the strings both have length greater
ar stu




than n and have the same character at position n.

Note, the signature for such a function is:
;; String String Natural -> Boolean
is




The template for such a function is:
Th




(define (nth-char-equal? s1 s2 n)
(... s1 s2 n))
sh




;; String String Natural -> Boolean
;; Produces true if string-length of s1 and s2 are greater than n and have the same character at position
n
(check-expect (nth-char-equal? "hello" "goodbye" 10) false)
(check-expect (nth-char-equal? "hello" "bell" 6) false)
(check-expect (nth-char-equal? "time" "bath" 3) false)
(check-expect (nth-char-equal? "candy" "mandy" 3) true)


This study source was downloaded by 100000805705997 from CourseHero.com on 10-14-2021 20:45:30 GMT -05:00


https://www.coursehero.com/file/46578028/CPSC-110-LAB-1docx/

, ;(define (nth-char-equal? s1 s2 n) false) ;stub

;(define (nth-char-equal? s1 s2 n)
; (... s1 s2 n)) ;template

(define (nth-char-equal? s1 s2 n)
(if (> (string-length s1) n)
(if (> (string-length s2) n)
(string=? (substring s1 (- n 1) n) (substring s2 (- n 1) n))
false)
false))


Balloon Lab




m
; Balloon popping




er as
co
;; CONSTANTS ==========================




eH w
o.
(define WIDTH 500)
(define HEIGHT 500)
rs e
ou urc
(define MTS (empty-scene WIDTH HEIGHT))

(define BALLOON-COLOUR "red")
o

(define POP-IMAGE (overlay (text "POP!" 80 "black")
(radial-star 30 (/ WIDTH 10) (/ WIDTH 2) "solid" "yellow")))
aC s
vi y re



(define CTR-X (/ WIDTH 2))
(define CTR-Y (/ HEIGHT 2))
ed d




(define SPEED 2)
ar stu




(define MAX-SIZE (/ WIDTH 2))

;; DATA DEFINITIONS ============================
is




;; Balloon is one of:
Th




;; - Number[1, MAX-SIZE]
;; - false
;; interp. number is the radius of balloon in screen pixels, false means balloon is popped
sh




(define B1 1)
(define B2 false)
(define B3 10)
(define B4 MAX-SIZE)

(define (fn-for-balloon b)
(cond [(and (number? b)


This study source was downloaded by 100000805705997 from CourseHero.com on 10-14-2021 20:45:30 GMT -05:00


https://www.coursehero.com/file/46578028/CPSC-110-LAB-1docx/
$2.99
Get access to the full document:

100% satisfaction guarantee
Immediately available after payment
Both online and in PDF
No strings attached


Also available in package deal

Get to know the seller

Seller avatar
Reputation scores are based on the amount of documents a seller has sold for a fee and the reviews they have received for those documents. There are three levels: Bronze, Silver and Gold. The better the reputation, the more your can rely on the quality of the sellers work.
StuviaGuides West Virgina University
Follow You need to be logged in order to follow users or courses
Sold
15169
Member since
6 year
Number of followers
8354
Documents
5312
Last sold
1 day ago
Accounting, Finance, Statistics, Computer Science, Nursing, Chemistry, Biology & More — A+ Test Banks, Study Guides & Solutions

As a Top 1st Seller on Stuvia and a nursing professional, my mission is to be your light in the dark during nursing school and beyond. I know how stressful exams and assignments can be, which is why I’ve created clear, reliable, and well-structured resources to help you succeed. I offer test banks, study guides, and solution manuals for all subjects — including specialized test banks and solution manuals for business books. My materials have already supported countless students in achieving higher grades, and I want them to be the guide that makes your academic journey easier too. I’m passionate, approachable, and always focused on quality — because I believe every student deserves the chance to excel.

Read more Read less
4.3

2134 reviews

5
1471
4
281
3
168
2
69
1
145

Recently viewed by you

Why students choose Stuvia

Created by fellow students, verified by reviews

Quality you can trust: written by students who passed their tests and reviewed by others who've used these notes.

Didn't get what you expected? Choose another document

No worries! You can instantly pick a different document that better fits what you're looking for.

Pay as you like, start learning right away

No subscription, no commitments. Pay the way you're used to via credit card and download your PDF document instantly.

Student with book image

“Bought, downloaded, and aced it. It really can be that simple.”

Alisha Student

Frequently asked questions