A voir également:
- Nombre parfait java
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel - Télécharger - Jeux vidéo
- Eclipse java - Télécharger - Langages
- Java apk - Télécharger - Langages
- Waptrick java voiture - Télécharger - Jeux vidéo
2 réponses
Bonjour
commence par le faire mathématiquement.
Une fois fait, tu pourras le transcrire dans n'importe quel langage.
PS on ne dit pas "java orienté objet" mais simplement "java".
commence par le faire mathématiquement.
Une fois fait, tu pourras le transcrire dans n'importe quel langage.
PS on ne dit pas "java orienté objet" mais simplement "java".
Bonjour,
Certains diront que c'est de la triche, mais en réalité ceci est l'implémentation la plus performante vu que la liste des premiers nombres parfaits est déjà connue : https://oeis.org/A000396
Pour aller plus loin, si on parle d'orienté objet, c'est par "opposition" à la programmation impérative, et donc tirer profit au maximum des classes/méthodes fournies par Java.
S'il fallait recalculer soi même ces différentes valeurs on pourrait par exemple écrire le code suivant, dont l'algorithme est certes naïf, mais son implémentation optimisée par Java, notamment avec le multithreading.
Certains diront que c'est de la triche, mais en réalité ceci est l'implémentation la plus performante vu que la liste des premiers nombres parfaits est déjà connue : https://oeis.org/A000396
public static boolean isPerfect(long n) { return n == 6L || n == 28L || n == 496L || n == 8128L || n == 33550336L || n == 8589869056L || n == 137438691328L || n == 2305843008139952128L; }
Pour aller plus loin, si on parle d'orienté objet, c'est par "opposition" à la programmation impérative, et donc tirer profit au maximum des classes/méthodes fournies par Java.
S'il fallait recalculer soi même ces différentes valeurs on pourrait par exemple écrire le code suivant, dont l'algorithme est certes naïf, mais son implémentation optimisée par Java, notamment avec le multithreading.
import java.util.stream.LongStream; public static boolean isPerfect(long n) { return LongStream.rangeClosed(1, n / 2).parallel() .filter(i -> n % i == 0).sum() == n; }