example
by arosado417
HTML
Enter the value of n: <input type="number" id="myNumber" value="2">
<button onclick="myFunction()">Submit</button>
<p id = "myDiv"></p>
JavaScript
function myFunction() {
var x = document.getElementById("myNumber").value;
//document.getElementById("demo").innerHTML = x;
var firstQueue = createQueue(x)
var secondQueue = new Queue();
displayQueue(firstQueue, 0, 1)
displayQueue(secondQueue, 0, 2)
sieveAlgorithm(firstQueue,secondQueue)
}
function sieveAlgorithm(firstQueue, secondQueue)
{
var counter = 1;
var lengthOfFirstQueue = firstQueue.getLength();
while(firstQueue.hasElements())
{
var firstElem = firstQueue.dequeue(0)
console.log("Element removed:" + firstElem)
secondQueue.enqueue(firstElem);
for(m=0;m<lengthOfFirstQueue; m++)
{
var value = firstQueue.currentElem(m);
console.log("Element Value:" + value)
if(value%firstElem == 0)
{
console.log("Element removed:" + firstQueue.dequeue(m));
}
}
displayQueue(firstQueue, counter, 1)
displayQueue(secondQueue, counter, 2)
counter++;
}
}
function displayQueue(queue_list, itr, qnumber)
{
var x = "";
if(qnumber == 1)
x = "Iteration "+itr+": Q1 = ";
else
x = ",Q2 = "
for(j=0; j<queue_list.getLength(); j++ )
{
x = x + queue_list.currentElem(j);
x = x +" ";
}
var header = document.createElement("h3");
var t;
if(qnumber == 1)
{
var att = document.createAttribute("id");
att.value = "itr"+itr;
header.setAttributeNode(att);
t = document.createTextNode(x);
header.appendChild(t);
document.getElementById("myDiv").appendChild(header);
}
else
{
document.getElementById("itr"+itr).innerHTML = document.getElementById("itr"+itr).innerHTML + x;
}
}
function Queue()
{
var a=[],b=0;
this.getLength=function()
{
return a.length-b
};
this.isEmpty=function()
{
return 0==a.length
};
...