Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La référence Basic Casio

Nom : StrMid(

Localisation :

[ PRGM ] [ STR ]
[ SHIFT ] + [ VARS ] + [ F6 ] + [ F6 ] + [ F1 ]

Syntaxe de la fonction :

StrMid(chaine,debut[,longueur])

Description de la fonction :

Extrait une partie de la chaîne de caractères passée en paramètre.
chaine : une chaine de caractères littérale ou une variable de type Str
debut : toute expression s'évaluant en un entier strictement positif
longueur : toute expression s'évaluant en un entier positif (optionnel)

Lorsque les paramètres fournis sont valides, cette fonction extrait au plus longueur caractères à partir de la position debut (qui est prise), dans le chaîne de caractères donnée en premier argument.

Lorsque longueur est omis, la fonction StrMid() prend jusqu'à la fin de la chaîne. S'il n'y a moins de longueur caractères disponibles, la fonction renvoie toute la fin de la chaîne.

Compatibilité :

  • Graph 20/25(+)
  • Graph 35/65/80(+)
  • Graph 100(+)
  • Graph 25+ PRO
  • Graph 85 (SD) OS 1.xx
  • Graph 85 (SD) OS 2.xx
  • Graph 35+ USB/75/95 SD
  • Graph OS 2.04
  • Fx-CG 10/20 OS 1.xx
  • Fx-CG 10/20 OS 2.xx


<<< Retourner à la liste des fonctions

Pages: Précédente | 1, 2

LephenixnoirHors ligneAdministrateurPoints: 22587 Défis: 149 Message
Posté le 08-01-2017 à 13:54 | #
J'ai modifié la fonction pour ajouter tes cas particuliers, et amélioré la description.
DrakHors ligneRédacteurPoints: 1925 Défis: 40 Message
Posté le 17-07-2018 à 21:51 | #
StrMid(Str 5, B, StrSrc(Str 5, "θ", B) - B)

Cette ligne provoque une erreur argument sur le deuxième B, et le dernier B quand on retire le deuxième B.
B est un entier positif non nul, et puis :
StrSrc(Str 5, "θ", B)-B

Ne renvoie pas d'erreur. Il renvoie un entier positif non nul, tout est normal.
Cette ligne, dans mon test, me renvoie 9. Lorsque je remplace StrSrc(Str 5, "θ", B)-B par 9 :
StrMid(Str 5, B, 9)
//Résultat attendu obtenu : "Cool !001"


Je ne sais pas ce qui provoque l'erreur. Surement l'utilisation d'un StrSrc dans un StrMid, mais ça m'étonne. J'avais déjà fait quelque chose d'assez similaire. Cette erreur est un mystère pour moi, je vais devoir... Ruser et procéder par étapes ?
LephenixnoirHors ligneAdministrateurPoints: 22587 Défis: 149 Message
Posté le 18-07-2018 à 00:11 | #
As-tu essayé d'utiliser une autre variable que B pour les occurrences prétendument conflictuelles(ie. utiliser deux variables en même temps) ?
DrakHors ligneRédacteurPoints: 1925 Défis: 40 Message
Posté le 18-07-2018 à 00:28 | #
J'ai fait ceci pour remédier à mon problème :
StrSrc(Str 5, "θ", B) - B
StrMid(Str 5, B, Ans) → Str 5
LephenixnoirHors ligneAdministrateurPoints: 22587 Défis: 149 Message
Posté le 18-07-2018 à 00:34 | #
Aucun doute que ça marche, mais ça me convainc moyen de la force de l'interpréteur...
ZezombyeHors ligneRédacteurPoints: 1756 Défis: 13 Message
Posté le 18-07-2018 à 14:02 | #
Y'a des fonctions où les nombres sont acceptés, mais pas les calculs ni les appels de fonctions, du coup StrMid doit être l'une d'elles (même si ça me parait bizarre vu que c'est de l'OS 2...)
LephenixnoirHors ligneAdministrateurPoints: 22587 Défis: 149 Message
Posté le 18-07-2018 à 14:53 | #
Compte tenu de ce que j'ai mis dans la description tu peux être sûr que j'ai essayé le calcul et que ça a marché. Mystère...

Pages: Précédente | 1, 2

Retour liste des commandes

Planète Casio v42 © créé par Neuronix et Muelsaco 2004 - 2022 | Il y a 47 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd