Java fournit un type différent de système numérique à l'utilisateur?; le nombre parfait est également un type de système numérique fourni par Java. On peut considérer n’importe quel nombre comme un nombre parfait en Java. Si tous les facteurs excluant le nombre, il est égal au nombre donné, alors nous pouvons considérer le nombre donné comme un nombre parfait. En Java, nous pouvons utiliser différentes manières pour trouver le nombre parfait. Fondamentalement, le nombre parfait n’est rien d’autre que n’importe quel nombre dont la base est 10 dans le système numérique, et c’est un sous-domaine du système numérique en mathématiques. Selon les besoins des utilisateurs, nous pouvons utiliser le système numérique parfait.
Commencez votre cours de développement de logiciels libres
Développement Web, langages de programmation, tests de logiciels et autres
La logique derrière le nombre parfait
Voyons maintenant la logique derrière le nombre parfait en Java comme suit.
La logique de base du nombre parfait est très simple. Tout d’abord, nous devons trouver le facteur positif d’un nombre donné, puis faire la somme de tous les facteurs à l’exclusion du nombre lui-même. Si la somme des facteurs est égale au nombre donné, alors on peut dire que le nombre donné est le nombre parfait, et si la somme des facteurs n'est pas égale au nombre donné, alors on peut dire que le nombre donné est pas un nombre parfait. Voyons un exemple de nombre parfait?; alors nous aurons une idée détaillée comme suit.
Supposons que nous devions vérifier si 8 est un nombre parfait ou non.
- Découvrez d'abord le facteur positif qui est 1, 2, 4 et 8. Faites maintenant l'addition de tous les facteurs à l'exclusion du 8, et nous obtenons le résultat est 7. Comparez maintenant le résultat avec le nombre donné?; voyez ici, les deux chiffres sont différents. Cela signifie que nous pouvons dire que ce nombre n'est pas un nombre parfait.
- Considérons maintenant un autre nombre?: 6.
- Trouvez le facteur positif de 6, c'est-à-dire 1, 2, 3 et 6.
- La somme de tous les facteurs est de 6, à l'exclusion de 6.
- Comparez maintenant le résultat avec le nombre donné, voyez ici le nombre donné et le résultat est le même, ce qui signifie que nous pouvons dire que le nombre donné est un nombre parfait.
Comment vérifier le nombre parfait en Java??
Voyons maintenant comment vérifier le nombre parfait Java comme suit. En programmation Java, il existe trois manières différentes de vérifier le nombre parfait comme suit.
1.? En utilisant la boucle while
Dans la boucle while, nous devons suivre quelques étapes comme suit.
1. Tout d'abord, nous devons lire le numéro saisi par l'utilisateur.
2. La boucle continuera jusqu'à ce que la condition (j<=no/2) soit fausse. Si le reste de no/j est 0, ajoutez la valeur de j à la somme et augmentez la valeur de j. Une fois toutes les itérations terminées, comparez le résultat. Si le numéro de stand est égal, imprimez le numéro donné comme un nombre parfait?; sinon, imprimez le nombre donné comme n'étant pas un nombre parfait.
3. Par exemple no=8, j=1 no/2=4, donc j <=4 signifie que la condition est vraie, trouvez maintenant le facteur.
8%j=0 vrai alors somme =1
J=2 2<4 est vrai 8%2 =0 est vrai et somme= 1+3=3.
Donc de cette fa?on, on complète toutes les itérations pour trouver le numéro parfait.
2. En utilisant la méthode statique
Dans cette méthode, nous pouvons appeler une méthode statique pour vérifier le nombre parfait?; dans cette méthode, il suffit d'appeler la méthode PerfacOrNot. Il calcule automatiquement la somme de tous les facteurs positifs et vérifie si le nombre donné est parfait ou non.
3. En utilisant la méthode de récursion
Dans cette méthode, nous appelons également la méthode PerfectOrNot() à l'aide d'objets. Dans cette méthode, l'exécution démarre d'elle-même et appelle PerfectOrNot(). Il répète l'itération jusqu'à ce que j<= number/2 soit faux.
Exemples
Voyons maintenant les différents exemples de nombres parfaits en Java comme suit.
Exemple n°1
Code?:
import java.util.Scanner; class Perfect_number1 { public static void main(String arg[]) { long num,s=0; Scanner s_c=new Scanner(System.in); System.out.println("Enter number"); num=s_c.nextLong(); int j=1; while(j<=num/2) { if(num%j==0) { s+=j; } j++; } if(s==num) { System.out.println(num+" the given number is perfect number"); } else System.out.println(num+" the given number is not perfect number"); } }
Explication
En utilisant le programme ci-dessus, nous essayons d'implémenter des nombres parfaits en Java avec une boucle while. Le codage du programme ci-dessus est très simple. Ici, nous avons créé la méthode principale?; à l'intérieur de la méthode principale, nous utilisons la classe scanner et la boucle while pour trouver un facteur d'un nombre donné et ajoutons ce facteur dans la variable s qui est la somme du facteur comme indiqué dans le programme ci-dessus. Enfin, nous comparons les deux nombres et imprimons le message selon la comparaison. Nous illustrons le résultat final du programme ci-dessus en utilisant la capture d'écran suivante comme suit.
Exemple n°2
Voyons maintenant un autre exemple de nombre parfait en utilisant la méthode statique comme suit.
Code?:
import java.util.Scanner; class Perfect_Method { public static void main(String arg[]) { long num,m; Scanner s_c=new Scanner(System.in); System.out.println("Enter number"); num=s_c.nextLong(); m=perfectOrNot(num); if(m==num) System.out.println(num+" The given number is perfect number"); else System.out.println(num+" The given number is not perfect number"); } static long perfectOrNot(long n) { long s=0; for(int j=1;j<=n/2;j++) { if(n%j==0) { s+=j; } } return s; } }
Explication
In the above program, we use a static method to check if a given number is a perfect number or not. In the above program, we use the perfecOrNot () method. After that, we use a for loop to find the factors of the given number, and the remaining process is the same, that is, to compare the result with the given number and print a message according to the comparison. The final output of the above program we illustrate by using the following screenshot as follows.
Example #3
Now let’s see another example to check perfect numbers by using the recursive Method as follows.
Code:
public class Recursive { static int n = 200; static int s = 0; static int d = 1; static int findPerfect(int n, int d) { { if(d<=n/2) { if(n%d==0) { s+=d; } d++; findPerfect(n,d); } return s; } } public static void main(String args[]) { int r = findPerfect(n,d); if(r == n) System.out.println(" The given number is perfect Number"); else System.out.println("The given number is not perfect Number"); } }
Explanation
In the above program, we are using a recursive method to check the perfect number. The final output of the above program we illustrate by using the following screenshot as follows.
Conclusion
We hope from this article you learn Perfect Number in java. From the above article, we have learned the basic logic of Perfect Numbers, and we also see different examples of Perfect Numbers. From this article, we learned how and when we use the Perfect Number in java.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Le chargement paresseux uniquement les requêtes lors de l'accès aux associations peut facilement entra?ner des problèmes n 1, ce qui convient aux scénarios où les données associées ne sont pas déterminées si elles sont nécessaires; 2. Utilisations de chargement d'urgence avec () pour charger les données associées à l'avance pour éviter N 1 requêtes, ce qui convient aux scénarios de traitement par lots; 3. Le chargement d'urgence doit être utilisé pour optimiser les performances, et n 1 des problèmes peuvent être détectés via des outils tels que Laraveldebugbar, et le $ avec l'attribut du modèle est soigneusement utilisé pour éviter les frais généraux de performances inutiles.

