tag:blogger.com,1999:blog-13237629231957602542023-11-15T06:45:21.243-08:00Computer Science || Problem Solving || Computer GraphicsDotLogicalGirlhttp://www.blogger.com/profile/16486856789907382726noreply@blogger.comBlogger1125tag:blogger.com,1999:blog-1323762923195760254.post-89929346063078955512012-01-30T11:04:00.000-08:002012-02-01T08:20:03.060-08:00SICP Graphics<script type="text/javascript">
var infolink_pid = 395413;
var infolink_wsid = 0;
</script>
<script type="text/javascript" src="http://resources.infolinks.com/js/infolinks_main.js"></script>
<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<b><span style="font-family: "Courier New";">polygon,sides and length of polygon,structure of polygon</span></b></div>
<b></b><br />
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<b><span style="font-family: "Courier New";">Write a procedure that takes two arguments sides,length and </span></b></div>
<b></b><br />
<div class="MsoPlainText">
<b><span style="font-family: "Courier New";">representing the number of sides of polygon</span></b></div>
<div class="MsoPlainText">
<b><span style="font-family: "Courier New";">and length of each side.</span></b></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";">(require graphics/turtles)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";">(turtles) </span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";">(define (drawpoly sides length)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(define (helper angle length count)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(if (equal? (- sides 1) count)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(begin</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(draw length)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(turn angle))</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(begin</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(draw length)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(turn angle)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(helper angle length (+ count 1)))))</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(helper (/ 360 sides) length 0))</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><br /></span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><br /></span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><br /></span></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<b><span style="font-family: "Courier New";">circle,radius of a circle,circle,structure of a circle</span></b></div>
<b></b><br />
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<b><span style="font-family: "Courier New";">Write a procedure that takes two arguments radius of a circle and</span></b></div>
<b></b><br />
<div class="MsoPlainText">
<b><span style="font-family: "Courier New";">number of sides of approximating polygon.</span></b></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";">(define (drawcircle radius sides)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(define (helper angle radius count)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(if (equal? (- sides 1) count)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(begin</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(draw radius)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(turn angle))</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(begin</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(draw radius)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(turn angle)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(helper angle radius (+ count 1)))))</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(helper (/ 360 sides) (* 2 3.14 radius) 0))</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><br /></span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><br /></span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><br /></span></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<b><span style="font-family: "Courier New";">squares,length of the side of square,ratio of the length of square,</span></b></div>
<b></b><br />
<div class="MsoPlainText">
<b><span style="font-family: "Courier New";">diagram of series of square</span></b></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<b><span style="font-family: "Courier New";">Write a procedure that takes two arguments length of the side of the first square</span></b></div>
<b></b><br />
<div class="MsoPlainText">
<b><span style="font-family: "Courier New";">and the ratio of the side of each successive square and return the number of square to be</span></b></div>
<div class="MsoPlainText">
<b><span style="font-family: "Courier New";">drawn as input.</span></b></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";">(define (recursqr level length ratio)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(if (equal? level 0)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(drawpoly 4 length)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(begin</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(drawpoly 4 length)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(move-offset (+ length) (- length))</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(recursqr (- level 1) (/ length ratio) ratio))))</span></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<b><span style="font-family: "Courier New";">Keywords:triangle,designing in triangle,multiple series of triangle</span></b></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<b><span style="font-family: "Courier New";">Write a procedure to draw a triangle.</span></b></div>
<b></b><br />
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";">(define (s level length)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(if (= level 0)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(drawpoly 3 length)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(begin</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(drawpoly 3 length)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(move (/ length 2)) </span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(s (- level 1) (/ length 2))</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(turn 120)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(s (- level 1) (/ length 2))</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(move (/ length 2))</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(turn 240)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(s (- level 1) (/ length 2))</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(turn -60)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(move (/ length 2))</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(turn 60)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(move (/ length 2))</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(turn 180)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(draw length)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(turn 180)))) </span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><br /></span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><br /></span></div>
<div class="MsoPlainText">
<b><span style="font-family: "Courier New";">tree,structure of tree,series of tree,</span></b></div>
<b></b><br />
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<b><span style="font-family: "Courier New";">write a procedure to draw a tree.</span></b></div>
<b></b><br />
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";">(define (tree level length)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(if (= level 0)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(begin</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(turn 90)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(draw length)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(turn 180)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(move length)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(turn 180))</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(begin</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(tree (- level 1) length)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(draw length)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(turn -120)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(tree (- level 1) (* length .7))</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(turn -30)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(tree (- level 1) (* length .7))</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(turn 150)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(move length)</span></div>
<div class="MsoPlainText">
<span style="font-family: "Courier New";"><span style="mso-spacerun: yes;"> </span>(turn 180))))</span></div>
</div>DotLogicalGirlhttp://www.blogger.com/profile/16486856789907382726noreply@blogger.com0