Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
switch , case solution in Clear category for [old] Simple Areas by kurosawa4434
"use strict";
function simpleAreas(...args) {
let area = 0;
switch (args.length) {
case 1:
area = (args[0] / 2)**2 * Math.PI;
break;
case 2:
area = args[0] * args[1];
break;
case 3:
const [a, b, c] = args;
area = Math.sin(Math.acos((a**2-b**2-c**2) / (-2*b*c))) * b * c / 2;
};
return Math.round(area*100)/100;
}
var assert = require('assert');
if (!global.is_checking) {
// These "asserts" are used for self-checking and not for an auto-testing
function almostEqual(checked, correct, significantDigits=2) {
var precision = 0.1 ** significantDigits
return correct - precision < checked && checked < correct + precision
}
var test1 = almostEqual(simpleAreas(3), 7.07)
var test2 = almostEqual(simpleAreas(2, 2), 4)
var test3 = almostEqual(simpleAreas(2, 3), 6)
var test4 = almostEqual(simpleAreas(3, 5, 4), 6)
var test5 = almostEqual(simpleAreas(1.5, 2.5, 2), 1.5)
assert.equal(test1, true)
assert.equal(test2, true)
assert.equal(test3, true)
assert.equal(test4, true)
assert.equal(test5, true)
console.log("Coding complete? Click 'Check' to earn cool rewards!");
}
July 6, 2018