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();	
   ...