Bonjour,
Je souhaiterais connaitre le nombre de lettre distincte dans un mot, mais je ne sais pas comment m'y prendre.
Ex: STATUT --> 4 lettres distinctes
Pourriez-vous m'aider ?
Merci par avance
Bonjour,
Je souhaiterais connaitre le nombre de lettre distincte dans un mot, mais je ne sais pas comment m'y prendre.
Ex: STATUT --> 4 lettres distinctes
Pourriez-vous m'aider ?
Merci par avance
Je vais essayer de t'aider en t'apportant mon avis en texte, à toi après de le formaliser algorithmiquement.
Tu initialises un compteur à 0, tu crées un tableau vide, puis tu parcours ton mot lettre par lettre. A chaque fois que la lettre en cours n'est pas dans le tableau tu incrémente ton compteur et tu ajoutes la lettre dans le tableau.
Remarques:
-Attention si le mot est en minuscule et qu'ils possèdent des accents (ex: école) si tu veux compter le "é" et le "e" comme une seule lettre des tests seront nécessaires.
En espérant t'avoir aidé.
Nous sommes tous plus ou moins geek : ce qui est inutile nous est parfaitement indispensable ( © Celira )
À quelle heure dormez-vous ?
Censément, quelqu'un de sensé est censé s'exprimer sensément.
ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.
Nous sommes tous plus ou moins geek : ce qui est inutile nous est parfaitement indispensable ( © Celira )
À quelle heure dormez-vous ?
Censément, quelqu'un de sensé est censé s'exprimer sensément.
ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.
Sauf qu'un idéogramme prend 3 octets à écrire (en UTF-8 2 si jamais on est en UTF-16) donc ça fait en fait 120.000 à 180.000 octets,ce qui reste certes raisonnable surtout si on garde le principe de ne stocker dans le tableau que les 3.000 à 5.000 idéogrammes les plus courants où là le stockage passe carrément entre 6.000 et 15.000 octets, après c'est juste si l'on a envie d'ergoter.
Nous sommes tous plus ou moins geek : ce qui est inutile nous est parfaitement indispensable ( © Celira )
À quelle heure dormez-vous ?
Censément, quelqu'un de sensé est censé s'exprimer sensément.
Bonjour.
Sous matlab on fait cela avec : [b,i,j]=unique('STATUT')
Nous sommes tous plus ou moins geek : ce qui est inutile nous est parfaitement indispensable ( © Celira )
À quelle heure dormez-vous ?
Censément, quelqu'un de sensé est censé s'exprimer sensément.
Tiens c’est marrant, je viens de mettre un petit message dans une file ouverte par la même question dans le forum Pascal > Lazarus.
Ce qui m’amuse c’est qu’ici le titre du premier post est
«Trouver nombre de lettre distincte »
tandis que dans l’autre forum, il s’agit de
«Chercher le nombre de lettres distinctes dans un mot »
Le questionneur est plus optimiste dans ce forum ci.
Je ne me risquerai pas à remettre mon post ici.
Mais je me risque à donner une réponse sommaire à la question:
La question semble pertinente au premier abord. Mais elle ne l’est pas tout à fait, à mon avis.Quel est l'intérêt au juste d'énoncer une syntaxe arbitraire dans un langage précis en partie Algorithme
Pour moi , un algorithme dépend en partie, je dis bien en partie et non pas pour la majeure partie, du langage utilisé. Par exemple, quand j’ai lu
j’ai pensé: il n’est pas obligé d’incrémenter un compteur au fur et à mesure, il peut mesurer la taille du tableau une fois terminé l’examen du mot.Tu initialises un compteur à 0, tu crées un tableau vide, puis tu parcours ton mot lettre par lettre. A chaque fois que la lettre en cours n'est pas dans le tableau tu incrémente ton compteur et tu ajoutes la lettre dans le tableau.
Et puis immédiatement j’ai pensé que ce n’est possible que si le langage utilisé dispose d’un moyen d’obtenir rapidement la taille d’un tableau. Je me dis que pour un langage proche du hardawre, ce n’est pas évident que cette possibilité soit disponible. Je ne connnais pas assez les langages pour le savoir.
Mais dans le principe, ce point dépend du langage non ?
Ainsi, un algorithme dépend plus ou moins fortement des possibilités offertes par le langage utilisé. La conception d’un algorithme ne sera pas tout a fait de même nature selon qu’on utilise un langage du haut-niveau plus proche des mécanismes intellectuels naturels ou un langage qui se coltine avec le bas-niveau.
Cette question
contient implicitement la notion qu’il existerait pour chaque problème un algorithme absolu, qui ne s’incarnerait qu’après coup dans un code écrit dans un langage donné. S’il existe une discipline qui s’appelle l’algorithmique, c’est bien parce que c’est en partie vrai. Mais je pense qu’il ne faut pas pousser trop loin cette idée, et qu’elle ne peut en tous cas pas être utilisée comme argument pour contester l’expression d’une remarque apparemment hors-sujet.Quel est l'intérêt au juste d'énoncer une syntaxe arbitraire dans un langage précis
Ca n'a aucun rapport. Quelque soit le langage tu dois pouvoir mettre en oeuvre ce que tu dis. Le langage t'apportera plus ou moins de souplesse pour réaliser ce que tu veux (soit c'est déjà fourni soit il faut que tu codes plus ou moins).Mais dans le principe, ce point dépend du langage non ?
L'algorithme te décris les opérations pour résoudre ton problème (ou pour l'approcher s'il n'y a pas de solution toute faîtes). Quitte à avoir des opérations qui ne sont pas fournis dans le langage cible.
Pour moi, et donc ça n'engage que moi, un algorithme est la manière de résoudre le problème d'un point de vue "théorique" c'est à dire en le faisant à la main.
Dans la vie réelle on me donne un texte (donc un ensemble de symboles que je ne comprends pas forcément) et on me demande d'en compter les éléments distincts, qu'est-ce que je fais:
Je prends mon beau crayon à papier et je note au fur et à mesure que je les rencontre chaque symbole nouveau en notant au fur et à mesure le compte d'où j'en suis.
Après je suis d'accord avec certaines choses, c'est optimisable selon le contexte, plusieurs exemples:
Si le texte est en français, je note de suite les 26 lettres.
Selon la longueur du texte on peut aussi supprimer à chaque nouvelle lettre rencontrer, les autres occurences de cette lettre dans le texte (donc moins à parcourir au final)
S'il n'y a pas trop de lettres distinctes, je peux ne les compter qu'à la fin (ce qui correspond à regarder la taille du tableau).
Mon objectif était de donner une méthode compréhensible avant tout par un être humain pas par une machine, à lui ensuite de traduire sa compréhension selon son niveau d'expertise et les contraintes ou optimisation possible du langage souhaité.
Nous sommes tous plus ou moins geek : ce qui est inutile nous est parfaitement indispensable ( © Celira )
À quelle heure dormez-vous ?
Censément, quelqu'un de sensé est censé s'exprimer sensément.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager