<header>
<h2 class="title">Цикл for</h2>
<p class="description">Генерація чисел із фільтрацією парних і непарних значень</p>
</header>
<main>
<div class="controls">
<!-- Поле для введення числа -->
<label for="max-number">Введіть максимальне число:</label>
<input type="number" id="max-number" min="1" placeholder="Наприклад, 10">
<button id="generate">Згенерувати</button>
</div>
<div class="result">
<!-- Кнопки фільтрації -->
<button id="filter-even">Показати парні</button>
<button id="filter-odd">Показати непарні</button>
<!-- Список чисел -->
<ul id="number-list"></ul>
</div>
</main>
body {
font-size: 16px;
line-height: 1.5;
font-family: monospace;
}
header {
background-color: #f1f1f1;
margin-bottom: 25px;
padding: 15px;
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
}
header h2.title {
padding-bottom: 15px;
border-bottom: 1px solid #999;
}
header p.description {
font-style: italic;
color: #222;
}
.result {
background-color: #f8f8f8;
padding: 15px;
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
}
.controls {
margin-bottom: 15px;
}
button {
margin-right: 5px;
padding: 5px 10px;
font-size: 14px;
}
ul {
list-style-type: none;
padding: 0;
}
ul li {
padding: 5px;
border-bottom: 1px solid #ddd;
}
document.getElementById('generate').addEventListener('click', () => {
const maxNumber = parseInt(document.getElementById('max-number').value, 10);
const numberList = document.getElementById('number-list');
// Очистка попереднього списку
numberList.innerHTML = '';
if (isNaN(maxNumber) || maxNumber < 1) {
alert('Введіть коректне число!');
return;
}
// Генерація списку чисел
for (let i = 1; i <= maxNumber; i++) {
const li = document.createElement('li');
li.textContent = i;
li.dataset.value = i;
numberList.appendChild(li);
}
});
// Фільтрація парних чисел
document.getElementById('filter-even').addEventListener('click', () => {
filterNumbers(number => number % 2 === 0);
});
// Фільтрація непарних чисел
document.getElementById('filter-odd').addEventListener('click', () => {
filterNumbers(number => number % 2 !== 0);
});
// Функція для фільтрації
function filterNumbers(condition) {
const listItems = document.querySelectorAll('#number-list li');
listItems.forEach(item => {
const value = parseInt(item.dataset.value, 10);
item.style.display = condition(value) ? 'list-item' : 'none';
});
}
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.