Page 1 sur 1

un element vide

Message non luPosté: 08 Jan 2016, 17:40
de kadtexas
Bonjour
Je saisis les éléments d'une liste "equations" dans une boucle "loop endloop"
Je fais ce test de sortie de la boucle:
If equations[i]={" "} Then: Exit:EndIf
J'ai le message suivant:" le test n'a pas pu donner true ou false

Merci pour vos commentaire

Re: un element vide

Message non luPosté: 08 Jan 2016, 17:47
de GalacticPirate
Un élément d'une liste ne peut être égal à une liste, donc ce n'est pas ça. Mais je ne sais pas comment faire l'élément vide...

Re: un element vide

Message non luPosté: 08 Jan 2016, 17:50
de Hamza.S
à mon avis c'est les guillemets dans la liste qui posent problème. élément vide se présente sous cette forme {}

Re: un element vide

Message non luPosté: 08 Jan 2016, 17:57
de Ti64CLi++
Ou alors, pour faire une case vide, tu mets un
Code: Tout sélectionner
_
;)

Re: un element vide

Message non luPosté: 08 Jan 2016, 18:53
de kadtexas
J'ai essayé vos réponses mais rien ne marche!
Je suis pratiquement sûr qu'un element vide existe! j'ai cherché dans le document de référence et j'ai rien trouvé.

Re: un element vide

Message non luPosté: 08 Jan 2016, 18:55
de Hamza.S
celui que je t'ai proposé c'est concernant les listes après pour les strings c'est "" tu peux essayer

Re: un element vide

Message non luPosté: 09 Jan 2016, 03:32
de Levak
kadtexas a écrit:If equations[i]={" "} Then: Exit:EndIf


Ceci ne fonctionnera pas si equations[i] est de type EXPR (expression).
Est-ce que x = { " " } ? On sait pas, la Nspire non-plus, d'où l'erreur.

Je pense qu'il te manque un petit coup de string().

Re: un element vide

Message non luPosté: 09 Jan 2016, 18:46
de kadtexas
Oui, le string ça marche.
If string(equations[i])={"0"} Then: Exit:EndIf

Mais finalement j'ai changé de méthode:
J'envoie à la fonction toutes les équations du systeme dans une liste:
fonction(eq1,eq2,...)

Re: un element vide

Message non luPosté: 11 Jan 2016, 19:15
de Bisam
Tout d'abord, si tu utilises un Request pour récupérer les équations, les objets récupérés seront de type "EXPR" et non des chaînes de caractères (type "STR"). Il faudrait alors opter pour RequestStr qui renvoie bien des chaînes de caractères.

Ensuite, la chaîne vide se représente par des guillemets avec rien entre les 2.
Un élément "vide" d'une liste se représente par _. On écrit par exemple : {1,3,_,2,_,5}.
Pour tester si une variable représente un élément vide, il suffit d'utiliser la fonction isVoid(var).

Enfin, pour pouvoir comparer des expressions contenant des variables non attribuées, il faut soit les convertir en chaîne si on est certain qu'elles sont strictement identiques, soit utiliser la commande when(test, réponse si vrai, réponse si faux, réponse si indéterminé) en traitant donc également le cas où c'est indéterminé.

Re: un element vide

Message non luPosté: 11 Jan 2016, 19:40
de kadtexas
Merci Bisam pour tous ces renseignements bien utiles