97 lines
3.1 KiB
JavaScript
Executable File
97 lines
3.1 KiB
JavaScript
Executable File
|
|
|
|
// calculator custom functions
|
|
var oper = "";
|
|
var num = "";
|
|
|
|
function displaynum(n) {
|
|
//document.form1.t1.value = document.form1.t1.value + n;
|
|
$("#display").val( $("#display").val() + n );
|
|
|
|
}
|
|
|
|
function operator(op) {
|
|
oper = op;
|
|
num = $("#display").val();
|
|
$("#display").val("");
|
|
//document.form1.t1.value += oper
|
|
}
|
|
//code for equals starts here
|
|
function equals() {
|
|
doesthejob(eval(num), eval($("#display").val()), oper);
|
|
}
|
|
//a sub-function of equals
|
|
function doesthejob(n1, n2, op) {
|
|
if (op == "+")
|
|
$("#display").val( n1 + n2 );
|
|
else if (op == "-")
|
|
$("#display").val( n1 - n2 );
|
|
else if (op == "*")
|
|
$("#display").val( n1 * n2 );
|
|
else if (op == "/")
|
|
$("#display").val( n1 / n2 );
|
|
else if (op == "nCr")
|
|
document.form1.t1.value = fact2(n1) / fact2(n1 - n2) / fact2(n2);
|
|
else if (op == "nPr")
|
|
document.form1.t1.value = fact2(n1) / fact2(n1 - n2);
|
|
}
|
|
//code for equals ends here
|
|
|
|
function fact2(n) { // fact2() for nCr & nPr
|
|
if (errorchecking(n) == false)
|
|
return;
|
|
|
|
var answer = 1;
|
|
for (i = n; i >= 2; i--){
|
|
answer = answer * i;
|
|
}
|
|
return answer;
|
|
}
|
|
|
|
function fact() {
|
|
n = Number(document.form1.t1.value);
|
|
if (errorchecking(n) == false)
|
|
return;
|
|
var answer = 1;
|
|
for (i = n; i >= 2; i--){
|
|
answer = answer * i;
|
|
}
|
|
document.form1.t1.value = answer;
|
|
}
|
|
|
|
function errorchecking(n) {
|
|
if (n < 0) {
|
|
alert("Number shouldn't be negative");
|
|
return false;
|
|
}
|
|
var mod = n % 1;
|
|
if (!mod == 0) {
|
|
alert("The number should be an integer");
|
|
return false;
|
|
}
|
|
}
|
|
|
|
function prime(n) {
|
|
if (errorchecking(n) == false)
|
|
return;
|
|
var b = true;
|
|
for (i = 2; i <= n / 2; i ++) {
|
|
if (n % i == 0) {
|
|
document.form1.t1.value = "Not prime; its first divided by " + i;
|
|
b = false;
|
|
break;
|
|
}
|
|
}
|
|
if (b)
|
|
document.form1.t1.value = "Is prime";
|
|
}
|
|
|
|
function negation() {
|
|
document.form1.t1.value = document.form1.t1.value * - 1;
|
|
}
|
|
|
|
function reset() {
|
|
$("#display").val("");
|
|
num = "";
|
|
}
|
|
// Calculator functions end here.
|