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

换零钱

阅读更多
书是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分的基本知识。通过一系列的问题引导,例如“如何将...

    一年级下册《人民币的简单计算》教学设计.pdf

    接着,通过例题教学,如例5中的换零钱和换整钱,让学生掌握单位转换和加减计算。在例6中,通过购买不同价格的气球,让学生理解单位名称相同可以直接计算,单位不同时需要先转换单位再计算。每个例子后面都设计了相关...

    人民币的简单计算.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角...

    新西师大版一年级下册数学第五单元认识人民币(二)教案教学设计.docx

    在教学过程中,教师首先通过设置情境——小熊森林商店需要换零钱,引入教学主题。回顾上节课的内容,即1元等于10角,1角等于10分。接着,教师引导学生探索元与角、角与分之间的换算方法,例如4角可以换成多少分,5元...

    认识人民币 (2).ppt

    在教学实践中,换零钱的环节也是重要的部分。例如,一张2元纸币可以换成2张1元纸币,一张10元纸币可以换成10张1元纸币,以此类推。同样,1元硬币可以换成10枚1角硬币,这进一步巩固了孩子们对货币单位转换的理解。 ...

    2018蓝桥杯精彩试题.docx

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

    四年级语文27小珊迪PPT学习教案.pptx

    同时,他的行为表现出强烈的生存欲望和责任感,尽管饥饿难耐,仍坚持为顾客换零钱,这体现出他的诚实守信。 课文通过小珊迪四次请求先生买火柴的情节,展示了他坚韧不拔的精神。每次乞求都充满了恳切,反映出他对...

    认识人民币_练习1.ppt

    接下来的环节是“换零钱”,这是一个实践性的活动,孩子们需要将大面额的人民币换成小面额的,或者将小面额的组合成大面额的。这不仅锻炼了他们的计算能力,也让他们理解到货币的等值性。例如,将210元换成零钱,...

Global site tag (gtag.js) - Google Analytics