0

我一直在拉我的头发试图弄清楚这一点。我想设计一个函数接收一个学生,我让另一个学生具有相同的内容并且他的年龄转换为狗年。关于如何开始的任何想法?这个确切的问题将出现在我周五的开卷测试中。

(define-struct hsstudent (first-name last-name classroom overall-grade age))

(define hsstudent1 (make-hsstudent "Randy" "Smith" 'WH '-A 14))
(define hsstudent2 (make-hsstudent "Jon" "James" 'AH '-A 13 ))
(define hsstudent3 (make-hsstudent "Alex" "Manzi" 'LO '+A 16))
(define hsstudent4 (make-hsstudent "Kevin" "Matthews" 'WH '-A 14))
(define hsstudent5 (make-hsstudent "Issac" "Lewis" 'AH '-A 13 ))
(define hsstudent6 (make-hsstudent "Michael" "Gabbin" 'LO '+A 16))
4

2 回答 2

3

注意:当您说design时,这意味着您正在学习基于 HTDP 的课程。

您应该已经了解了一组非常具体的步骤来设计使用和生成结构的功能。您是否看过Designing with Structures并按照那里的步骤进行操作?如果是这样,您是否停留在此处列出的任何特定步骤?

这种方法的目的是帮助尽快查明概念问题,而不是在编码时。

于 2013-01-29T20:32:57.870 回答
1

您可以做的是使用结构选择器从学生那里获取值,然后将这些值提供给 make-hsstudent 以创建一个新学生。例如

(hsstudent-age hsstudent1)

将返回 14。一般 (hsstudent-FIELDNAME student) 会给学生 FIELDNAME 的字段值。

于 2013-01-29T17:32:14.213 回答