Solved

# Help with an old question..... 500 points

Posted on 2004-10-19
140 Views
Hi,
I would like you experts to try this question i posted a few days back.

Looks like we have reached some solution but not the exact one.

Cerf has been trying hard, I will give additional points through this question to anyone who can solve this:

http://www.experts-exchange.com/Web/WebDevSoftware/Flash/Q_21169992.html

Cerf, I will consider your help also.

thanks.
0
Question by:ssdesign
• 4

LVL 10

Accepted Solution

muso120999 earned 20 total points
Okay, try this - where p=Loan Amount, n=Loan duration (years), r = Loan rate (%age).  Just stick the code in a new flash (Flash MX) file and run it:

p = 30000;
n = 25;
r = 14 /100;
function createBox(container, clipName, clr, w, h, x, y) {
var x1 = (x == undefined) ? 0 : x;
var y1 = (y == undefined) ? 0 : y;
var x2 = x1+w;
var y2 = y1+h;
container.createEmptyMovieClip(clipName, container.getNextHighestDepth());
container[clipName].beginFill(clr, 50);
container[clipName].moveTo(x1, x1);
container[clipName].lineTo(x1, y2);
container[clipName].lineTo(x2, y2);
container[clipName].lineTo(x2, y1);
container[clipName].endFill();
}
// var names as in the website... clearer
var n:Number, p:Number, z:Number, a:Number;
z = r+1;
a = (p*r)/(1-Math.pow(z, -n));
trace("Annual payment: "+Math.ceil(a));
year = new Array();
year[1] = (p*z)-a;
trace("year 1 debt: "+Math.floor(year[1]));
for (var i = 2; i<=n; i++) {
year[i] = (year[i-1]*z)-a;
trace("year "+i+" debt: "+Math.floor(year[i]));
}
for (var i = 1; i<=n; i++) {
createBox(_root, "debt"+i, 0x00ff00, 10, -((year[i]/p)*200));
createBox(_root, "equity"+i, 0xff0000, 10, 200-((year[i]/p)*200));
_root["debt"+i]._x = 20*i;
_root["debt"+i]._y = 200;
_root["equity"+i]._x = 20*i;
_root["equity"+i]._y = 200-_root["equity"+i]._height;
}
0

LVL 10

Expert Comment

You should notice that it draws a very basic chart too - I had to fiddle using "200-" at the end to convert it to a cartesian coordinate type system (200 is the height of the chart), as the Flash y-coordinates are inverted.

muso
0

LVL 10

Expert Comment

Did it work for you  ssdesign?
0

LVL 10

Expert Comment

I can only help you properly if you provide some feedback ssdesign!  I'm not bothered about the points at all (I knew it's for 20 points after all ;), but when given a grade B after putting in so much time and effort for your question (I didn't just copy the code from the previous question - all code was written from scratch) is a little dis-heartening!

So whevenever possible I feel it would be nice if you could at least give some feedback on my answer - even if just to say that it isn't quite right for you, for whatever reasons, and that you don't have any more time to spend on it yourself...

muso
0

## Featured Post

### Suggested Solutions

Introduction This article is primarily concerned with ActionScript 3 and generally specific to AVM2.  Most suggestions would apply to ActionScript 2 as well, and I've noted those tips that differ between AS2 and AS3. With the advent of ActionS…
I have been doing hardcore actionscripting for some time; and needless to say I have faced a lot of problems in just understanding others' code rather than understanding what the code executes. A programmer's life can become hell when there are a lo…
In this tutorial viewers will learn how to create a basic motion tween animation in Flash Open a new document in Flash: Draw/import an image: Press CTRL + F8 to convert it into a graphic symbol: Select a frame (how long you want the tween to last): …
The goal of the tutorial is to teach the user how to use the auto adjust feature and what the different options do. When your video is not working right you can choose the auto adjust feature to help choose your settings.