Orders of Growth and Tree Recursion CoSc 450: Programming Paradigms - - PowerPoint PPT Presentation

orders of growth and tree recursion cosc 450 programming
SMART_READER_LITE
LIVE PREVIEW

Orders of Growth and Tree Recursion CoSc 450: Programming Paradigms - - PowerPoint PPT Presentation

CoSc 450: Programming Paradigms 04 Orders of Growth and Tree Recursion CoSc 450: Programming Paradigms 04 Graphics primitive operations CoSc 450: Programming Paradigms 04 Graphics primitive operations y 1 x -1 0 1 -1 Co-ordinate


slide-1
SLIDE 1

CoSc 450: Programming Paradigms

Orders of Growth and Tree Recursion

04

slide-2
SLIDE 2

CoSc 450: Programming Paradigms Graphics primitive operations 04

slide-3
SLIDE 3

CoSc 450: Programming Paradigms Graphics primitive operations

1

  • 1

1

  • 1

Co-ordinate system

x y

04

slide-4
SLIDE 4

CoSc 450: Programming Paradigms C-Curve code

(define c-curve (lambda (x0 y0 x1 y1 level) (if (= level 0) (line x0 y0 x1 y1) (let ((xmid (/ (+ x0 x1) 2)) (ymid (/ (+ y0 y1) 2)) (dx (- x1 x0)) (dy (- y1 y0))) (let ((xa (- xmid (/ dy 2))) (ya (+ ymid (/ dx 2)))) (overlay (c-curve x0 y0 xa ya (- level 1)) (c-curve xa ya x1 y1 (- level 1))))))))

04

slide-5
SLIDE 5

CoSc 450: Programming Paradigms C-Curve code

(define c-curve (lambda (x0 y0 x1 y1 level) (if (= level 0) (line x0 y0 x1 y1) (let ((xmid (/ (+ x0 x1) 2)) (ymid (/ (+ y0 y1) 2)) (dx (- x1 x0)) (dy (- y1 y0))) (let ((xa (- xmid (/ dy 2))) (ya (+ ymid (/ dx 2)))) (overlay (c-curve x0 y0 xa ya (- level 1)) (c-curve xa ya x1 y1 (- level 1))))))))

Base case 04

slide-6
SLIDE 6

CoSc 450: Programming Paradigms C-Curve code

(define c-curve (lambda (x0 y0 x1 y1 level) (if (= level 0) (line x0 y0 x1 y1) (let ((xmid (/ (+ x0 x1) 2)) (ymid (/ (+ y0 y1) 2)) (dx (- x1 x0)) (dy (- y1 y0))) (let ((xa (- xmid (/ dy 2))) (ya (+ ymid (/ dx 2)))) (overlay (c-curve x0 y0 xa ya (- level 1)) (c-curve xa ya x1 y1 (- level 1))))))))

Induction case 04

slide-7
SLIDE 7

CoSc 450: Programming Paradigms 04

(x0, y0) (x1, y1) (xa, ya)

Figure 4.10 The three key points in a c-curve of level greater than zero.

slide-8
SLIDE 8

CoSc 450: Programming Paradigms 04

(x0, y0) (x1, y1) (xa, ya)

Figure 4.10 The three key points in a c-curve of level greater than zero.

Level = 0

slide-9
SLIDE 9

CoSc 450: Programming Paradigms 04

(x0, y0) (x1, y1) (xa, ya)

Figure 4.10 The three key points in a c-curve of level greater than zero.

Level = 1

slide-10
SLIDE 10

CoSc 450: Programming Paradigms 04

(x0, y0) (x1, y1) (xa, ya)

Figure 4.10 The three key points in a c-curve of level greater than zero.

Level = 2

slide-11
SLIDE 11

CoSc 450: Programming Paradigms Sierpinski’s gasket — Exercise for the student 04

Figure 4.6 An example of Sierpinski’s gasket.