Trouver les facteurs d'un nombre

Soyez le premier à donner votre avis sur cette source.

Snippet vu 11 877 fois - Téléchargée 15 fois

Contenu du snippet

Un petit script utile qui va vous permettre de trouver les facteurs d'un nombre. Il a été grandement optimisé dans sa dernière version (Juillet 2012) et est complètement changé. Il s'agit désormais d'une fonction indépendante du DOM.

Sa syntaxe est la suivante :

Array getFactors(Number N);

"N" représente le nombre dont on souhaite trouver les facteurs.
L'Array retourné est un Array contenant tous les facteurs du nombre, en ordre croissant.

Pour obtenir ce que faisait auparavant la fonction (retourner une String sous ce format : 3*5*7*13, il faut utiliser cette Syntaxe :

String getFactors(Number N).join("*");

Source / Exemple :


<html>
	<head>
		<title>.::Trouver les facteurs d'un nombre</title>
		</title>
		<script type="text/javascript">
			function getFactors(r) {
				w = parseInt(r);
				var f = 2;
				var z = [];
				if (isNaN(w)) {
					throw new Error(r + " is not a number");
				}
				for (;;) {
					if (parseInt(w / f) == w / f) {
						w = w / f;
						z[z.length] = f;
						continue
					}
					if (w < 2) {
						return z
					}
					if (f == 2) {
						f++;
						continue
					}
					f = f + 2
				}
			}
			function start() {
				var d = document;
				d.getElementById('facteurs').value = getFactors(d.getElementById('txt').value).join("*")
			}
		</script>
	</head>
	<body>
		<input name="txt" id=txt value="Votre nombre" type="text" onFocus="if(this.value=='Votre nombre')this.value='';">
		<input id=facteurs>
		<br>
		<input type=button onclick="start()" value="Trouver les facteurs">
	</body>

</html>

Conclusion :


Si vous avez des questions, n'hésitez pas.

A voir également

Ajouter un commentaire

Commentaires

jdmcreator
Messages postés
656
Date d'inscription
samedi 30 décembre 2000
Statut
Membre
Dernière intervention
20 juillet 2012
3 -
Je fais actuellement le tour de mes vieilles sources pour les mettre à jour. Voici donc une nouvelle version, après près de 3 ans de silence qui m'a permis de grandement amélioré mes techniques.

Voir la description pour la syntaxe et comment l'utiliser.
jdmcreator
Messages postés
656
Date d'inscription
samedi 30 décembre 2000
Statut
Membre
Dernière intervention
20 juillet 2012
3 -
Merci, pour l'indice ;)

J'ai optimisé ma fonction grandement en utilisant des variables.
Flachy Joe
Messages postés
2120
Date d'inscription
jeudi 16 septembre 2004
Statut
Membre
Dernière intervention
4 novembre 2019
1 -
" Je n'ai trouvé aucune fonction en javascript semblable à celle-ci. Pourtant, elle m'a souvent été très utile "
Une recherche sur "nombres premiers" ma rapidement mené à :
http://www.javascriptfr.com/codes/DIVISEURS-NOMBRES-PREMIERS_30027.aspx

Tu connais les boucles ? Et les arguments des fonctions ?
Penche toi la dessus pour améliorer ton code.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.