[résolu] Common lisp : signification char/string

Discutez d'informatique ici !
lulubibi28
Membre Relatif
Messages: 240
Enregistré le: 10 Nov 2013, 12:18

[résolu] Common lisp : signification char/string

par lulubibi28 » 16 Sep 2014, 14:15

Bonjour,


Comment fait t-on pour comparer un caractère (char (string (car liste)) 0) avec une liste formée bien entendu d'atomes( qui sont des mots en fait ) qui sont deux types d'objets différents ?
La seule manière serait de comparer deux caractères pour après former une nouvelle liste d'atomes .
Je découvre pour la première ces deux types d'objets qui sont char et string .

Un objet string est un symbole et char est un caractère .

PS : je le dis juste comme çà pour prévenir d’éventuelles personnes malveillantes , ce n'est pas en ridiculisant une personne qu'on lui apprend le savoir .Y'a certains qui font çà dans d'autres forums et c'est pas trés cool pour une personne en pleine phase d'apprentissage :triste: :fuck: ...
Je suis débutante en lisp , et je viens de commencer la fameuse récursivité :bad2: .



Avatar de l’utilisateur
ampholyte
Membre Transcendant
Messages: 3940
Enregistré le: 21 Juil 2012, 08:03

par ampholyte » 16 Sep 2014, 15:25

Bonjour,

J'avoue avoir un peu de mal avec le concept que tu essayes d'expliquer.
Aurais-tu un exemple ou un bout de code (avec les variables déclarées ?) cela serait sûrement plus compréhensible pour ma part (je ne connais pas Lisp mais c'est très souvent la même chose dans d'autres langages) (Kurodiam ;p)

lulubibi28
Membre Relatif
Messages: 240
Enregistré le: 10 Nov 2013, 12:18

par lulubibi28 » 16 Sep 2014, 16:19

Un objet string est un symbole et c une fonction qui ne prend qu'un seul argument et char est un caractère , et c une fonction qui prend deux arguments .

Mon objectif est de comparer déjà si 2 chaines de caractères commencent par un même caractère et une fois çà , je dois créer une nouvelle liste incluant des mots en fonction de ce prédicat .

Avatar de l’utilisateur
ampholyte
Membre Transcendant
Messages: 3940
Enregistré le: 21 Juil 2012, 08:03

par ampholyte » 16 Sep 2014, 17:50

D'accord il te suffit alors de tester si le premier caractère de chaque chaine est identique.

Un peu comme en C, tu dois pouvoir faire l'équivalent de :

Code: Tout sélectionner
if (string[0] == string2[0]) {
    /* la suite du code */
}


Non ?

lulubibi28
Membre Relatif
Messages: 240
Enregistré le: 10 Nov 2013, 12:18

par lulubibi28 » 16 Sep 2014, 21:07

Oui , c'est dans l'esprit de ce que je voulais faire ...

Entretemps , j'ai réussi à coder ma fonction , il y'a une astuce en transformant une valeur en un caractère puis ensuite en chaine de caractères ==> (char (string x) 0) et bien entendu , j'ai crée un prédicat avec equal .

Donc le sujet est résolu :we:

joel76
Membre Relatif
Messages: 230
Enregistré le: 11 Fév 2013, 16:31

par joel76 » 16 Sep 2014, 22:01

Tu pourrais donner un exemple de ce que tu voulais faire et le code obtenu ?

lulubibi28
Membre Relatif
Messages: 240
Enregistré le: 10 Nov 2013, 12:18

par lulubibi28 » 17 Sep 2014, 14:51

Peut être par MP si tu veux :zen:

 

Retourner vers ϟ Informatique

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 6 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite