π
<-

Erreur : Le test n'a pas donné de résultat TRUE ou FALSE

Pour le TI-Basic sur Nspire

Re: Erreur : Le test n'a pas donné de résultat TRUE ou FALSE

Unread postby Hamza.S » 23 Jan 2016, 12:51

pour moi il marche parfaitement : voila le code
Code: Select all
Define LibPub trans_energie()=
Prgm
Request "Valeur recherchée",v,0
If string(v)="q" Then
Request "m",m,0
Request "c",c,0
Request "T1",t1,0
Request "T2",t2,0
Disp "Q = m × c ×(T2-T1)"
Disp "Q =",m,"×",c,"× (",t2,"-",t1,")"
Disp "Q =",m*c*(t2-t1)
ElseIf string(v)="m" Then
Request "Q",q,0
Request "c",c,0
Request "T1",t1,0
Request "T2",t2,0
Disp "m =",(("Q")/("c × (T2-T1)"))
Disp "m =",q,"/(",c,"×(",t2,"-",t1,")"
Disp "m =",((q)/(c*(t2-t1)))
ElseIf string(v)="c" Then
Request "Q",q
Request "m",m
Request "T1",t1
Request "T2",t2
Disp "c =",(("Q")/("m × (T2-T1)"))
Disp "c =",q,"/(",m,"× (",t2,"-",t1,")")
Disp "c =",((q)/(m*(t2-t1)))
ElseIf string(v)="t1" Then
Request "Q",q
Request "m",m
Request "c",c
Request "T2",t2
Disp "T1 = -",(("Q")/("m × c")),"+T2"
Disp "t1=",−q,"/(",m,"*",c,"+",t2,")"
Disp "T1 =",((−q)/(m*c))+t2
ElseIf string(v)="t2" Then
Request "Q",q
Request "m",m
Request "c",c
Request "T1",t1
Disp "T2 =",(("Q")/("m × c")),"+T1"
Disp "T2 =",q,"/(",m&"×",c,"+",t1,")"
Disp "T2 =",((q)/(m*c))+t1
EndIf
EndPrgm
Image
User avatar
Hamza.SAdmin
Niveau 17: GM (Grand Maître des calculatrices)
Niveau 17: GM (Grand Maître des calculatrices)
Level up: 29%
 
Posts: 4501
Images: 18
Joined: 07 Nov 2014, 00:43
Gender: Male
Calculator(s):
MyCalcs profile

Re: Erreur : Le test n'a pas donné de résultat TRUE ou FALSE

Unread postby Tom129 » 23 Jan 2016, 13:08

Est -ce que si nos paramètre de la calculette sont différents, cela pourrait jouer sur le fait que mes opérations ne se font pas ?
User avatar
Tom129
Niveau 5: MO (Membre Overclocké)
Niveau 5: MO (Membre Overclocké)
Level up: 0%
 
Posts: 24
Joined: 30 Sep 2015, 17:47
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: BTS EEC

Re: Erreur : Le test n'a pas donné de résultat TRUE ou FALSE

Unread postby Bisam » 23 Jan 2016, 13:30

Si l'une des variables utilisées (q, m, c, t1, t2, ou même v) possède une valeur, le programme ne pourra pas marcher.

C'est pour cette raison qu'il faut utiliser des variables locales !

Insère la ligne :
Code: Select all
Local q, m, c, t1, t2, v
entre le Prgm et le 1er Request.
Ensuite, valide les modifications avec :nsct: :nsb: et teste à nouveau.

Si ça ne marche toujours pas, dans l'écran de calcul, tape :
Code: Select all
Delvar q, m, c, t1, t2, v
et réessaie.
User avatar
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 69.6%
 
Posts: 5670
Joined: 11 Mar 2008, 00:00
Location: Lyon
Gender: Male
Calculator(s):
MyCalcs profile

Re: Erreur : Le test n'a pas donné de résultat TRUE ou FALSE

Unread postby Tom129 » 23 Jan 2016, 13:43

Merci pour ton aide, ça marche ! :) Je vais affiner le programme et certainement le publier.
User avatar
Tom129
Niveau 5: MO (Membre Overclocké)
Niveau 5: MO (Membre Overclocké)
Level up: 0%
 
Posts: 24
Joined: 30 Sep 2015, 17:47
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: BTS EEC

