56 lines
1.1 KiB
JavaScript
56 lines
1.1 KiB
JavaScript
|
var journal = [];
|
||
|
|
||
|
function addEntry(events, squirrel) {
|
||
|
journal.push({events, squirrel});
|
||
|
}
|
||
|
|
||
|
function phi(table) {
|
||
|
return (table[3] * table[0] - table[2] * table[1]) /
|
||
|
Math.sqrt((table[2] + table[3]) *
|
||
|
(table[0] + table[1]) *
|
||
|
(table[1] + table[3]) *
|
||
|
(table[0] + table[2]));
|
||
|
}
|
||
|
|
||
|
function tableFor(event, journal) {
|
||
|
let table = [0, 0, 0, 0];
|
||
|
for (let i = 0; i < journal.length; i++) {
|
||
|
let entry = journal[i], index = 0;
|
||
|
if (entry.events.includes(event)) index += 1;
|
||
|
if (entry.squirrel) index += 2;
|
||
|
table[index] += 1;
|
||
|
}
|
||
|
return table;
|
||
|
}
|
||
|
|
||
|
function journalEvents(journal) {
|
||
|
let events = [];
|
||
|
for (let entry of journal) {
|
||
|
for (let event of entry.events) {
|
||
|
if (!events.includes(event)) {
|
||
|
events.push(event);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
return events;
|
||
|
}
|
||
|
|
||
|
function max(...numbers) {
|
||
|
let result = -Infinity;
|
||
|
for (let number of numbers) {
|
||
|
if (number > result) result = number;
|
||
|
}
|
||
|
return result;
|
||
|
}
|
||
|
|
||
|
var list = {
|
||
|
value: 1,
|
||
|
rest: {
|
||
|
value: 2,
|
||
|
rest: {
|
||
|
value: 3,
|
||
|
rest: null
|
||
|
}
|
||
|
}
|
||
|
};
|