π
<-

Un bug vieux de 18 ans

:32tins: :32tinsktpb: :32tinsktpn: :32tinscas: :32tinstpkc: :32tinstpktpb: :32tinstp: :32tinscastp: :32tinscmc: :32tinscx: :32tinscxcas:

Un bug vieux de 18 ans

Unread postby Bisam » 19 Mar 2013, 23:37

En tentant d'optimiser un programme de maths assez simple que j'avais écrit il y a bien longtemps, j'ai découvert un bug curieux sur ma Voyage 200.

En voulant voir si celui-ci avait été corrigé sur les Nspire, j'ai pu constater qu'il était toujours là, à l'identique, bien des années plus tard.

J'ai alors testé sur émulateur et vu qu'il était là dès les premières version de la TI92... et cela fait donc 18 ans que ce bug est présent dans tous les OS CAS de la série 68k et de la série Nspire.

Ce bug, je vais vous le montrer en image.
Tout d'abord, montrons un exemple où tout se passe bien.

Ci-dessous, on voit que la calculette calcule sans problème avec des listes, et gère parfaitement les règles de priorité, notamment celles particulières à la dérivation et au symbole | ("tel que").

Image


Mais il suffit d'une toute petite modification pour que tout parte de travers.
En prenant cette fois-ci une liste contenant des complexes, les premiers calculs ne sont pas entièrement simplifiés...

Image


... Et si on poursuit, on obtient carrément des résultats aberrants, impossibles à obtenir autrement : une matrice contenant des listes !!

Image


L'association d'une dérivée et d'une spécification avec des listes contenant des complexes provoque ce bug... et cette apparition étrange de matrices de listes si on pousse le vice, le tout provenant probablement de la façon dont sont gérés les complexes par le CAS.


Et ce n'est pas anodin puisque ce bug m'est apparu alors que je testais un programme sur les polynômes d'interpolation de Lagrange dont voici le code que vous pouvez tester sur toutes les calculatrices TI possédant un système de calcul formel.
Code: Select all
Define lagrange(l)=Func
Local p
product(x-l)->p
p/(x-l)/(d(p,x)|x=l)
EndFunc


Si vous essayez avec une liste ne contenant que des réels tout se passe bien... et s'il y a des complexes, gare au résultat !!


Ce qu'il faut en retenir, toutefois, c'est que la calculette POURRAIT gérer les tableaux à 3 dimensions, mais qu'elle est bridée afin que ressorte une erreur "Invalid list or matrix" si un tel tableau se présente.

TI-Planet : Voyagez dans le temps pour explorer la 3ème dimension...
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: Un bug vieux de 18 ans

Unread postby Adriweb » 19 Mar 2013, 23:45

Wow, intéressant, bravo pour cette découverte :)

Je suppose que je peux faire remonter ce bug, mais peut-être sont-ils déjà au courant, si ça fait si longtemps :P

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
My calculator programs
Mes programmes pour calculatrices
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 78.9%
 
Posts: 14744
Images: 1119
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Re: Un bug vieux de 18 ans

Unread postby critor » 20 Mar 2013, 00:02

L'histoire des simplifications non terminées qui donnent du n'importe quoi lorsque réutilisée, ça me rappelle un bug que j'ai découvert et signalé récemment:
viewtopic.php?t=10945&p=133582
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 48%
 
Posts: 41984
Images: 15890
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Un bug vieux de 18 ans

Unread postby Benoit934 » 20 Mar 2013, 10:25

Heureusement que le logiciel de ma banque na pas été créé par TI
Je viens ici pour m'entourer de gens intelligents, ça me donne parfois l'impression d'en faire partie
User avatar
Benoit934
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 83.6%
 
Posts: 41
Joined: 15 Mar 2013, 02:25
Location: Florange, France
Gender: Male
Calculator(s):
MyCalcs profile

Re: Un bug vieux de 18 ans

Unread postby Adriweb » 20 Mar 2013, 11:42

benoit anastay wrote:Heureusement que le logiciel de ma banque na pas été créé par TI

Au pire, il y a peu de calculs financiers dans le monde réel qui utilise des nombres imaginaires... :D (enfin, j'imagine)

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
My calculator programs
Mes programmes pour calculatrices
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 78.9%
 
Posts: 14744
Images: 1119
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb


Return to News TI-Nspire

Who is online

Users browsing this forum: ClaudeBot [spider] and 11 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.
962 utilisateurs:
>903 invités
>52 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)