Racket实验一

1.阅读David Turner-Some History of Functional Programming Languages。
2.阅读a history of Haskell,了解函数语言发展的历史。
3.下载并安装Racket(https://www.racket-lang.org/),为第4步编写调试程序配置好编程环境。
安装完后点击Language->Choose Language

	引入包,点击Language->Add Teachpack:
选择引入图片2htdp/image和动画2htdp/universe: animate

4.阅读Matthias Felleisen编写的教材《How To Design Programs》的PROLOGUE: HOW TO PROGRAM部分,编写并调试成功类似下边程序,尝试修改程序让火箭在不同方向飞行(火箭图片用含有自己姓名的小图片代替)。(注:Matthias Felleisen是著名的程序语言专家,曾获得过ACM程序设计语言杰出成就奖)
源码:
; properties of the “world” and the descending rocket
(define WIDTH 100)
(define HEIGHT 500)
(define V 10)
(define X 50)

; graphical constants
(define MTSCN (empty-scene WIDTH HEIGHT))
(define ROCKET 在这里插入图片描述
)
(define ROCKET-CENTER-TO-TOP
(- HEIGHT (/ (image-height ROCKET) 2)))
(define ROCKET-CENTER-TO-width
(- WIDTH (/ (image-width ROCKET) 2)))

; functions
(define (picture-of-rocket.v6 t)
(cond
[(<= (distance t) ROCKET-CENTER-TO-TOP)
(place-image ROCKET (distanceX t) (distance t) MTSCN)]
[(> (distance t) ROCKET-CENTER-TO-TOP)
(place-image ROCKET (distanceX t) ROCKET-CENTER-TO-TOP MTSCN)]))
; 计算高度
(define (distance t)
(* V t))
; 计算左右浮动
(define (distanceX t)
(* X (sin (/ t 10))))
(animate picture-of-rocket.v6)
实验效果:
图片以Cos x函数轨迹运动
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值