A112 Fall 1997
Christmas Tree Example
We wish to make a program that generates ASCII-art Christmas trees of varying
sizes. A tree of size 3 follows:
*
***
***
*****
*****
*******
*******
***
***
***
Here's the program:
var title = "Christmas Tree";
var author = "Chris Haynes";
function main() {
// Fri Dec 05 17:51:24 Central Standard Time 1997
// make ASCII tree art of an Xmas tree
var sizeString = ""; // string: entered tree size
var size = 0; // integer: tree size
var i = 0; // integer: index
var j = 0; // integer: index
var trunkSize = 0; // float: size of tree trunk
sizeString = prompt("What is the tree size?");
size = parseInt(sizeString);
drawLine(size, 1); // top of tree
for (i = 1; i <= size; i++) {
drawLine(size-i, i*2+1);
drawLine(size-i, i*2+1);
} // end for
trunkSize = Math.round((size-1)/3);
for (i = 0; i <= size/3+1; i++) {
drawLine(size-trunkSize, trunkSize*2+1);
} // end for
} // end function
function drawLine(numBlanks, numDraw) {
repeatDraw(" ", numBlanks);
repeatDraw("*", numDraw);
formOutput("\n");
} // end function
function repeatDraw(string, count) {
var i = 0; // integer: index
for (i = 1; i <= count; i++) {
formOutput(string);
} // for
} // end function