Re: Erreur : Le test n'a pas donné de résultat TRUE ou FALSE

Unread postby Hamza.S » 23 Jan 2016, 13:50

pourquoi s'embêter avec plusieurs Request alors que tu peux faire plus simple
Code: Select all
Define LibPub trans_energie(q,m,c,t1,t2)=
Prgm
If string(q)="x" Then
Disp "Q = m × c ×(T2-T1)"
Disp "Q =",m,"×",c,"× (",t2,"-",t1,")"
Disp "Q =",m*c*(t2-t1)
ElseIf string(m)="x" Then
Disp "m =",(("Q")/("c × (T2-T1)"))
Disp "m =",q,"/(",c,"×(",t2,"-",t1,")"
Disp "m =",((q)/(c*(t2-t1)))
ElseIf string(c)="x" Then
Disp "c =",(("Q")/("m × (T2-T1)"))
Disp "c =",q,"/(",m,"× (",t2,"-",t1,")")
Disp "c =",((q)/(m*(t2-t1)))
ElseIf string(t1)="x" Then
Disp "T1 = -",(("Q")/("m × c")),"+T2"
Disp "t1=",−q,"/(",m,"*",c,"+",t2,")"
Disp "T1 =",((−q)/(m*c))+t2
ElseIf string(t2)="x" Then
Disp "T2 =",(("Q")/("m × c")),"+T1"
Disp "T2 =",q,"/(",m&"×",c,"+",t1,")"
Disp "T2 =",((q)/(m*c))+t1
EndIf
EndPrgm

pour calculer il suffit de mettre un x à l'inconnu
Image
User avatar
Hamza.SAdmin
Niveau 17: GM (Grand Maître des calculatrices)
Niveau 17: GM (Grand Maître des calculatrices)
Level up: 29%
 
Posts: 4501
Images: 18
Joined: 07 Nov 2014, 00:43
Gender: Male
Calculator(s):
MyCalcs profile

Re: Erreur : Le test n'a pas donné de résultat TRUE ou FALSE

Unread postby Tom129 » 24 Jan 2016, 11:45

Bonjour,

J'ai préférais laisser les Request, mais peut être que je les supprimerai si le programme est trop chargé. J'ai pu continuer à avancer mais je rencontre un un nouveau message Erreur. La formule diffère selon s'il y a changement d'état ou pas. Donc en détaillant mon calcul je cherche à avoir Q = m.c.(t2-t1) s'il n'y a pas de chaleur latente, et Q = m.c.(t2-t1)+m.L s'il y chaleur latente.
Donc pour l'instant j'ai ceci :

