Question 11

Final Exam

by Daniel Eberhart

HTML

<h3>
Question 11
</h3>

<input type="textbox" id='input' />
<input type='button' value='Enqueue' onclick='add();' />
<br/>
<input type='button' value='Dequeue' onclick='remove();' />
<br/>
<div id='output'></div>

JavaScript

function Queuestack() {
	this.stack = [];
  this.enqueue = function(value) {
    this.stack.push(value);
  }
  this.reverse = function() {
    this.stack.reverse();

  }
  this.dequeue = function() {
    this.reverse();
    this.stack.pop();
    this.reverse();

  }

  this.print = function() {
    var s = "";
    for (var i = 0; i < this.stack.length; i++) {
      s += this.stack[i] + ",";
    }
    return s;
  }
}

var q = new Queuestack();

function add() {
  var input = document.getElementById('input').value;
  q.enqueue(input);
  document.getElementById('output').innerHTML = q.print();
}

function remove() {
  q.dequeue();
  document.getElementById('output').innerHTML = q.print();
}