• 全民Scheme(1):数字游戏


    刚刚看到两句话,感觉不错,分享给大家:

    1.用户的问题。就是我们的问题

    2.做一些用户想要的东西

    (define add1
      (lambda (x)
        (+ 1 x)))
    
    (define sub1
      (lambda (x)
        (- x 1)))
    
    (add1 67)
    (sub1 5)
    (sub1 0)
    
    (zero? 22)
    
    (define addup
      (lambda (tup)
        (cond
          ((null?

    tup) 0) (else (+ (car tup) (addup (cdr tup))))))) (addup '(3 4 5)) (define * (lambda (x y) (cond ((eq? 1 x) y) (else (+ y (* (sub1 x) y)))))) (* 3 9) (define tup+ (lambda (tup1 tup2) (cond ((null?

    tup1) '()) (else (cons (+ (car tup1) (car tup2)) (tup+ (cdr tup1) (cdr tup2))))))) (tup+ '(2 3 4 5) '(5 4 3 2)) (define > (lambda (x y) (cond ((zero? x) #f) ((zero? y) #t) (else (> (sub1 x) (sub1 y)))))) (> 4 3) (> 3 3) (> 3 4) (define < (lambda (x y) (cond ((zero?

    y) #f) ((zero? x) #t) (else (< (sub1 x) (sub1 y)))))) (< 3 3) (< 4 3) (< 3 4) (define = (lambda (x y) (cond ((> x y) #f) ((< x y) #f) (else #t)))) (= 3 4) (= 3 3) (= 4 3) (define expt (lambda (x y) (cond ((zero?

    y) 1) (else (* x (expt x (sub1 y))))))) (expt 5 3) (define / (lambda (x y) (cond ((< x y) 0) (else (add1 (/ (- x y) y)))))) (/ 10 2) (define length (lambda (lat) (cond ((null? lat) 0) (else (add1 (length (cdr lat))))))) (length '(good hello)) (define pick (lambda (n lat) (cond ((eq? n 1) (car lat)) (else (pick (sub1 n) (cdr lat)))))) (pick 3 '(hotdogs with hot mustard)) (define no-nums (lambda (list) (cond ((null? list) '()) ((number? (car list)) (no-nums (cdr list))) (else (cons (car list) (no-nums (cdr list))))))) (no-nums '(5 pears 6 prunes 9 dates)) (define all-nums (lambda (lat) (cond ((null? lat) '()) ((number? (car lat)) (cons (car lat) (all-nums (cdr lat)))) (else (all-nums (cdr lat)))))) (all-nums '(99 abc 33 mm 9 gg fuck)) (define eqlat? (lambda (a1 a2) (cond ((and (null? a1) (null? a2)) #t) ((and (number? (car a1)) (number? (car a2))) (cond ((= (car a1) (car a2)) (eqlat?

    (cdr a1) (cdr a2))) (else #f))) ((eq?

    (car a1) (car a2)) (eqlat?

    (cdr a1) (cdr a2))) (else #f)))) (eqlat? '(a b c 33) '(a b c 33)) (define occur (lambda (a lat) (cond ((null? lat) 0) ((number? a) (cond ((and (number? (car lat)) (= (car lat) a)) (add1 (occur a (cdr lat)))) (else (occur a (cdr lat))))) ((number? (car lat)) (occur a (cdr lat))) ((eq?

    a (car lat)) (add1 (occur a (cdr lat)))) (else (occur a (cdr lat)))))) (occur 'a '(a b c d e a 3 4 a)) (occur 3 '(b cd e 3 4 3 ed 3)) (define one? (lambda (n) (= n 1))) (one? 3)



  • 相关阅读:
    数据库学习笔记5---MySQL字符串函数、日期时间函数
    关于hibernate的AnnotationConfiguration的问题
    浅谈Java web 中request的setAttribute()用法
    JAVA常见面试题之Forward和Redirect的区别
    JSP页面中<%!%>与<%%>与<%=%>
    Servlet的生命周期
    JavaEE学习路线图
    java web项目WEB-INF与META-INF的作用
    iOS-申请邓白氏编码的超详细流程介绍
    从高版本JDK换成低版本JDK报错
  • 原文地址:https://www.cnblogs.com/clnchanpin/p/7249603.html
Copyright © 2020-2023  润新知