La gestion de la mémoire de Python est basée sur des mécanismes de comptage et de collecte des ordures de référence. 1. Le mécanisme de comptage de référence garantit que les objets sont libérés immédiatement lorsque le numéro de référence est 0. La valeur de retour de sys.getRefCount () est 1 de plus que la référence réelle car elle augmente sa référence elle-même; 2. Les références circulaires ne peuvent pas être nettoyées par le comptage de référence, et cela dépend du recyclage générationnel du module GC. L'appel GC.Collect () peut recycler des objets inaccessibles; 3. Dans le développement réel, la maintenance à long terme des références d'objets importantes doit être évitée. Nous pouvons utiliser des références faibles faibles, un placement en temps opportun pour libérer la mémoire et utiliser Tracemalloc pour surveiller l'allocation de la mémoire; 4. Résumé: Python combine le comptage de référence et la collecte des ordures pour gérer la mémoire, les développeurs peuvent utiliser des outils et optimiser les tuyaux de référence.

UseArestapitobridgePhpandmlModelsByrunningTheModelinpythonviaflaskorfastapiandCallingitfrompsingCurlorBuzzle.2.Runpythonscripts est ventilateur

Laravel prend en charge l'utilisation des requêtes SQL natives, mais la liaison des paramètres doit être préférée pour assurer la sécurité; 1. Utilisez DB :: SELECT () pour exécuter SELECT Queries avec la liaison des paramètres pour empêcher l'injection SQL; 2. Utilisez DB :: Update () pour effectuer des opérations de mise à jour et renvoyer le nombre de lignes affectées; 3. Utilisez db :: insert () pour insérer des données; 4. Utilisez DB :: Delete () pour supprimer les données; 5. Utilisez DB :: Instruction () pour exécuter des instructions SQL sans ensembles de résultats tels que Create, Alter, etc.; 6. Il est recommandé d'utiliser Whereraw, Selectraw et d'autres méthodes dans QueryBuilder pour combiner les expressions natives pour améliorer la sécurité

