www.webdeveloper.com
Results 1 to 4 of 4

Thread: write script

  1. #1
    Join Date
    Apr 2012
    Posts
    1

    write script

    hi everybody,i ve given a task to write a script calculating a root using bisection method in java script ,i've tried to write it on my own but i dont have a clue how to do that .i suppose to use the fuction x^7-32=0.i would appreciate any help!

  2. #2
    Join Date
    Dec 2003
    Location
    Bucharest, ROMANIA
    Posts
    15,428
    This is the generic function you might use:
    Code:
    function bisectionRoot(x,y,exponent){
    return Math.pow(x,exponent)-y;
    }
    The arguments y and exponent are given, your case y=32, exponent=7;

    Next step is to find 2 numbers (which should form an interval), let's say a and b, so that bisectionRoot(a,y,exponent) is positive, and bisectionRoot(b,y,exponent) is negative

    At this point, you will have:

    Code:
    var limit_a=bisectionRoot(a,y,exponent);
    var limit_b=bisectionRoot(b,y,exponent);
    Now you should send the midst of a and b, let's name it c, calculated as c=(a+b)/2 to the function:
    Code:
    var c=(a+b)/2;
    var limit_c=bisectionRoot(c,y,exponent);
    You have now 3 possibilities:

    1. limit_c==0; // lucky, this is the root (that means c);
    2. limit_b and limit_c have opposite signs (+/- or -/+) // the root lies between b and c;
    3. limit_b and limit_c have the same sign (+/+ or -/-) // the root lies between a and c;

    If 2., c becomes the new a If 3., c becomes the new b. Repeat the steps.

    Because the result is anyway an approximation, you may either set a certain number of steps from the beginning or, better, set a minimal size of the interval (between a and b) where your root is situated (the floated point above everything is 0 in the value of limit_c).

    Hope it helps.

    Note: I hope I did not inverse the cases. It's a long time since I studied algebra.
    Last edited by Kor; 04-25-2012 at 04:26 AM.

  3. #3
    Join Date
    Dec 2003
    Location
    Bucharest, ROMANIA
    Posts
    15,428
    Question for everybody:

    By the way, the bisection method is not hard to understand and to use, but it rises another problem: how to find quickly the initial interval a-b (the first values a and b) for which the function returns a positive value for first a and a negative value for first b?

    Anyone knows?

  4. #4
    Join Date
    Sep 2007
    Posts
    317
    If I understand
    (x^7)-32=0
    (x^7)=32
    x = 32^1/7

    alert(Math.pow(32,1/7));

    // sağlaması
    alert( Math.pow(Math.pow(32,1/7),7) );





    // http://www.w3schools.com/jsref/jsref_obj_math.asp
    // http://www.w3schools.com/jsref/jsref_pow.asp

    alert(Math.pow(32, 1/2)); // 5.656854249492381

    or
    // http://www.w3schools.com/jsref/jsref_sqrt.asp
    alert(Math.sqrt(32)); // 5.656854249492381
    Last edited by Ayşe; 04-26-2012 at 02:02 AM.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center



Recent Articles