[racket] how must I interpreted this exercise

From: Matthias Felleisen (matthias at ccs.neu.edu)
Date: Sat Jun 23 17:17:39 EDT 2012

Assuming you don't literally mean 'print', here is a function that does what you want: 

;; Sentence is one of: 
;; -- empty 
;; -- (cons String Sentence)

(define s1 '("This" "is" "a" "sentence."))
(define s2 '("And" "this" "is" "one," "too."))

;; Sentence N -> Sentence 
;; add 's' to the 2nd word in s if it is longer than i letters 

(check-expect (change s1 2) s1)
(check-expect (change s2 3) (cons "And" (cons "thiss" (rest (rest s2)))))

(define (change s i)
  (if (> (string-length (second s)) i)
      (cons (first s) (cons (string-append (second s) "s") (rest (rest s))))
      s))
    

If it doesn't what you want, follow the design recipe and let us know at which step you're stuck. 



On Jun 23, 2012, at 2:45 PM, Roelof Wobben wrote:

> I have another "problem" I try to solve in my head.
> 
> Suppose I want to change one word in a sentence depening if a comparision is true or false.
> 
> I could do this in pseudo code.
> 
> if comparision is true then print "it's true" else  print "it's not true"
> 
> It works but I type two time's "it's true".
> 
> Can this be done so I have to type only one time the sentence and depeding on true or false the word not is used. 
> 
> Roelof
> 
> 
> 
> Op 23-6-2012 16:18, Matthias Felleisen schreef:
>> 
>> Origin means (0,0) or plain 0 in English. 
>> 
>> 
>> On Jun 22, 2012, at 2:42 PM, Roelof Wobben wrote:
>> 
>>> Hello, 
>>> 
>>> I try to make this exercise : 
>>> 
>>> Exercise 76: A programmer has chosen to represent locations as Cartesian points or just points:
>>> ; Location is one of:
>>> ; – Posn
>>> ; – Number
>>> ; interp. Posn are positions on the Cartesian grid,
>>> ; Numbers are positions on the number line
>>> Design the function in-reach, which determines whether or not a given location’s distance to the origin is strictly less than some constantR.
>>> 
>>> So I must design a function called in-reach.
>>> 
>>> Am I right I need to use two structs (Posn) . One for the given location and one for the origon ?
>>> 
>>> Regards, 
>>> 
>>> Roelof
>>> 
>>> 
>>> 
>>> ____________________
>>>  Racket Users list:
>>>  http://lists.racket-lang.org/users
>> 
> 
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/users/archive/attachments/20120623/f17668ef/attachment-0001.html>

Posted on the users mailing list.