Posté le 26/01/2019 12:22
Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 254 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
Citer : Posté le 26/01/2019 13:04 | #
Eh bien tu peut commencer par regarder comment faire pour lire une liste valeur par valeur puis tu peux définir une limite de valeur approchée (1<x>5 par ex) et ainsi tu pourra trouver une valeur approchée d'une valeur donnée dans une liste.
Si ta question est plus technique (programmation) tu peut poser tes questions sans soucis
-Planétarium 2
Citer : Posté le 26/01/2019 15:17 | #
Salut, il y a plein de façons de faire ça mais la plus facile est certainement comme ceci.
D'abord, il te faut la donnée en question, je l'appelle X. Ensuite tu vas parcourir la liste, et à chaque instant tu dois savoir quel est l'élément de le plus proche de X parmi ceux que tu as vus. Si tu arrives à garder l'oeil dessus, quand tu arriveras à la fin de la liste, tu auras trouvé !
Notons la meilleure valeur B (pour best). Il faut bien commencer quelque part, donc on va mettre la première valeur de la liste, disons la liste 1.
Ensuite, on va regarder toutes les autres, et il faut que B reste la valeur la plus proche. Donc, chaque fois qu'on regarde une nouvelle valeur V, on va tester si elle est plus proche de X que B :
* Si elle n'est pas plus proche, alors B est toujours la meilleure : il n'y a rien à faire.
* Si elle est plus proche, alors on remplace B par V.
Regardons donc toutes les valeurs à partir de la seconde :
List 1[I]→V
Pour tester la distance entre deux valeurs y et z, la formule est Abs (y-z). On compare donc comme annoncé :
Then V→B
IfEnd
Ensuite on termine la boucle et on affiche le plus proche.
"Valeur proche":B◢
Voici le code complet, une fois la condition réécrite sous la forme courte.
For 2→I To Dim List 1
List 1[I]→V
Abs (V-X)<Abs (B-X)⇒V→B
Next
"Valeur proche":B◢
Citer : Posté le 27/01/2019 01:18 | #
Vraiment génial merci!
je m'y met de ce pas
Citer : Posté le 27/01/2019 09:40 | #
Ah ben j'étais pas loin alors
-Planétarium 2
Citer : Posté le 27/01/2019 12:07 | #
C'était ma première fois avec les listes, c'était bien.
J'ai deux listes pour une table de risques pour des tests statistiques, l'une le risque l'autre la proba associé. en entrant un risque voulu mon code parcours la première liste, trouve le rang de la valeur la plus proche et trouve la valeur de ce rang dans la deuxième liste.
Je vais utiliser les listes avec abus.
Citer : Posté le 27/01/2019 12:33 | #
Voilà, c'est ça l'esprit !
N'hésite pas à abuser également de matrices et de chaînes de caractères !