Java code
Re: Java code
En Java je sais pas mais en Python on peut afficher len(str (nombre)), ou bien faire un programme à base de divisions par 10 il me semble.
Re: Java code
oui avant on me demandait de calculer le nombre d'éléments dans un entier, j'ai alors utilisé le log en base 10 mais je sais pas si c'est utile pour le deuxième
Re: Java code
En java tu peux facilement convertir un entier en chaîne de caractères avec: Integer.toString(number)
Ensuite, la meilleure méthode qui me vient à l'esprit serait d'utiliser un tableau de booléen avec une case par chiffre.
Comme ça, pour chaque chiffre de ta chaîne de caractères, si la case correspondante au chiffre est "vrai" tu fais rien, sinon, (si elle est fausse), tu la passes à "vrai" et tu incrémentes le nombre de chiffre unique par 1.
EDIT: si tu veux de l'aide pour le coder hésite pas.
Ensuite, la meilleure méthode qui me vient à l'esprit serait d'utiliser un tableau de booléen avec une case par chiffre.
Comme ça, pour chaque chiffre de ta chaîne de caractères, si la case correspondante au chiffre est "vrai" tu fais rien, sinon, (si elle est fausse), tu la passes à "vrai" et tu incrémentes le nombre de chiffre unique par 1.
EDIT: si tu veux de l'aide pour le coder hésite pas.
Lycée Édouard Branly 2015-2018
LLG HX1 2018-2019
LLG MP*3 2019-2020
Ulm 2020-?
LLG HX1 2018-2019
LLG MP*3 2019-2020
Ulm 2020-?
Re: Java code
ah oui je vois,
donc 1 er etape on crée la fonction booléan
puis le tableau avec les valeurs donc on aura un new vu que la taille est infinie
on rentre l'itération avec un for où on met l'intégration et la comparaison entre les deux caractères avec un if
ais je raison ?
Désolé pour le style décousu de mon message
donc 1 er etape on crée la fonction booléan
puis le tableau avec les valeurs donc on aura un new vu que la taille est infinie
on rentre l'itération avec un for où on met l'intégration et la comparaison entre les deux caractères avec un if
ais je raison ?
Désolé pour le style décousu de mon message
Re: Java code
bon je rectifie, je ne pense pas que ce soit cette méthode que le prof veuille que j'utilise, dans le squelette il y a une fonction qui prend des entiers en paramètre
Re: Java code
Pour l'utilisation du logarithme en base 10 pour trouver le nombre de chiffre d'un entier, je trouve l'intérêt limité d'un point de vu apprentissage.
Je pense que en te demandant de faire ça, on voulait plutôt t'introduire à la notion de division successive par 10 et le fait que en Java, les divisions sont entières quand tu traites avec des int. Surtout si c'est un devoir...
Après, mon avis vaut ce qu'il vaut, je suis un simple lycéen ^^
Je pense que en te demandant de faire ça, on voulait plutôt t'introduire à la notion de division successive par 10 et le fait que en Java, les divisions sont entières quand tu traites avec des int. Surtout si c'est un devoir...
Après, mon avis vaut ce qu'il vaut, je suis un simple lycéen ^^
Lycée Édouard Branly 2015-2018
LLG HX1 2018-2019
LLG MP*3 2019-2020
Ulm 2020-?
LLG HX1 2018-2019
LLG MP*3 2019-2020
Ulm 2020-?
Re: Java code
c'est une préparation pour le tp de demain que je regarde avant mais je suis d'accord avec toi sinon
Re: Java code
Non ce n'est pas ce que je voulais dire.
1- tu convertis ton entier en une chaine de caractère
2- tu initialise un tableau de bool de taille 10 (1 case par chiffre existant donc)
3- pour chaque chiffre de ton nombre, tu vérifies si tu l'as déjà vu grace au tableau de booleen et si tu l'as pas encore vu, tu augmentes de 1 le nombre de chiffre distincts.
Tu peux aussi le faire sans conversion en string avec des divisions successives...
1- tu convertis ton entier en une chaine de caractère
2- tu initialise un tableau de bool de taille 10 (1 case par chiffre existant donc)
3- pour chaque chiffre de ton nombre, tu vérifies si tu l'as déjà vu grace au tableau de booleen et si tu l'as pas encore vu, tu augmentes de 1 le nombre de chiffre distincts.
Tu peux aussi le faire sans conversion en string avec des divisions successives...
Lycée Édouard Branly 2015-2018
LLG HX1 2018-2019
LLG MP*3 2019-2020
Ulm 2020-?
LLG HX1 2018-2019
LLG MP*3 2019-2020
Ulm 2020-?
Re: Java code
ok j'ai fait le tableau de bool maintenant il faut que je fasse la 3 eme etape, la plus compliquée.
Vu qu'au final on parle de n entier, comment je sépare chaque chiffre de mon nombre pour voir si ils sont les mêmes ou pas ?
Vu qu'au final on parle de n entier, comment je sépare chaque chiffre de mon nombre pour voir si ils sont les mêmes ou pas ?