Assignment 6
by zazagalaxy
HTML
Choose a number 1-30 <input id='uInput' type='textbox' size=15><br><br>
<button id='initQ1' onClick='initQ1()'>
Initialize Queue #1</button>
<button id='dequeue' onClick='queue1Dequque()'>
Dequeue Node
</button>
<button id='runSieve' onClick='runSieve()'>
Run Sieve of Eratosthenes
</button>
<button id='clear' onClick='clearAll()'>
Delete
</button>
<div id="output">
</div>
<div id='output2'>
</div>
JavaScript
var t;
var Node = function(_content) {
this.next = null;
this.prev = null;
this.content = _content;
return this;
}
var Queue = function(_content) {
this.first = null;
this.last = null;
this.length = 0;
return this;
}
Queue.prototype.enqueue = function(_content) {
var node = new Node(_content);
node.content = _content;
if (this.first == null) {
this.first = node;
this.last = this.first;
this.length++;
return this;
} else if (this.first == this.last) {
this.last = node;
this.first.next = this.last;
this.last.prev = this.front;
this.length++;
return this;
} else {
this.last.next = node;
node.prev = this.last;
this.last = node;
this.length++;
return this;
}
}
Queue.prototype.dequeue = function(_content) {
if (Queue1.first == null) {
//alert('the q is empty');
return null;
} else if (Queue1.first == Queue1.last) {
var dequeued = Queue1.first;
Queue1.first = null;
Queue1.last = null;
Queue1.length = 0;
return dequeued;
} else {
var dequeued = Queue1.first;
Queue1.first = Queue1.first.next;
Queue1.first.prev = null;
Queue1.length--;
return dequeued;
}
}
Queue.prototype.toString = function() {
var string = ' ';
var n = this.first;
while (n != null) {
string += n.content + ' ';
n = n.next;
}
return string;
}
var Queue1 = new Queue();
var Queue2 = new Queue();
function initQ1() {
var i = document.getElementById('uInput').value;
for (t = 2; t <= i; t++) {
//console.log ('inside loop' + t);
Queue1.enqueue(t);
document.getElementById('output').innerHTML = 'Queue #1:' + Queue1.toString()
}
return Queue1.toString();
}
function queue1Dequque() {
Queue1.dequeue();
document.getElementById('output').innerHTML = 'Queue #1:' + Queue1.toString()
}
var checker, temp;
function runSieve() {
var l = Queue1.length;
for (var i = 0; i < l - 1; i++) {
checker = Queue1.dequeue();
...