Rumah  >  Artikel  >  hujung hadapan web  >  JavaScript mencari nombor yang sempurna dalam 1000

JavaScript mencari nombor yang sempurna dalam 1000

PHPz
PHPzasal
2023-05-21 10:53:06635semak imbas

Apakah nombor yang sempurna?

Dalam matematik, nombor sempurna ialah jenis nombor asli yang istimewa. Jumlah semua faktor yang sepatutnya (iaitu, faktor selain dirinya) adalah sama dengan dirinya sendiri.

Contohnya: 6 ialah nombor sempurna kerana semua faktor sebenar 6 ialah 1, 2, dan 3, dan jumlahnya betul-betul sama dengan 6.

Jadi bagaimana untuk menggunakan JavaScript untuk mencari nombor yang sempurna dalam 1000?

Kita boleh mula-mula menulis fungsi untuk menentukan sama ada sesuatu nombor itu lengkap:

function isPerfectNumber(num) {
  let sum = 0;
  for (let i = 1; i <= num / 2; i++) {
    if (num % i === 0) {
      sum += i;
    }
  }
  return sum === num;
}

Fungsi fungsi ini adalah untuk mengira jumlah faktor sebenar suatu nombor Jika ia sama dengan nombor itu sendiri, ia mengembalikan benar, jika tidak palsu dikembalikan.

Seterusnya, kita boleh menulis gelung untuk menghitung setiap nombor dalam 1000 dan menentukan sama ada ia adalah nombor lengkap:

for (let i = 1; i <= 1000; i++) {
  if (isPerfectNumber(i)) {
    console.log(i);
  }
}

Fungsi gelung ini adalah untuk menghitung setiap nombor dalam 1000 nombor, jika nombor sudah lengkap, cetak.

Gabungkan dua bahagian ini untuk mendapatkan kod lengkap:

function isPerfectNumber(num) {
  let sum = 0;
  for (let i = 1; i <= num / 2; i++) {
    if (num % i === 0) {
      sum += i;
    }
  }
  return sum === num;
}

for (let i = 1; i <= 1000; i++) {
  if (isPerfectNumber(i)) {
    console.log(i);
  }
}

Jalankan kod ini untuk mengeluarkan nombor lengkap dalam 1000. Pada mesin saya, output kod ini ialah:

1
6
28
496

Oleh itu, terdapat 4 nombor sempurna dalam 1000, iaitu 1, 6, 28 dan 496.

Sudah tentu, jika kita perlu mencari nombor penyiapan yang lebih besar, program ini mungkin berjalan untuk masa yang lama. Oleh kerana bilangan nombor sempurna adalah sangat terhad, dan apabila nilai meningkat, selang antara nombor sempurna menjadi lebih besar dan lebih besar, jadi mencari nombor sempurna yang lebih besar mungkin memerlukan algoritma yang lebih cekap.

Atas ialah kandungan terperinci JavaScript mencari nombor yang sempurna dalam 1000. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:perkataan java ke htmlArtikel seterusnya:perkataan java ke html