From 0f8fdcab4f58a59f2a27eb555527308ae9cb102f Mon Sep 17 00:00:00 2001 From: siddhiavhad27 Date: Tue, 7 Apr 2026 17:52:27 +0000 Subject: [PATCH] Add script.js --- script.js | 94 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 94 insertions(+) create mode 100644 script.js diff --git a/script.js b/script.js new file mode 100644 index 0000000..ea87180 --- /dev/null +++ b/script.js @@ -0,0 +1,94 @@ +function isEven(num) { + return num % 2 === 0; +} + +function isPrime(num) { + if (num <= 1) return false; + + for (let i = 2; i <= Math.sqrt(num); i++) { + if (num % i === 0) return false; + } + + return true; +} + +function generateData(num) { + let result = []; + + for (let i = 1; i <= num; i++) { + result.push({ + number: i, + type: isEven(i) ? "Even" : "Odd", + prime: isPrime(i), + square: i * i, + cube: i * i * i + }); + } + + return result; +} + +function sortData(data, order) { + return data.sort((a, b) => { + return order === "asc" ? a.number - b.number : b.number - a.number; + }); +} + +function renderTable(data) { + let evenCount = 0; + let oddCount = 0; + let primeCount = 0; + + let table = ` + + + + + + + + + `; + + data.forEach(item => { + if (item.type === "Even") evenCount++; + else oddCount++; + + if (item.prime) primeCount++; + + table += ` + + + + + + + + `; + }); + + table += `
NumberTypePrimeSquareCube
${item.number}${item.type}${item.prime ? "Yes" : "No"}${item.square}${item.cube}
`; + + table += ` +

Total Even: ${evenCount}

+

Total Odd: ${oddCount}

+

Total Prime: ${primeCount}

+ `; + + document.getElementById("output").innerHTML = table; +} + +function handleAnalyze() { + let num = document.getElementById("numberInput").value; + let sortOption = document.getElementById("sortOption").value; + + if (num <= 0) { + document.getElementById("output").innerHTML = "⚠️ Enter valid number"; + return; + } + + let data = generateData(num); + let sortedData = sortData(data, sortOption); + + renderTable(sortedData); +} \ No newline at end of file