`
yangbb
  • 浏览: 33901 次
  • 来自: ...
社区版块
存档分类
最新评论

换零钱

阅读更多
书是07年买的,看了开头两章就没有进展了,现在又拾起。
计划在这段时间好好学习一下。

第一章的实例换零钱,本来想能不能写出个迭代的实现,想了一天,没有想出来。

中间写了这么一个实现,还是递归的,运行缺出错,没有想明白错在哪里。


(define (count-chg2 amount)
   (define (first-of-coins kinds)
    (cond ((= kinds 1) 1)
          ((= kinds 2) 2)
          ((= kinds 3) 5)
          ((= kinds 4) 10)
          ((= kinds 5) 20)
          ((= kinds 6) 50)
          ((= kinds 7) 100)
          ((= kinds 8) 200)
          ((= kinds 9) 500)
          ((= kinds 10) 1000)
          ((= kinds 11) 2000)
          ((= kinds 12) 5000)
          ((= kinds 13) 10000)
          ))
  (define (dec-amount amount kinds)
    (- amount (first-of-coins kinds)))
  (define (dec-kinds kinds)
    (- kinds 1))
  (define (inc-amount amount kinds)
    (+ amount (first-of-coins kinds)))
  (define (inc-kinds kinds)
    (+ kinds 1))
  (define (cc-iter amount kinds count)
    (cond ((= 0 amount) (+ 1 count))
          ((or (< amount 0) (< kinds 0)) count)
          (else 
           (+ (cc-iter (dec-amount amount kinds) kinds count) (cc-iter amount (dec-kinds kinds) count))
           )
     )
   )
  (cc-iter amount 4 0)
 )


在else的地方,运行报错
-: expects type <number> as 2nd argument, given: #<void>; other arguments were: 1

现在还不明白怎么解决,先记下来,看到后面再回头来看
分享到:
评论

相关推荐

    换零钱程序

    "换零钱程序"是一个专为财务人员设计的实用工具,旨在简化工资发放过程中零钱的准备和管理。在日常的财务管理中,特别是在发工资时,确保足够的零钱以供员工兑换是至关重要的。这个程序的出现,就是为了帮助会计人员...

    整钱换零钱问题.cpp

    整钱换零钱问题.cpp

    论文研究-兑换零钱问题的动态规划算法研究.pdf

    兑换零钱问题是一个求解组合优化的问题。首先对兑换零钱问题进行了分析,证明了该问题满足动态规划的最优化原理,并给出了其动态规划解法;然后对本算法进行了时间复杂性和空间复杂性分析,得到时间复杂性由通常的...

    编一个程序,把一张面值100元的钞票换成5元,1元和5角面值的钞票,要求100元换以上的零钱100张,且要求每种不少于一张。请问,有哪几种换法?

    编一个程序,把一张面值100元的钞票换成5元,1元和5角面值的钞票,要求100元换以上的零钱100张,且要求每种不少于一张。请问,有哪几种换法?

    兑换零钱C语言源码

    算法设计课程代码,此代码为零钱兑换的C语言代码,感谢下载

    最少零钱问题,最少硬币问题

    最少零钱问题,最少硬币问题,动态规划算法,找零钱问题,

    Java编写的零钱转换程序

    呵呵,呵呵,刚学,呵呵,y。daniel liang编的书上的作业题

    《你会兑换人民币吗?》活动建议方案.doc

    该活动主要分为两个部分:换零钱和买东西。 活动一:换零钱 这个环节主要是让学生了解1元、1角、1分之间的换算关系。通过以下步骤进行: 1. 换算10元成元为单位的零钱:首先展示10元人民币,然后引导学生思考如何...

    找零钱 JAVA 实现

    找零钱JAVA程序实现 本文将详细介绍一个使用JAVA语言编写的找零钱程序的实现过程,并对程序的标题、描述、标签和部分内容进行解释。 标题解释 本程序的标题为“找零钱JAVA实现”,这表明该程序的主要功能是使用...

    零钱计算器

    零钱计算器是一款专为处理日常生活中零散货币计算问题而设计的应用程序,它极大地简化了在日常生活、商业交易或财务管理中对零钱和散钱进行精确计算的过程。这款计算器通常具备用户友好的界面和简单易用的功能,使得...

    《你会兑换人民币吗?》活动方案.docx

    本方案通过设计换零钱和买东西两个教学环节,让学习变得更富趣味和实践意义。 活动的设计始于换零钱环节,这是学生认识货币单位换算的起点。在这个环节中,学生将学习到1元等于10角,1角等于10分的基本换算知识。...

    认识人民币_练习1.ppt

    通过系列练习,孩子们可以逐步了解人民币的基本面额、计算方法,并在实践中掌握换零钱和使用人民币购物的技巧。 人民币的基本面额包括主单位“元”和辅单位“角”及“分”。1元相当于10角,而1角等同于10分。在教学...

    兑换人民币活动方案.doc

    活动一“换零钱”环节,通过模拟现实中的换钱场景,让学生在具体操作中体会到货币面额之间的等价关系。例如,通过实物操作,学生可以将一张10元纸币换成十张1元纸币,或者换成五张2元纸币。同样,他们也可以将1元...

    认识人民币 (2).ppt

    孩子们在模拟的换零钱游戏中,能够亲身体验和实践货币的使用,从而更深刻地理解和记住货币的价值和使用规则。 为了进一步提高孩子们的实际操作技能,教学材料中还引入了“无人售票车”的情境。在这个模拟情境中,...

    人民币的简单计算.ppt

    - 一张2角纸币可以换2个1角硬币。 - 4元等于40角。 - 70角等于7元。 - 10元等于100角。 - 8元等于80角。 - 50角等于5元。 - 3元等于30角。 - 1元等于10角,30分等于3角。 - 9角等于90分。 - 100分等于10角。 - 5角...

    2018蓝桥杯精彩试题.docx

    换零钞问题是指小明去x星旅游,他手里只有2张100元的x星币,太不方便,恰好路过x星银行就去换零钱。小明有点强迫症,他坚持要求200元换出的零钞中2元的张数刚好是1元的张数的10倍,剩下的当然都是5元面额的。银行的...

    四年级语文上册 小珊迪教案 人教版.doc

    他在为别人换零钱时遭遇不幸,被马车轧断双腿,但即使在临终前仍不忘诚信,委托弟弟归还零钱,并担忧弟弟的未来。 4. 课文结构分析:课文按照事情发展的顺序分为三个部分:小珊迪乞求“我”买火柴,小珊迪受伤后其...

Global site tag (gtag.js) - Google Analytics