Hailstone Sequence Help

Discussion in 'JavaScript' started by parsons130, Nov 1, 2011.

  1. #1
    Can someone help me fix my code?

    If a number is odd, number = number * 2 - 1
    If a number is even, number = number * 3 + 1

    <html>
    <head>
    <title> Hailstone Sequence </title>
    <script type="text/javascript">
    function Countdown()
    // Assumes: document.CountForm.count contains a number
    // Results: displays countdown from that number in document.CountForm.Output
    {
    var count;

    count = parseFloat(document.CountForm.count.value); // GET INITIAL VALUE
    document.CountForm.Output.value = ""; // CLEAR TEXT AREA


    if (count%2 == 0)
    document.CountForm.Output.value =
    document.CountForm.Output.value + count + "\n";
    count = count*3+1

    else (count%2 =/= 0)
    document.CountForm.Output.value =
    document.CountForm.Output.value + count + "\n";
    count = (count/2)

    while (count > 0) { // WHILE NOT AT 0,
    document.CountForm.Output.value = // DISPLAY COUNT
    document.CountForm.Output.value + count + "\n";
    count = count - 1; // AND DECREMENT
    }

    document.CountForm.Output.value =
    document.CountForm.Output.value + "STUCK!";
    }
    </script>
    </head>

    <body>
    <div style="text-align:center">
    <form name="CountForm">

    Start of the sequence: <input type="text" name="count" size=4 value=10 />
    <br /><br />
    <input type="button" value="Begin Hailstone Sequence" onClick="Countdown();" />
    <br /><br />
    <textarea name="Output" rows=15 cols=40 wrap="virtual"></textarea>
    </form>
    </div>
    </body>
    </html>
     
    parsons130, Nov 1, 2011 IP
  2. AsHinE

    AsHinE Well-Known Member

    Messages:
    240
    Likes Received:
    8
    Best Answers:
    1
    Trophy Points:
    138
    #2
    if (count%2 == 0){
    document.CountForm.Output.value = document.CountForm.Output.value + count + "\n";
    count = count*3+1;
    }
    if(count%2 != 0)){
    document.CountForm.Output.value = document.CountForm.Output.value + count + "\n";
    count = (count*2)-1;
    }
    
    PHP:
    Maybe so fixes like this.
     
    AsHinE, Nov 3, 2011 IP