HTML
CSS
JS
Preview
Sayı Bulucu
Üst Sınır Girin:
Sayı Özelliklerini Seçin:
Tek Sayılar
Çift Sayılar
Asal Sayılar
Kare Sayılar
Mükemmel Sayılar
Armstrong Sayılar
Fibonacci Sayıları
Üçgen Sayılar
Sayıları Göster
.bulucu { font-family: Arial, sans-serif; display: flex; justify-content: center; align-items: center; height: 100vh; margin: 0; background-color: #f0f2f5; box-sizing: border-box; width:100%; overflow:scroll; } .container { text-align: center; background: white; padding: 40px; /* Daha fazla padding */ border-radius: 10px; box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15); width: 500px; /* Sayfa genişliği */ max-width: 80vw; min-height: 550px; /* Daha uzun bir görünüm için minimum yükseklik */ } h1 { font-size: 2.2em; color: #333; margin-bottom: 25px; } label { display: block; margin-top: 20px; font-weight: bold; font-size: 1.2em; } input, select, button { width: 100%; padding: 14px; /* Daha fazla padding */ margin-top: 12px; border: 1px solid #ddd; border-radius: 5px; font-size: 1.1em; } button { background-color: #28a745; color: white; font-weight: bold; cursor: pointer; transition: background-color 0.3s; } button:hover { background-color: #218838; } .error-message { color: #d9534f; font-size: 1em; margin-top: 15px; } .result-container { margin-top: 30px; font-size: 1.2em; color: #333; text-align: left; } .result-container strong { color: #333; font-weight: bold; margin-top: 10px; display: block; }
function displayNumbers() { const limit = parseInt(document.getElementById("limit").value); const typeSelect = document.getElementById("type"); const resultContainer = document.getElementById("result"); const error = document.getElementById("error"); error.textContent = ""; resultContainer.innerHTML = ""; if (isNaN(limit) || limit <= 0) { error.textContent = "Lütfen geçerli bir üst sınır girin."; return; } const selectedTypes = Array.from(typeSelect.selectedOptions).map(option => option.value); selectedTypes.forEach(type => { let result = ""; switch(type) { case "odd": result = `
Tek Sayılar:
${getOddNumbers(limit).join(", ")}`; break; case "even": result = `
Çift Sayılar:
${getEvenNumbers(limit).join(", ")}`; break; case "prime": result = `
Asal Sayılar:
${getPrimeNumbers(limit).join(", ")}`; break; case "square": result = `
Kare Sayılar:
${getSquareNumbers(limit).join(", ")}`; break; case "perfect": result = `
Mükemmel Sayılar:
${getPerfectNumbers(limit).join(", ")}`; break; case "armstrong": result = `
Armstrong Sayılar:
${getArmstrongNumbers(limit).join(", ")}`; break; case "fibonacci": result = `
Fibonacci Sayıları:
${getFibonacciNumbers(limit).join(", ")}`; break; case "triangle": result = `
Üçgen Sayılar:
${getTriangleNumbers(limit).join(", ")}`; break; default: result = ""; } resultContainer.innerHTML += `
${result}
`; }); } function getOddNumbers(limit) { return Array.from({ length: limit }, (_, i) => i + 1).filter(num => num % 2 !== 0); } function getEvenNumbers(limit) { return Array.from({ length: limit }, (_, i) => i + 1).filter(num => num % 2 === 0); } function getPrimeNumbers(limit) { const primes = []; for (let i = 2; i <= limit; i++) { if (isPrime(i)) primes.push(i); } return primes; } function isPrime(num) { for (let i = 2; i <= Math.sqrt(num); i++) { if (num % i === 0) return false; } return num > 1; } function getSquareNumbers(limit) { const squares = []; for (let i = 1; i * i <= limit; i++) { squares.push(i * i); } return squares; } function getPerfectNumbers(limit) { const perfects = []; for (let i = 1; i <= limit; i++) { if (isPerfect(i)) perfects.push(i); } return perfects; } function isPerfect(num) { let sum = 1; for (let i = 2; i <= Math.sqrt(num); i++) { if (num % i === 0) { sum += i + (i !== num / i ? num / i : 0); } } return sum === num && num !== 1; } function getArmstrongNumbers(limit) { const armstrongs = []; for (let i = 1; i <= limit; i++) { if (isArmstrong(i)) armstrongs.push(i); } return armstrongs; } function isArmstrong(num) { const digits = num.toString().split('').map(Number); const sum = digits.reduce((acc, digit) => acc + Math.pow(digit, digits.length), 0); return sum === num; } function getFibonacciNumbers(limit) { const fibs = [1, 1]; while (true) { const next = fibs[fibs.length - 1] + fibs[fibs.length - 2]; if (next > limit) break; fibs.push(next); } return fibs; } function getTriangleNumbers(limit) { const triangles = []; for (let n = 1; ; n++) { const triangleNum = (n * (n + 1)) / 2; if (triangleNum > limit) break; triangles.push(triangleNum); } return triangles; }
Görünüm