Rechercher
Connexion
Chatbox externe
Derniers sujets
Partenaires
TI-Planet | Espace-TI : Forum |
Faire un don à Tout-82...
Où va cet argent ?
Membres donateurs:- Persalteas (10€)
- Wistaro (5€)
- jo2geek (22€)
Les posteurs les plus actifs du mois
Aucun utilisateur |
Algorithmique vers TI-Basic
4 participants
Page 1 sur 1
Algorithmique vers TI-Basic
Ceci est un tutoriel de Linkakro. Seuls quelques ajouts et la mise en page sont de moi.
Ce tutoriel a pour but de donner une traduction de la plupart des instructions d'algorithmie en TI-Basic pour ceux qui l'étudient au lycée et ne savent pas comment le saisir sur leur calculatrice TI 82/82stat/82statfr/83/83plus etc.
Les paresseux peuvent s'intéresser au programme CMD de maxence et aussi TXT et leur dérivé commun LOGICBOX.
http://espace-ti.forumactif.com/t713-cmd-un-nouveau-langage-revolutionnaire
http://espace-ti.forumactif.com/t961-cmd-version-2
http://espace-ti.forumactif.com/t725-ti-concours-txt
http://tout82.free.fr/forum/sujet.php?sujet=3629
http://espace-ti.forumactif.com/t991-basic-logicbox-le-digne-successeur-de-cmd
Le vocabulaire des fonctions est donné autant en français que ce que la ti82 Stats.fr accepte. Il faudra traduire pour la ti82(stats). (Voir le catalogue des fonctions pour pouvoir traduire.)
Exemples de traduction Algorithmie-TI-Basic
Sachez en prémisse que les ponctuations de fin de ligne (comme les guillemets) peuvent être omises dans une TI.
Idem juste avant la fonction [sto->].
Les lettres sont obligatoirement majuscules avant la 83plus. (Sauf quelques variables du menu variable/statistique qui s'affichent pareil.)
Ce tutoriel a pour but de donner une traduction de la plupart des instructions d'algorithmie en TI-Basic pour ceux qui l'étudient au lycée et ne savent pas comment le saisir sur leur calculatrice TI 82/82stat/82statfr/83/83plus etc.
Les paresseux peuvent s'intéresser au programme CMD de maxence et aussi TXT et leur dérivé commun LOGICBOX.
http://espace-ti.forumactif.com/t713-cmd-un-nouveau-langage-revolutionnaire
http://espace-ti.forumactif.com/t961-cmd-version-2
http://espace-ti.forumactif.com/t725-ti-concours-txt
http://tout82.free.fr/forum/sujet.php?sujet=3629
http://espace-ti.forumactif.com/t991-basic-logicbox-le-digne-successeur-de-cmd
Le vocabulaire des fonctions est donné autant en français que ce que la ti82 Stats.fr accepte. Il faudra traduire pour la ti82(stats). (Voir le catalogue des fonctions pour pouvoir traduire.)
Exemples de traduction Algorithmie-TI-Basic
Sachez en prémisse que les ponctuations de fin de ligne (comme les guillemets) peuvent être omises dans une TI.
Idem juste avant la fonction [sto->].
Les lettres sont obligatoirement majuscules avant la 83plus. (Sauf quelques variables du menu variable/statistique qui s'affichent pareil.)
- Code:
Les informations de début et fin de programme n'existent pas en TI-Basic.
Il est inutile de déclarer les variables, il faut seulement les initialiser.
Les types de variables sont prédéfinis dans une TI. Les lettres seront toujours majuscules et désigneront des nombres réels (ou complexes sur 82stat et après).
Observez au passage l'instruction d'affectation : "->" saisi par la touche [sto->] comme "store" en anglais.
Les variables se saisissent par le clavier avec les combinaisons basées sur 2nde et alpha, ou le menu [var].
Sur TI 82, 2nde+var permet d'accéder aux équations de courbes au lieu de var+[droite] sur les autres TI.
[code]nombres réels a,b
a initialisé à 1
Début
a<-1 // "a est affecté à la valeur 1"
b<-2*a
Fin[/code][code]1->A
2A->B[/code]
- Code:
Effacer l'écran se fait avec EffEcr. (ClrHome)
L'affichage se fait avec Disp.
La saisie se fait avec Prompt. Cela affiche automatiquement le nom de la variable et un "=?". On peut cumuler les variables.
Pour afficher quelque chose avant la saisie : Input.
Pour effectuer une pause attendant la touche entrer : Pause.
Pour afficher quelque chose avant la pause, on précise le texte à la fonction Pause.
Pour placer un texte/variable en (X,Y) : Output(Y,X,txt)[code]nombres réels c,d
Début
Effacer l'écran
Ecrire "LOL"
Ecrire "c=?"
Lire c
Ecrire "d=?"
Lire d
Ecrire "variable:"
Lire c
pause
Ecrire c
Ecrire d
pause
Effacer l'écran
Placer "coucou" en ligne 2 et colonne 1
Fin[/code]Toutes les fonctions suivantes sont dans le menu prgm.[code]EffEcr
Disp "LOL
Prompt C,D // cumule les variables
Input "VARIABLE:",C
Pause
Pause D // pause et affiche le nombre D
EffEcr
Output(2,1,"COUCOU[/code]
- Code:
Ici, j'illustre uniquement les écritures de conditions qu'on utilisera dans les tests Si et les boucles.
En effet les signes de comparaisons se saisissent chacun avec un unique caractère du menu test=2nde+math.
[code]Si c>8
Si c>=8 // ">=" représente "suppérieur ou égal"
Si c<=8 // "<=" représente "inférieur ou égal"
Si c!=8 // "!=" représente "différent", tout comme "=/=" le égal barré
Si c>8 et c<20
Si c<8 ou c>20
Si non(c<8) // complémente le résultat (Faux<->Vrai)
Si c=1 OuExclusif c=0 // n'existe pas sur ti82 basique[/code]
[code]If C>8
If C>=8 // ">=" se saisit en un seul caractère avec le menu 2nde+math(test)
If C!=8 // "!=" idem
If C>8 et C<20 // " et " est une fonction
If C<8 ou C>20 // " ou " idem
If non(C<8) // "non(" idem
If c=1 OuExclusif c=0 // "xor" en anglais
// cela s'écrit aussi : If c=1 et c!=0 ou c=0 et c!=1
// ou encore : If c=1 et non(c=0) ou c=0 et non(c=1)
// c'est même obligatoire sur ti82basique.[/code]Sachez aussi que la priorité des oprérations est :
-parenthèses
-calculs
-et
-ouExclusif
-ou
- Code:
La TI utilise la fonction If en guise de Si.
Elle supporte le sous-entendu de la fin LORSQU'IL N'Y A QU'UNE INSTRUCTION DEDANS ET PAS D'AUTRE ALTERNATIVE.[code]Nombres réels a,b,c
Début
Si c=3
alors
a<-2 // UNE SEULE INSTRUCTION POUR CET EXEMPLE
finSi
Si c=3
alors
a<-2 // une ou plusieurs instructions
b<-5
finSi
Si c=4
alors
a<-3
sinon
a<-5
finSi
Fin[/code][code]If C=3
2->A // UNE SEULE INSTRUCTION, juste suivant le test
If C=3
Then
2->A // une ou plusieurs instructions
5->B
End
If C=4
Then
3->A
Else
5->A
End[/code]
- Code:
La TI connaît trois types de boucles.
Pour : For
Tant que : While
Repète : Repeat
Il faudra parfois adapter vos algorithmes aux instructions de la TI.
Fait xxx tant que yyy : Répète xxx jusqu'à non(yyy)
Je vous déconseille de tenter d'utiliser Goto/Lbl qui permettent de faire trop n'importe quoi et causent des bugs si mal utilisés. Le programme saute d'un Goto vers le Label correspondant.
Une seule instruction ferme les boucles : End
Contrairement aux Fins dont on précise l'instruction ouvrante en algorithmie.[code]nombres réels a,c,d
Début
Pour d variant de 1 à c par pas de 2
Ecrire d
Fin_Pour
Tant_que a<8
a<-a+1
Fin_Tant_Que
Répète
a<-a-1
jusqu'à a<5
Fait
a<-a+1
tant que a>10 // jusqu'à a>=10[/code][code]For(D,1,C,2
Disp D
End
While A<8
A+1->A
End
Repeat A<5
A-1->A
End
Repeat A>=10
A+1->A
End[/code]
- Code:
[code]L'aléatoire se code de plusieurs manières et certaines dépendent du modèle de la TI.
l'exemple suivant est donné pour un aléatoire entier entre 1 et 3.
[code]entier aléatoire entre 2 et 4 // de A à B[/code][/code][code]Solution décomposée :
-sur ti82 : 2+int 3rand
-sur ti82stat : 2+int(3rand // A+int((B-A+1)rand
-sur ti82statfr : 2+ent(3NbrAléat
Solution optimisée :
-sur ti82stat : randInt(2,4
-sur ti82statfr : entAléat(2,4 // randInt(A,B[/code]
- Code:
La parité se teste de plusieurs manières, la plus courte utilise la fonction partDéc qui donne la partie décimale.
On peut aussi comparer un nombre à sa partie entière.
On peut même étudier le reste de la division. (reste nul si division juste ; voir prochain chapitre si ça vous intéresse)
Les fonctions partDéc(), partEnt() et ent() sont dans le menu math
Cela se généralise à la divisibilité par un nombre quelconque.
[code]Si A est pair
/////////////////////////
Si A divisible par B[/code][code]If non(parDéc(.5A // rappelez vous, cela donne If parDéc(A/2)=0
// ou bien
If ent(A/2)=A/2
///////////////////////
If non(partDéc(A/B
// ou bien
If ent(A/B)=A/B[/code]
- Code:
Les restes des divisions se calculent de deux façons et il existe deux types de restes (qui se différencient dans les négatifs).
Mais attention, TI a une erreur de traduction entre le français et l'anglais.
Reste classique en anglais :
DfPart(N/D) erreur possible
N-iPart(N/D) toujours juste
Reste euclidien en anglais :
N-int(N/D)
Reste classique en français :
DpartDéc(N/D) erreur possible
N-Dent(N/D) toujours juste
Reste euclidien en français :
N-DpartEnt(N/D)
blg_flg- Connaisseur
- Messages : 249
Points Concours : 45
Productivité : 6
Date d'inscription : 04/06/2013
Localisation : Pantruche
Calculatrice(s) :- TI-82 Stats.fr
. :
Re: Algorithmique vers TI-Basic
On pourrait peut-être faire un petit pack avec deux trois programmes d’algorithmique type (plus des explications si vous voulez). Mais non pas du tout je ne tente pas de faire ma propre pub : j'ai fait personnellement quelque prgms dans le genre. Bref dites ce que vous en pensez je peux m'en charger auquel cas (pour ça ça va je ne suis pas trop nul).
Re: Algorithmique vers TI-Basic
Oui, vas-y, si tu veux faire des exemples détaillés, pas de problème, tant que tu rends ça accessible à tous, que c'est bien présenté, etc. Si c'est bien, on éditera l'article d'origine.
blg_flg- Connaisseur
- Messages : 249
Points Concours : 45
Productivité : 6
Date d'inscription : 04/06/2013
Localisation : Pantruche
Calculatrice(s) :- TI-82 Stats.fr
. :
Re: Algorithmique vers TI-Basic
Bien.
Poste au moins un lien vers le tutoriel d'origine !
Et comme je continue à effectuer des améliorations sur tout82free, ce serait bien de m'informer directement (mail ou mp sur un des forum) des transferts de mes articles pour que je transmette aussi les améliorations s'il y en a.
Les balises code les unes dans les autres ne marchent pas sur tout82forumactif.
Et j'ai effectué des améliorations sur tout82free depuis.
Je modifie encore le tuto original, en remplaçant les balises code des rubriques par des quote. Comme ça c'est déjà fait pour vous.
Ensuite je tiendrai compte de festivalgo et du sujet complémentaire de ashtrail.
Des exemples précis de programmes ? Mais bien sûr ! Tu as carte blanche de notre part.
Poste au moins un lien vers le tutoriel d'origine !
Et comme je continue à effectuer des améliorations sur tout82free, ce serait bien de m'informer directement (mail ou mp sur un des forum) des transferts de mes articles pour que je transmette aussi les améliorations s'il y en a.
Les balises code les unes dans les autres ne marchent pas sur tout82forumactif.
Et j'ai effectué des améliorations sur tout82free depuis.
Je modifie encore le tuto original, en remplaçant les balises code des rubriques par des quote. Comme ça c'est déjà fait pour vous.
Ensuite je tiendrai compte de festivalgo et du sujet complémentaire de ashtrail.
Des exemples précis de programmes ? Mais bien sûr ! Tu as carte blanche de notre part.
Linkakro- ----------------------
- Messages : 533
Points Concours : 55
Productivité : 31
Date d'inscription : 30/07/2013
Localisation : origine région centre, puis perpignan
Calculatrice(s) :- TI-82 Stats.fr
. :
Re: Algorithmique vers TI-Basic
Surtout, Linkakro, tiens nous au courant de tes mises à jour, afin qu'elles soient intégrées ici !
blg_flg- Connaisseur
- Messages : 249
Points Concours : 45
Productivité : 6
Date d'inscription : 04/06/2013
Localisation : Pantruche
Calculatrice(s) :- TI-82 Stats.fr
. :
Re: Algorithmique vers TI-Basic
En effet, maintenant que je suis au courant de l'existence de cette copie, ce sera à moi de transmettre. Mais avant que je le sois, il aurait fallu m'avertir. Quoi qu'il en soit je suis au courant et je transmettrai les prochaines.
Je transmet comment d'ailleurs ? par message privé ?
Je suis content de l'intérêt suscité par mon article.
Je transmet comment d'ailleurs ? par message privé ?
Je suis content de l'intérêt suscité par mon article.
Linkakro- ----------------------
- Messages : 533
Points Concours : 55
Productivité : 31
Date d'inscription : 30/07/2013
Localisation : origine région centre, puis perpignan
Calculatrice(s) :- TI-82 Stats.fr
. :
Re: Algorithmique vers TI-Basic
Ton article possède en effet une importance croissante, avec les nouveaux programmes ! Je ne peux malheureusement pas te dire "édite mon post", donc je pense que le mieux serait de publier les mises à jour directement dans le topic, afin que n'importe quel modérateur puisse éditer. Ou bien crée directement un nouveau thread et nous supprimerons celui-ci, mais il serait dommage de perdre cette discussion.
Si tu as d'autres tutos que tu trouves importants dans la multitude que tu as produite, je t'invite bien sûr à les publier ici.
Si tu as d'autres tutos que tu trouves importants dans la multitude que tu as produite, je t'invite bien sûr à les publier ici.
blg_flg- Connaisseur
- Messages : 249
Points Concours : 45
Productivité : 6
Date d'inscription : 04/06/2013
Localisation : Pantruche
Calculatrice(s) :- TI-82 Stats.fr
. :
Re: Algorithmique vers TI-Basic
Ou bien je postule pour devenir modérateur sur les deux forums et je m'occupe aussi bien de mes articles que de tout le reste. On verra.
Il doit bien y en avoir deux ou trois de vraiment intéressant... à commencer par le bug de rappel.
Il doit bien y en avoir deux ou trois de vraiment intéressant... à commencer par le bug de rappel.
Linkakro- ----------------------
- Messages : 533
Points Concours : 55
Productivité : 31
Date d'inscription : 30/07/2013
Localisation : origine région centre, puis perpignan
Calculatrice(s) :- TI-82 Stats.fr
. :
Re: Algorithmique vers TI-Basic
Oui, je crois que te nommer modérateur ne pose a priori pas de problème à persalteas. C'est sans doute, en effet, la meilleure solution.
blg_flg- Connaisseur
- Messages : 249
Points Concours : 45
Productivité : 6
Date d'inscription : 04/06/2013
Localisation : Pantruche
Calculatrice(s) :- TI-82 Stats.fr
. :
Sujets similaires
» decompilation de .83p vers .tib (txt)
» copier programme vers la calculette
» basic to asm
» [Jeu - Ti Basic] Taquin
» Catalogue du TI-Basic z80
» copier programme vers la calculette
» basic to asm
» [Jeu - Ti Basic] Taquin
» Catalogue du TI-Basic z80
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|
Dim 16 Oct 2022 - 21:11 par Wistaro
» Bonne année 2018!
Ven 2 Nov 2018 - 19:42 par Ti64CLi++
» Lancement du TI-Concours 2017 !
Sam 20 Mai 2017 - 0:27 par Paulo1026
» Chaînes Youtube des membres
Ven 19 Mai 2017 - 22:41 par Wistaro
» cacul du taux d'intêret
Ven 24 Mar 2017 - 21:50 par m@thieu41
» [Projet] Un mario by tout82
Dim 29 Jan 2017 - 14:09 par Wistaro
» Cherche documentation assembleur TI82stat
Mer 25 Jan 2017 - 12:29 par Ti64CLi++
» Probleme Ti-82 Stats fr
Jeu 12 Jan 2017 - 13:56 par Ti64CLi++
» ROM 82 stats.fr
Jeu 15 Déc 2016 - 10:24 par Ti64CLi++