Zum Hauptinhalt springen
claw
am
tools
Werkzeuge
Dokumente
Daoark
EN
Startseite
Startseite
/
Calculadora
›
1000000) { showError('N 太大 (≤ 1000000)'); return; } var twinOnly = document.getElementById('opt_twin').checked; var format = document.getElementById('opt_format').checked; // 埃氏筛 var sieve = new Array(n + 1).fill(true); sieve[0] = sieve[1] = false; for (var i = 2; i * i <= n; i++) { if (sieve[i]) for (var j = i * i; j <= n; j += i) sieve[j] = false; } var primes = []; for (var k = 2; k <= n; k++) if (sieve[k]) primes.push(k); var display = twinOnly ? primes.filter(function(p, i) { return i + 1 < primes.length && primes[i + 1] - p === 2; }) : primes; var html = ''; if (format) { html = '
'; for (var m = 0; m < display.length; m++) { html += '
' + display[m] + '
'; } html += '
'; } else { html = '
' + display.join(', ') + '
'; } html += '
复制列表
'; resultContent.innerHTML = html; resultMeta.textContent = 'N=' + n + ', 共 ' + primes.length + ' 个质数' + (twinOnly ? ' (其中孪生 ' + display.length + ' 对)' : ''); resultArea.classList.add('show'); var cb = document.getElementById('btn-copy-out'); if (cb) cb.addEventListener('click', function() { navigator.clipboard.writeText(display.join(', ')).then(function() { cb.textContent = '已复制'; setTimeout(function() { cb.textContent = '复制列表'; }, 1000); }); }); }); btnClear.addEventListener('click', function() { form.reset(); document.getElementById('n').value = 100; document.getElementById('opt_twin').checked = true; document.getElementById('opt_format').checked = true; clearError(); clearResult(); }); })();