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 03: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
    315
    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 01:02 AM.
    Bismillahirrahmanirrahîm
    Hamd, Âlemlerin Rabbi, Rahmân, Rahîm, hesap ve ceza gününün (ahiret gününün) maliki Allah'a mahsustur. (Allahım!) Yalnız sana ibadet ederiz ve yalnız senden yardım dileriz. Bizi doğru yola, kendilerine nimet verdiklerinin yoluna ilet; gazaba uğrayanların ve sapıklarınkine değil.

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