The algorithm is supposed to sum two elements of the array and insert them between the two elements used in the sum.
Example input ==> output :
[1, 2, 3, 4] ==> [ 1, 3, 2, 5, 3, 7, 4]
function growArray() {
var sequence = [];
sequence = window.prompt("Enter a number sequence", "1 2 3 4");
for (var i = 0; i < sequence.length - 1; i += 2) {
if (!((i + 1) in sequence)) {
return;
} // prevent out of bounds access
var new_value = sequence[i] + sequence[i + 1];
sequence.splice(i + 1, 0, new_value); // insert value at i + 1
}
for (var v in sequence) {
document.write(v + ", ");
}
}
<p>
<input id="f1" type="button" value="Function 1" onclick="growArray();" />Click to expand array
</p>
here is what gets the output
function growArray() {
var input = window.prompt("Enter a number sequence", "1 2 3 4");
var sequence = input.split(" ");
for (var i = 0; i < sequence.length - 1; i += 2) {
if (i + 1 > sequence.length) {
return;
} // prevent out of bounds access
var new_value = parseInt(sequence[i]) + parseInt(sequence[i + 1]);
sequence.splice(i + 1, 0, new_value); // insert value at i + 1
}
document.write(sequence.toString());
}
<p>
<input id="f1" type="button" value="Function 1" onclick="growArray();" />Click to expand array
</p>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With