zoukankan      html  css  js  c++  java
  • 2.2(点,线段,矩形的构造)

    ;2.2
    (define (make-point x y)
      (cons x y))
    
    (define (x-point p)
      (car p))
    
    (define (y-point p)
      (cdr p))
    
    (define (print-point p)
      (newline)
      (display "{")
      (display (x-point p))
      (display ",")
      (display (y-point p))
      (display "}"))
    
    (define (make-segment start-segment end-segment)
      (cons start-segment
            end-segment))
    
    (define (start-segment l)
      (car l))
    
    (define (end-segment l)
      (cdr l))
    
    (define (average x y)
      (/ (+ x y)
         2))
    
    (define (midpoint-segment l)
      (let ((start (start-segment l))
            (end (end-segment l)))
        (make-point (average (x-point start)
                             (x-point end))
                    (average (y-point start)
                             (y-point end)))))
    
    
    (print-point (make-point 1 1))
    
    (define start (make-point 1 3))
    (define end (make-point 4 3))
    (define seg (make-segment start end))
    (define mid (midpoint-segment seg))
    (print-point mid)
    
    
    (define (perimeter-rectangle sq)
      (let ((length (length-of-rectangle sq))
            (width (width-of-rectangle sq)))
        (* 2
           (+ length width))))
    
    (define (area-rectangle sq)
      (* (length-of-rectangle sq)
         (width-of-rectangle sq)))
    ;
    (define (make-rectangle length-1 length-2 width-1 width-2)
        (cons (cons length-1 length-2)
              (cons width-1 width-2)))
    
    ;; selector
    
    (define (length-1-rectangle r)
        (car (car r)))
    
    (define (length-2-rectangle r)
        (cdr (car r)))
    
    (define (width-1-rectangle r)
        (car (cdr r)))
    
    (define (width-2-rectangle r)
        (cdr (cdr r)))
  • 相关阅读:
    leetcode 414
    Leetcode 495
    Leetcode 485题
    Python 24点(2)
    python 24点
    我的第一次作业
    Django
    multiprocessing模块
    遍历文档树
    shutil模块
  • 原文地址:https://www.cnblogs.com/R4mble/p/8395202.html
Copyright © 2011-2022 走看看