Code: Select all
Define LibPub trans_energie1()=
Prgm
:DelVar q,q1,q2,q3,m,m1,m2,m3,m4,c,c1,c2,c3,c4,t1,t1_1,t1_2,t1_3,t1_4,t2,t2_1,t2_2,t2_3,t2_4,vq
:Request "Chaleur latente ?",cl,0
:If string(cl)="non" Then
:   q1:="Q = m × c ×(T2-T1)"
:   q2:="Q ="&m&"×"&c&"× ("&t2&"-"&t1&")"
:   q3:=m*c*(t2-t1)
:    m1:="m ="&(("Q")/("c × (T2-T1)"))
:    m2:="m ="&q&"/("&c&"×("&t2&"-"&t1&")"
:    m3:="m ="&((q)/(c*(t2-t1)))
:    m4:=((q)/(c*(t2-t1)))
:    c1:="c ="&(("Q")/("m × (T2-T1)"))
:    c2:="c="&q&"/("&m&"×("&t2&"-"&t1&")"
:    c3:="c ="&((q)/(m*(t2-t1)))
:    c4:=((q)/(m*(t2-t1)))
:    t1_1:="T1 = -"&(("Q")/("m × c"))&"+T2"
:    t1_2:="T1= -("&q&"/("&m&"×"&c&"))+"&t2
:    t1_3:="T1 ="&−(((q)/(m*c))&"+"&t2)
:    t1_4:=((−q)/(m*c))+t2
:    t2_1:="T2 ="&(("Q")/("m × c"))&"+T1"
:    t2_2:="T2= ("&q&"/("&m&"×"&c&"))+"&t1
:    t2_3:="T2 = "&((q)/(m*c))&"+"&t1
:    t2_4:=((q)/(m*c))+t1
: EndIf
:  Request "Valeur de l'expression de quantité de chaleur recherchée",vq,0
: If string(vq)="q" Then
:  Request "m",m,0
:  Request "c",c,0
:  Request "T1",t1,0
:  Request "T2",t2,0
:     Disp q1
:     Disp q2
:     Disp "Q =",q3
: ElseIf string(vq)="m" Then
: Request "Q",q,0
: Request "c",c,0
: Request "T1",t1,0
: Request "T2",t2,0
:     Disp m1
:     Disp m2
:     Disp m3
:     Disp "m = ",m4
: ElseIf string(vq)="c" Then
:  Request "Q",q,0
:  Request "m",m,0
:  Request "T1",t1,0
:  Request "T2",t2,0
:     Disp c1
:     Disp c2
:     Disp c3
:     Disp "c = ",c4
: ElseIf string(vq)="t1" Then
:  Request "Q",q,0
:  Request "m",m,0
:  Request "c",c,0
:  Request "T2",t2,0
:     Disp t1_1
:     Disp t1_2
:     Disp t1_3
:     Disp "T1 = ",t1_4
: ElseIf string(vq)="t2" Then
:  Request "Q",q,0
:  Request "m",m,0
:  Request "c",c,0
:  Request "T1",t1,0
:     Disp t2_1
:     Disp t2_2
:     Disp t2_3
:     Disp "T2 = ",t2_4
: EndIf
:  q:=m*c*(t2-t1)
:     Disp "Q = E = U × I × t"
: DelVar e,u,i,t,ve
:    Request "Valeur de l'expression de l'énergie électrique recherchée",ve,0
:  e:=q
: If string(ve)="u" Then
:  u:=((e)/(i*t))
:    Request "I",i,0
:    Request "t",t,0
:      Disp "U =",(("E")/("I × t"))
:      Disp "U =",e,"/(",i,"×",t,")"
:      Disp "U = ",u
: ElseIf string(ve)="i" Then
:  i:=((e)/(u*t))
:    Request "U",u,0
:    Request "t",t,0
:      Disp "I =",(("E")/("U × t"))
:      Disp "I =",e,"/(",u,"×",t,")"
:      Disp "i = ",i
: ElseIf string(ve)="t" Then
:   t:=((e)/(u*i))
:     Request "U",u,0
:     Request "i",i,0
:       Disp "t =",(("E")/("U × I"))
:       Disp "t =",e,"/(",u,"×",i,")"
:       Disp "t = ",t
: EndIf
:EndPrgm


Le programme n'est pas fini. Mais quand je l'exécute en disant qu'il n'y a pas de chaleur latente, il m'indique que le type de l'un des arguments est incorrecte. Pourquoi ?

Merci.
User avatar
Tom129
Niveau 5: MO (Membre Overclocké)
Niveau 5: MO (Membre Overclocké)
Level up: 0%
 
Posts: 24
Joined: 30 Sep 2015, 17:47
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: BTS EEC

Re: Erreur : Le test n'a pas donné de résultat TRUE ou FALSE

Unread postby Bisam » 24 Jan 2016, 12:15

Et si tu utilisais directement FormulaPro ?
User avatar
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 69.6%
 
Posts: 5670
Joined: 11 Mar 2008, 00:00
Location: Lyon
Gender: Male
Calculator(s):
MyCalcs profile

Re: Erreur : Le test n'a pas donné de résultat TRUE ou FALSE

Unread postby Hamza.S » 24 Jan 2016, 12:20

Code: Select all
    Request "Valeur de l'expression de l'énergie électrique recherchée",ve,0
  e:=q
If string(ve)="u" Then
  u:=((e)/(i*t))
    Request "I",i,0
    Request "t",t,0
      Disp "U =",(("E")/("I × t"))
      Disp "U =",e,"/(",i,"×",t,")"
      Disp "U = ",u
ElseIf string(ve)="i" Then
  i:=((e)/(u*t))
    Request "U",u,0
    Request "t",t,0
      Disp "I =",(("E")/("U × t"))
      Disp "I =",e,"/(",u,"×",t,")"
      Disp "i = ",i
ElseIf string(ve)="t" Then
   t:=((e)/(u*i))
     Request "U",u,0
     Request "i",i,0
       Disp "t =",(("E")/("U × I"))
       Disp "t =",e,"/(",u,"×",i,")"
       Disp "t = ",t
