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
Salut
Tu pourrais par exemple regarder chaque lettre du mot, et a chaque fois, vérifier si elle est présente dans le début du mot. Si elle y est, on passe a la lettre suivante, si elle n'y est pas, on ajoute 1 au résultat final et on passe a la lettre suivante.
Bonne chance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 function CountDistinctChar(S: string): integer; var N, L : integer; Cs : Set of char; begin result := 0; Cs := []; L := Length(S); for N := 1 to L do if not (S[N] in Cs) then begin Cs := Cs + [S[N]]; inc(result); end; end;
Merci Dr. Who![]()
Bou,
Et hop, un exercice clés en mains de plus ...
C'est nickel !!!
C'est ce qu'il me fallait du coup comme c'était dans le cadre d'un projet tout le monde en a profité !
Merci encore
A la prochaine !
Bonjour,
Hum... Recopier un code tout fait, penses-tu vraiment que ce soit la meilleure manière d'apprendre ?
Rien ne vaut la pose du problème et sa résolution sur papier, puis la construction d'un pseudo-code avant la traduction finale en Pascal.
Apprendre à programmer, c'est acquérir une nouvelle façon de penser. Chaque exercice de programmation "muscle" les facultés de raisonnement. De la même manière qu'un athlète ne progressera pas si c'est un autre que lui qui s'entraîne, faire faire ses exercices par d'autres n'est pas une bonne solution.
![]()
Ce n’est pas pour vous importuner mais comme cela fait plusieurs fois que je tombe sur cette file, je ne peux m’empêcher de vous signaler qu’en Python la réponse à la question (le nombre de lettres dans un mot) tient en une ligne:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 n = len(set(mot))
len() donne évidemment la longueur ou la taille d’un objet
set() est une fonction qui met dans un ensemble les éléments d’une collection (ici la collection est une chaîne). Un ensemble contient des éléments tous différents, si on ajoute à un ensemble un élément qui s’y trouve déjà, le contenu ne change pas. Autrement dit, set() fait toute seule le travail.
Voilà voilà.
Salutations.
T'aurais pas plutôt la version en assembleur ? Parce que python c'est leeeeeeeeent.![]()
unicode safe:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 function CountDistinctChar(S:UTF8String):integer; var L:TList; i:Integer; aText:WideString; begin aText:=UTF8Decode(S); L:=TList.Create; for i:=1 to Length(aText) do if L.IndexOf(Pointer(Word(aText[i])))=-1 then L.Add(Pointer(Word(aText[i]))); Result:=L.Count; L.free; end; procedure TForm1.Button1Click(Sender:TObject); begin Caption:=Inttostr(CountDistinctChar('nmabcdabcdéààààà')); end;
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