La programmation réactive met en ?uvre des services de non-blocage à faible latence et à faible latence en Java via Projectaactor et SpringWebflux. 1. ProjectAacteur fournit deux types de noyaux: mono et flux, prend en charge le traitement déclaratif des flux de données asynchrones et convertis, filtres et autres opérations via des cha?nes d'opérateurs; 2. SpringWebflux est construit sur Reactor, prend en charge deux modèles de programmation: l'annotation et fonctionnelle. Il fonctionne sur des serveurs non bloquants tels que Netty et peut gérer efficacement un grand nombre de connexions simultanées; 3. L'utilisation du réacteur WebFlux peut améliorer la capacité de concurrence et l'utilisation des ressources dans les scénarios à forte intensité d'E / S et prend naturellement SSE et WebSO.

L'opérateur ternaire de Python est utilisé pour implémenter de manière concise le jugement if-else, et sa syntaxe est "Value_IF_Trueif conditionelsevalue_if_false"; 1. Il peut être utilisé pour une affectation simple, comme le renvoi de la cha?ne correspondante en fonction des valeurs positives et négatives; 2. Il peut éviter les erreurs de division, telles que déterminer que le dénominateur n'est pas nulle puis de division; 3. Il peut sélectionner le contenu en fonction des conditions au format de cha?ne; 4. Il peut attribuer des étiquettes à différents éléments dans la formule de dérivation de liste; Il convient de noter que cet opérateur ne convient qu'aux branches binaires et ne doit pas être imbriqué plusieurs couches. La logique complexe doit utiliser la structure traditionnelle IF-Elif-Else pour assurer la lisibilité.

MapSTRUCT est un générateur de code à temps de compilation utilisé pour simplifier le mappage entre les javabeans. 1. Il génère automatiquement des classes d'implémentation en définissant des interfaces pour éviter d'écrire manuellement le code de mappage Set / Get; 2. Il a un type de type, pas de frais généraux d'exécution, prend en charge la cartographie automatique des champs du même nom, des expressions personnalisées, des objets imbriqués et une cartographie de collecte; 3. Il peut être intégré à Spring et utilise @mapper (ComponentModel = "Spring") pour injecter du mappeur dans Springbean; 4. Configuration simple, introduisez simplement les dépendances de Mapstruct et les inserts annotationProcessorPaths

Utilisez un groupe de capture d'expression régulière dans le bloc-notes pour réorganiser efficacement le texte. Tout d'abord, vous devez ouvrir la bo?te de dialogue de remplacement (CTRL H), sélectionner "Mode de recherche" comme "expression régulière", 1. Utiliser () pour définir le groupe de capture, tel que (\ w) pour capturer les mots; 2. Utilisez \ 1 et \ 2 pour référencer le groupe correspondant dans la zone de remplacement; 3. Exemple: échangez le nom "JohnDoe" comme "Doe, John", Find (\ W) \ S (\ W), le remplacez par \ 2, \ 1; 4. Conversion du format de date 2023-12-25 au 25/12/2023, find (\ d {4}) - (\ d {2}) - (\ d {2}), remplacez-le par \ 3 / \ 2 / \ 1; 5. La réorganisation du journal peut extraire le temps, le niveau, l'identification et d'autres informations