EndIf

je doute que cette partie la fonctionne correctement, vu que tu affectes avant de demander les données


pour cette partie
Code: Select all
Request "Valeur de l'expression de l'énergie électrique recherchée",ve,0
If string(ve)="u" Then

il est préférable d'utiliser RequestStr comme ça tu n'auras pas besoin de string
Code: Select all
RequestStr "Valeur de l'expression de l'énergie électrique recherchée",ve,0
If ve="u" Then

(je n'ai pas encore regardé pour le problème)
Image
User avatar
Hamza.SAdmin
Niveau 17: GM (Grand Maître des calculatrices)
Niveau 17: GM (Grand Maître des calculatrices)
Level up: 29%
 
Posts: 4501
Images: 18
Joined: 07 Nov 2014, 00:43
Gender: Male
Calculator(s):
MyCalcs profile

Re: Erreur : Le test n'a pas donné de résultat TRUE ou FALSE

Unread postby Hamza.S » 24 Jan 2016, 12:58

Tom129 wrote:Le programme n'est pas fini. Mais quand je l'exécute en disant qu'il n'y a pas de chaleur latente, il m'indique que le type de l'un des arguments est incorrecte. Pourquoi ?

Code: Select all
q2:="Q ="&m&"×"&c&"× ("&t2&"-"&t1&")"

la raison c'est que m, c, t1 et t2 ne sont pas des string et que tu souhaites les associés avec des string
fais plutôt ça :
Code: Select all
q2:="Q =m×c×(t2-t1)"

(corrige pour les autres aussi)
Image
User avatar
Hamza.SAdmin
Niveau 17: GM (Grand Maître des calculatrices)
Niveau 17: GM (Grand Maître des calculatrices)
Level up: 29%
 
Posts: 4501
Images: 18
Joined: 07 Nov 2014, 00:43
Gender: Male
Calculator(s):
MyCalcs profile

Re: Erreur : Le test n'a pas donné de résultat TRUE ou FALSE

Unread postby Tom129 » 24 Jan 2016, 14:58

Merci pour vos réponses.

Bisam wrote:Et si tu utilisais directement FormulaPro ?


J'ai jeté un coup d’œil à ce programme et il m'a l'aire vraiment pas mal. Mais je suis dans un perspective d'examen donc j’essaie d'adapter les programmes selon les sujets.

Hamza.S wrote:
Code: Select all
Request "Valeur de l'expression de l'énergie électrique recherchée",ve,0
e:=q
If string(ve)="u" Then
u:=((e)/(i*t))
Request "I",i,0
Request "t",t,0
Disp "U =",(("E")/("I × t"))
Disp "U =",e,"/(",i,"×",t,")"
Disp "U = ",u
ElseIf string(ve)="i" Then
i:=((e)/(u*t))
Request "U",u,0
Request "t",t,0
Disp "I =",(("E")/("U × t"))
Disp "I =",e,"/(",u,"×",t,")"
Disp "i = ",i
ElseIf string(ve)="t" Then
t:=((e)/(u*i))
Request "U",u,0
Request "i",i,0
Disp "t =",(("E")/("U × I"))
Disp "t =",e,"/(",u,"×",i,")"
Disp "t = ",t
EndIf

je doute que cette partie la fonctionne correctement, vu que tu affectes avant de demander les données


pour cette partie
Code: Select all
Request "Valeur de l'expression de l'énergie électrique recherchée",ve,0
If string(ve)="u" Then

il est préférable d'utiliser RequestStr comme ça tu n'auras pas besoin de string
Code: Select all
RequestStr "Valeur de l'expression de l'énergie électrique recherchée",ve,0
If ve="u" Then

(je n'ai pas encore regardé pour le problème)


Ce que j'avais noté précédemment marchait, mais j'ai comme même suivi ton conseil en supprimant les string() et mettant Requeststr.
User avatar
Tom129
Niveau 5: MO (Membre Overclocké)
Niveau 5: MO (Membre Overclocké)
Level up: 0%
 
Posts: 24
Joined: 30 Sep 2015, 17:47
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: BTS EEC

PreviousNext

Return to Nspire-Basic

Who is online

Users browsing this forum: ClaudeBot [spider] and 4 guests

-
Search
-
Social TI-Planet
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
908 utilisateurs:
>892 invités
>9 membres
>7 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)