Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Autres questions


Index du Forum » Autres questions » Erreur Syntaxe variable définie à partir d'une autre
Uchizaki Hors ligne Membre Points: 17 Défis: 0 Message

Erreur Syntaxe variable définie à partir d'une autre

Posté le 16/10/2013 00:46

Bonjour,

Je rencontre un problème lorsque je tente de convertir une variable en string :
J'ai trouvé ce code
?→N // your number
""→Str 1 // your string
For 1+Int log N→I To 1 Step -1
Str 1+StrMid("0123456789",1+Int (10Frac (N/10^I)),1)→Str 1
Next

pour parvenir à mes besoins.

Plus haut dans mon programme, cette portion de code fonctionne.

Mon erreur se trouve au N→I première ligne, il bloque juste après le N.
Dans cet exemple N a la valeur de b²-4ac.

Pouvez vous m'expliquer ce qui cloche ?

Merci d'avance


Totoyo Hors ligne Membre d'honneur Points: 16093 Défis: 102 Message

Citer : Posté le 16/10/2013 11:50 | #


Salut,

C'est une erreur de syntaxe ou de calcul ? Car là, je ne vois d'erreur de syntaxe.

Sinon, vérifies-tu si N>0 ? En effet, le logarithme d'un nombre négatif ou égal à 0 n'existe pas.
Remiweb Hors ligne Membre de CreativeCalc Points: 1040 Défis: 32 Message

Citer : Posté le 16/10/2013 12:44 | #


Je l'ai tapé et ça marche chez moi, tu l'as essayé avec d'autres valeurs pour voir ?
Tweaks : ||||| ||||
Cartix Hors ligne Membre Points: 2748 Défis: 98 Message

Citer : Posté le 16/10/2013 14:57 | #


On peut additionner deux Str pour concaténer ?

Totoyo Hors ligne Membre d'honneur Points: 16093 Défis: 102 Message
Uchizaki Hors ligne Membre Points: 17 Défis: 0 Message

Citer : Posté le 16/10/2013 15:51 | #


Sinon, vérifies-tu si N>0 ? En effet, le logarithme d'un nombre négatif ou égal à 0 n'existe pas.


Ah bah j'ai trouvé mon problème alors ...
En effet j'avais a=1 b=1 et c=1 (pour aller vite), voilà pourquoi ça plantais

Comment je peux adapter le code dans le cas où N < 0 ?

Pour vous mettre dans le contexte sinon :
Je cherche à faire une barre de fraction en fonction de la StrLeng la plus grande (entre le numérateur et le dénominateur) C'est pourquoi j'ai besoin de convertir la variable en string

Merci d'avance
Cartix Hors ligne Membre Points: 2748 Défis: 98 Message

Citer : Posté le 16/10/2013 16:41 | #


Totoyo a écrit :
Oui, bien sûr ! Tu ne le savais pas ?

Je ne pensais pas qu'on pouvait le faire en Basic Casio. Du coup, la fonction StrJoin ne sert à rien, non ?
Et pour le cas où N<0, tu utilise abs(N) et tu ajoute un caractère au début pour le signe

Ajouté le 16/10/2013 à 16:44 :
Par contre, une fois ton programme de trinôme fini (je suppose que c'est pour ça), ne te sens pas obligé de le poster ici
Uchizaki Hors ligne Membre Points: 17 Défis: 0 Message

Citer : Posté le 16/10/2013 17:16 | #


Pas de soucis, c'est uniquement pour apprendre

Ok je regarderai avec la fonction abs quand j'aurai un peu de maths a faire, merci !
Positon Hors ligne Rédacteur Points: 2396 Défis: 57 Message

Citer : Posté le 16/10/2013 17:59 | #


Tu n'as pas besoin de faire tout ça pour convertir un nombre en Str
Déjà dans ton programme il suffit de faire
?→Str 1

au début du code.

Et en tout temps tu as la fonction Exp>Str( qui permet de transformer un nombre en Str.
Uchizaki Hors ligne Membre Points: 17 Défis: 0 Message

Citer : Posté le 16/10/2013 19:00 | #


J'ai besoin des nombres pour effectuer des calculs avec

Hé beh, vous m'en apprenez des fonctions là, faudra que je fouille un peu mieux la prochaine fois

Edit : Pouvez-vous m'expliquer rapidement les variables dans le code de la fonction Exp>Str ? Je ne comprends pas ce qu'est le fn1 et les f-mem:

-Exp>Str( : Pareil que ''''->Str mais pour les f-mem.

+EXEMPLE:
''1''->fn1:Exp>Str( fn1,Str1)

Str 1=1
Dark storm Hors ligne Labélisateur Points: 11634 Défis: 176 Message

Citer : Posté le 16/10/2013 19:10 | #


les fmem sont les variables de type fn1, fn2, etc
Finir est souvent bien plus difficile que commencer. — Jack Beauregard

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 86 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