Add script.js
This commit is contained in:
94
script.js
Normal file
94
script.js
Normal file
@@ -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 = `
|
||||
<table>
|
||||
<tr>
|
||||
<th>Number</th>
|
||||
<th>Type</th>
|
||||
<th>Prime</th>
|
||||
<th>Square</th>
|
||||
<th>Cube</th>
|
||||
</tr>
|
||||
`;
|
||||
|
||||
data.forEach(item => {
|
||||
if (item.type === "Even") evenCount++;
|
||||
else oddCount++;
|
||||
|
||||
if (item.prime) primeCount++;
|
||||
|
||||
table += `
|
||||
<tr>
|
||||
<td>${item.number}</td>
|
||||
<td>${item.type}</td>
|
||||
<td>${item.prime ? "Yes" : "No"}</td>
|
||||
<td>${item.square}</td>
|
||||
<td>${item.cube}</td>
|
||||
</tr>
|
||||
`;
|
||||
});
|
||||
|
||||
table += `</table>`;
|
||||
|
||||
table += `
|
||||
<p><strong>Total Even:</strong> ${evenCount}</p>
|
||||
<p><strong>Total Odd:</strong> ${oddCount}</p>
|
||||
<p><strong>Total Prime:</strong> ${primeCount}</p>
|
||||
`;
|
||||
|
||||
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);
|
||||
}
|
||||
Reference in New Issue
Block a user