TlačiťTlačiť Slovenčina English Hľadať RSS

© 2005 – 2024 Roman Horváth, všetky práva vyhradené. Dnes je 25. 4. 2024.

Stránka sa načítava, prosím čakajte…

Dátum: 4. 8. 2018, pred niekoľkými rokmi, aktualizované: 30. 7. 2020, pred štyrmi rokmi

Dokonalé číslo (angl. perfect number otvárané v novom okne
(obvykle ide o externý odkaz)) je také číslo, ktorého súčet všetkých jeho deliteľov sa rovná dvojnásobku čísla. Toto je program, ktorý nájde všetky dokonalé čísla od 1 do 10 000. Úlohu si zjednodušuje tak, že hľadá čísla rovné súčtu všetkých deliteľov, okrem seba samého. (Nemusí tak počítať dvojnásobok svojej hodnoty a tiež zápis vnútorného cyklu „for“ je jednoduchší.)

~

import static java.lang.System.out;

public class DokonaléČísla
{
	public static void main(String... args)
	{
		out.println("Nájdené dokonalé čísla 1 do 10 000:");

		for (int číslo = 2; číslo <= 10000; ++číslo)
		{
			int súčet = 1;

			for (int i = 2; i < číslo; ++i)
				if (číslo % i == 0) súčet += i;

			if (číslo == súčet)
				out.println(" > " + číslo);
		}

		out.println("Koniec.");
	}
}

Výsledok

Nájdené dokonalé čísla 1 do 10 000:
 > 6
 > 28
 > 496
 > 8128
Koniec.