Rechercher
 
 

Résultats par :
 


Rechercher Recherche avancée

Connexion

Récupérer mon mot de passe

Chatbox externe


Derniers sujets
» [JEU] Mon voisin du dessous
Mar 10 Oct 2017 - 19:42 par Wistaro

» 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++

» flappy bird
Jeu 15 Déc 2016 - 10:23 par Ti64CLi++

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


[TUTO] Programmer des programmes mathématiques simples.

Voir le sujet précédent Voir le sujet suivant Aller en bas

[TUTO] Programmer des programmes mathématiques simples.

Message par ashtrail le Mer 11 Sep 2013 - 20:07

Bonjours chers lecteurs,

le but de ce tutos est de passer à la pratique après la théorie du tutoriel de Linkakro (il est préférable que vous l'ayez lu donc je ferais comme si) disponible ici :

http://tout82.forumactif.org/t26-algorithmique-vers-ti-basic

Je vous préviens tout de suite je suis bien plus un programmeur qu'un algorithmeur (ça se dit?), c'est comme les maths on doit tout expliquer et passer des heures pour écrire un truc que tout le monde comprends. Mais enfin cela n'entravera pas le tuto. Tout cela pour dire que celui-ci sera orienté sur de (relativement) petits programmes mathématiques (algorithmes et programmation donc, mais surtout du deuxième).
A la fin le but est que vous soyez capables de faire vos propres programmes (relativement) compliqués de maths.



1. Révision de ce que vous avez déjà vu


Et oui déjà un TP arg! mais normalement vous avez lu le tuto de Linkakro donc vous connaissez les bases (variables, conditions, boucles, etc...). Ce que nous allons faire c'est un petit programme permettant de faire une division euclidienne, c'est pratique puisque cette fonction n'existe pas sur une TI-82 stats.fr.

C'est le début alors je suis gentil, je vous explique toutes les étapes:

-En principe ce que je vais vous demander n'est pas primordial mais c'est plus clair, ça vous refait voir plus de trucs, et puis c'est moi qui décide nyerk, nyerk Twisted Evil !
Donc vous allez afficher un petit message expliquant à l'utilisateur à quoi sert le programme. Au début je le faisais pas mais quand on a une dizaine de programme dans le genre on commence déjà à s'y perdre. Vu que vous voulez faire des algorithme vous n'avez pas besoin de l'optimiser pour qu'il soit tout léger en mémoire mais bon c'est pas la peine de faire un truc lourd inutilement.

-Saisissez le numérateur et le dénominateur sinon ça va être dur.

-Faites le calcul. Aide: le quotient est égal à la partie entière de résultat pour n'obtenir que ce qu'il y a avant la virgule c'est la fonction [partEnd( ] dans la caltoche que vous trouverez dans la partie -NUM- du menu [maths] c'est le numéro 5. De toute manières si vous ne savez pas où trouver une fonction vous pouvez aller la chercher dans le catalogue ( [2nde] + 0 ). Le reste lui est égal à la différence du numérateur et du produit du quotient et du dénominateur. Si vous ne comprenez pas cette dernière phrase laissez tomber (allez c'est simple Wink  ).

-Finalement affichez le quotient et le reste.

Voila c'est pas sorcier moi ça me donne 6 lignes, 8 pour effacer l'écran avant et après + 1 pour la pause avant le deuxième effaçage obtenue avec la fonction Pause.
Vous pouvez écrire l'algorithme avant si ça vous chante.
Bon comparons nos codes:

SOLUTION:

nombres réels a,b
Début
Lire a
Lire b
Q<-partie entière de a/b
R<-A-B*Q
Afficher "Q=",Q
Afficher "R=",R
Fin



:EffEcr
:Disp "DIVISION","EUCLIDIENNE","DE A PAR B                      /* explications, l'Output n'est pas nécessaire ici mais bon ce n'est pas une erreur d'en mettre un */
:Prompt A,B            // saisie
:partEnt(A/B)->Q          // calcul du quotient
:A-B*Q->R             // calcul du reste
:Disp "Q=",Q           // si vous mettez les résultats sans expliquer c'est pas clair
:Disp "R=",R
:Pause
:EffEcr

Bon là c'est un joli programme, je connais des gens qui raffinerait un peu moins mais bon, je trouve ça mieux comme ça.
Et bien c'est super vous pouvez désormais faire des divisions euclidiennes (oui c'est pas super super utile mais voyez le bon côté des choses).

Si vous ne savez pas ce qu'est l'optimisation c'est ce qui permet de rendre un programme plus léger, on peut le faire en supprimant le " final ou la ) finale ou encore en écrivant "If non(V" plutôt que "If V=0". Aller voir le tuto "Candide ou l'Optimisation" pour en savoir plus. Le code optimisé donnerait :

tuto "Candide ou l'Optimisation" : http://tout82.forumactif.org/t50-candide-ou-l-optimisation (si j'étais vous j'attendrais un peu pour ce tuto parce que vous n'allez rien comprendre)

Optimisation:
:EffEcr
:Disp "DIVISION","EUCLIDIENNE","DE A PAR B
:Prompt A,B            
:partEnt(A/B->Q                    
:Disp "Q=",Q    
:Pause A-BRép /* merci m@t Smile mais je ne pense pas que se soit très compréhensible on a même pas encore vu les Rep */
:EffEcr

Si vous ne comprenez pas tout ne vous inquiétez pas on y viendra.

Bien comme je l'ai déjà dit je vous apprends à faire des programmes de maths. Donc en fait je fais un mélange et je parlerais de moins en moins d'algorithme, mon but étant plutôt de vous faire comprendre la logique de la conception de ces programmes. Le titre de la section est "Algorithmique et Cours de Maths" donc ce tuto n'est pas un H.S. pour autant.

Il y a de fortes chances que le lecteur soit au Lycée, et de surcroît en Seconde. Ce n'est pas sur mais même moi en Terminale S j'utilise encore les programmes qu'on fera tout au long du tuto. Tout ça pour dire que tout les programmes qu'on verra sont utiles en plus de vous entrainez, c'est-i pas super? Very Happy 



2. Un deuxième petit test


Oui je sais je suis embêtant à force avec tout ces tests. Mais c'est comme en maths on faits des exos après le cours. Et puis ce sont des exercices courts. Bon la dernière fois je vous ai expliqués comment faire étape par étape, il est temps de voir ce que vous avez engrangé et que vous ayez un peu plus d'autonomie.

Voila ce que je vous demande :

- Un programme qui calcule un vecteur à partir de 2 points du plan A(xa;ya) et B(xb;yb). Si vous ne savez pas comment on fait : l'abscisse du vecteur vaut xb - xa, et son ordonnée ya - yb. Vous devez avouer que c'est vraiment fastoche. En plus je vous ai encore donné la réponse. Bon allez c'est parti, et n'oubliez pas d'expliquer avant ce que fait le programme.

SOLUTION:
:EffEcr
:Disp "OBTENIR UN","VECTEUR A PARTIR","DE 2 POINTS","a(A,B) b(C,D) /*pas besoin de supprimer la dernière parenthèse c'est pour l'esthétique du texte, vu que j'utilise des Prompt j'explique ce que représente les variables que l'utilisateur doit entrer, vous pouvez utiliser des Outputs si vous préférez mais ça risque d'être plus lourd */
:Prompt A,B,C,D
:Disp "v(E,F), E=",C-A,"       F=",D-B    /* vous pouvez trouver les minuscules en cherchant bien, les 7 espaces sont purement esthétiques, si vous avez remarqué j'aime bien ça */
:Pause
:EffEcr

Vous avez réussi? Super clapclap ! Sinon revoyez ce qu'on a dit et puis ça viendra on a pas terminé!



3.Où le lecteur apprends enfin quelque chose au lieu de gagner seulement de l'expérience


Vous deviez l'attendre, je vais enfin vous apprendre quelque chose de concret, cependant toutes les choses que je vous apprendraient seront surtout des astuces.

Bien imaginons que nous ayons un programme et que le résultat final soit un quotient (non euclidien) et par extension un résultat décimal par exemple : 19,6920769. On est d'accord pour dire que c'est pas génial, il y a 7 chiffres après la virgule (encore 7! Je vous jure que c'est une coïncidence, la preuve : dans la liste des chiffres mon préféré c'est 8, ça ressemble à l'infini,(remarque j'aime bien 6 aussi) enfin si je dois choisir hein, je ne chéris pas particulièrement les chiffres, mais bref je m'égare.)

Ce serait bien que nous puissions changer ce nombre décimal en fraction n'est-ce pas? En l'occurrence c'est 256/13. Et bien figurez-vous que c'est possible! En même temps je n'en parlerais pas sinon. C'est la fonction [>Frac] dans le menu [maths] (n° 1 de l'onglet MATH). Génial me direz-vous. Empressez-vous donc de convertir un nombre décimal en fraction (attention ça ne marche pas toujours par exemple 1,414213562 n'est pas le résultat d'une division mais d'une racine celle de 2).

Jusqu'à peu je pensais que c'était impossible de le faire sur une variable et du coup j'utilisais une autre astuce dans mes programmes. Je comptais sur ce supposé bug pour monter une autre astuce. Si vous n'avez lu que le tuto de Linka vous ne devriez pas connaitre la touche [Rép] ou [Ans] de votre calculette, en fait vous l'avez surement déjà fait sans le savoir :

Code:
24-8
                     16
/* vous tapez /2 */
Rep/2                  // voici notre ami Rep
                      8
Qu'est-ce que Rep? Et bien c'est tout simple Rep est le résultat du dernier calcul que vous avez fait. Pratique non? Le truc bien c'est que vous pouvez l'utiliser dans vos programmes (partout à vrai dire) en tapant [2nde] et [(-)] la touche pour signaler qu'un nombre est négatif. Cela peut permettre par exemple d'économiser des variables :

Code:
A+B+C+...+X+Y+Z+#(thêta)
Disp "RESULTAT =",Rep
Cela vous aidera peut-être un jour. On ne sait jamais. C'est aussi pratique si une variable prend le résultat de deux calculs à la suite.

Allez il est temps de pratiquer voici un exercice : vous devez faire un programme qui prend les coordonnées de deux points d'un plan et qui calcule le point aux milieu. Le calcul consiste à faire la moyenne des abscisses pour obtenir l'abscisse du milieu, et de même pour l'ordonnée. Allez je veux un résultat sous forme de fraction et vous n'avez le droit de n'utiliser que deux variables (vous pouvez même vous passez de Rep pour le coup).

SOLUTION:
:EffEcr
:Disp "OBTENIR LE","MILIEU DE LA","DROITE DE 2 PTS","a(A,B) b(C,D)
:Prompt A,B,C,D
:Disp "LE MILIEU A","POUR COORDONNEES",(A+C)/2>Frac,"ET",(B+D)/2>Frac
:Pause
:EffEcr

A vrai dire les >Frac sont assez inutiles ici, en général les coordonnées sont des nombres entiers donc on devrait avoir au pire des nombres avec deux chiffres après la virgule.

Allez un deuxième exo pour encrez les connaissance : on va faire un programme qui trouve la formule d'une fonction affine (de la forme mx+p) à partir de deux points qui appartiennent à sa courbe. Pour calculer m on fait le calcul (ya - yb) / (xa - xb), p = b - m * xa. Allez cette fois je vous dispense d'explications au début du prog. Mettez-moi 2 Rep, vous n'avez le droit qu'à 4 variables, et pour finir je veux les résultats en fraction.

SOLUTION:
:EffEcr
:Disp "a(A,B) b(C,D)
:Prompt A,B,C,D
:(B-D)/(A-C
:Disp "MX+P: M=",Rep>Frac,"P=",B-RepA>Frac
:Pause
:EffEcr



4.Un vrai programme de maths


Bon on va rentrer dans le vif du sujet, ils sont bien sympathiques nos programmes mais assez basiques, et puis excessivement simples à faire (si c'est pas le cas ça viendras avec le temps). Cette fois au lieu de faire une pléthore de mini programmes qui vont envahir la faible mémoire de votre calculatrice on va faire du tir groupé. Je m'explique au lieu de faire trois petits programmes indépendants ce serait pas cool de faire un trois en un? Pour ça on va utiliser différentes fonctions, attention prêtez attention à ce qui va suivre c'est nouveau.

Notre but c'est que l'utilisateur puisse choisir le programme qu'il veut utiliser. On va utiliser pour ça la fonction : Menu(, une magnifique fonction que vous ne retrouverez pas dans de nombreux autres languages de progra (en C faut faire des switch, avec de break, c'est chiant, mais bon vous vous en foutez on fait du TI-Basic nous). En gros ça va afficher différentes options qu'on peut choisir. Je vous montre un exemple de programme qu'on va étudiez ensemble :

Code:
:Menu("MENU","TRUC",1,"MACHIN",2,"BIDULE",3
Ouhlala! Qu'est-ce que c'est que ça j'y comprends rien!
C'est normal. Je vais expliquer étape par étape. D'abord on écrit la fonction : Menu(, jusque la ça va non? Ensuite on met le nom du menu (qui sera affiché) entre guillemets vu que c'est du texte, j'ai choisis un truc pas très original : MENU. Ensuite on met les noms des options entre guillemets. Ouais mais c'est quoi le 1, le 2 et le 3. Aïe, c'est là que ça se complique!

Malheureusement vous expliquez cela va être un peu long alors on va laissez Menu( pour quelques instants. Donc ces numéros sont des références à des étiquettes.
Tout d'abord qu'est-ce qu'une étiquette? C'est un repère dans le programme, on peut lui donner un numéro, ou une variable pour nom. Un repère c'est un peu vague, donc je vais essayer d'être plus clair. Imaginez une faille spatio temporelle, en gros parfois vous allez vouloir revenir dans un endroit du programme, ou allez plus loin. C'est là qu'intervienne les étiquettes, vous en mettez une à un endroits puis vous mettez un renvoi quelque part et le programme va chercher en arrière ou plus loin et l'étiquette va lui dire "Youhou par ici mec!" et le programme va faire le saut en arrière ou en avant. C'est très pratique. Je vais vous montrez un exemple pour que vous compreniez mieux.
La fonction pour initialiser une étiquette est Lbl (pour label = étiquette en anglais). Une autre fonction importante est Goto qui est le renvoi. Bon allez un exemple :

Code:
:Lbl A
:Disp "EXEMPLE
:Goto A
Que ce passe-t-il si vous tapez ça dans votre calculette? Et bien une boucle infinie (rhâ c'est malin, ça vous amuse de faire bugguer votre pauvre caltoche). En effet le programme vas vous afficher le mot : EXEMPLE à l'infini (sauf si vous faites On). Explications : on met un Lbl A, un truc à faire et puis un Goto A, le goto cherche où est-ce qu'il y a une étiquette A, Lbl A lui dit "Par là! Par là!" et le programme recommence à partir de Lbl A. Bon là mon code est totalement débile mais ça peut être vachement pratique. vous pourriez aussi faire ça :

Code:
:Lbl B
:Goto A     // préparation au saut spatio-temporel
:2+3   // calcul totalement débile et inutile
:Lbl A  
:Disp "EXEMPLE
:Goto B
Quel est le résultat, exactement le même que la dernière fois Lbl B à comme instruction Goto A et 2+3, sauf que 2+3 ne sert à rien puisque le Goto renvoie à la Lbl A qui affiche EXEMPLE, puis le Goto B renvoi au début et c'est infini.

Linkakro a fait un autre tuto sur la mauvaise utilisation des Goto dans les boucles, si ça vous intéresse:

http://tout82.free.fr/forum/sujet.php?sujet=2757

Bon revenons à Menu( , je vous remets le code :

Code:
:Menu("MENU","TRUC",1,"MACHIN",2,"BIDULE",3
Les numéros ce sont en fait des Gotos vers les Lbl 1, 2 et 3. On aurait pu aussi écrire :

Code:
:Menu("MENU","TRUC",A,"MACHIN",B,"BIDULE",C
Maintenant il faut juste créer les étiquettes qui contiendront les instructions à faire pour les différentes options du menu :

Code:
:Menu("MENU","TRUC",A,"MACHIN",B,"BIDULE",C
:Lbl A
:Disp "TRUC
:Lbl B
:Disp "MACHIN
:Lbl C
:Disp "BIDULE
C'est très bien tous ça mais si je veux revenir au Menu après pour reposez le choix. Eh bien on utilise encore les étiquettes (vous auriez pu y pensez tout seul c'est pas dur!). En général on utilise la Lbl M, (M pour menu vous aviez deviné j'espère). Application:

Code:
:Lbl M
:Menu("MENU","TRUC",A,"MACHIN",B,"BIDULE",C
:Lbl A
:Disp "TRUC
:Goto M
:Lbl B
:Disp "MACHIN
:Goto M
:Lbl C
:Disp "BIDULE
:Goto M
Bon je sais le code que je vous ai pris pour exemple est totalement débile. Bon ça suffit on a appris plein de trucs maintenant exercice!

Vous allez me regroupez les deux derniers programmes qu'on a fait soit celui-là :

Code:
:EffEcr
:Disp "OBTENIR UN","VECTEUR A PARTIR","DE 2 POINTS","a(A,B) b(C,D)
:Prompt A,B,C,D
:Disp "v(E,F), E=",C-A,"       F=",D-B
:Pause
:EffEcr
et celui-ci :

Code:
:EffEcr
:Disp "a(A,B) b(C,D)
:Prompt A,B,C,D
:(B-D)/(A-C
:Disp "MX+P: M=",Rep>Frac,"P=",B-RepA>Frac
:Pause
:EffEc
C'est franchement facile alors je ne vous aide pas.

SOLUTION:
:Lbl M
:EffEcr
:Menu("MATHS","VECTEUR",1,"DROITE",2
:Lbl 1
:Disp "OBTENIR UN","VECTEUR A PARTIR","DE 2 POINTS","a(A,B) b(C,D)
:Prompt A,B,C,D
:Disp "v(E,F), E=",C-A,"       F=",D-B
:Pause
:Goto M
:Lbl 2
:Disp "a(A,B) b(C,D)
:Prompt A,B,C,D
:(B-D)/(A-C
:Disp "MX+P: M=",Rep>Frac,"P=",B-RepA>Frac
:Pause
:Goto M

Bon et bien voila une bonne chose de faite.



5.Le chapitre de la fin


Et bien chers amis il est bientôt temps de se quitter mais il va d'abord falloir faire un exercice qui synthétise toutes les connaissances acquises au cours du tutoriel. Ce sera un programme sur les polynômes du second degré, si vous êtes un 1ère S vous devriez très bien savoir ce que c'est. Ce programme vous sera très utile en temps voulu.

Un polynôme du second degré est une fonction de la forme ax²+bx+c avec a, b et c des réel, et a non nul. Ils possèdent une forme canonique de la forme a(x-(alpha))²+(bêta). Je vais vous renvoyez à un cours pour en savoir plus :

http://www.maths-cours.fr/premiere-es/polynomes-du-second-degre

Vous pouvez arrêter aux inégalités. Si vous ne connaissez pas ce cours lisez-le attentivement je ne vous dirais plus comment calculer maintenant.


Voila le programme que je veux que vous fassiez :

- Dans un premier temps demandez les valeurs de A, B et C. Calculez Delta et stockez le dans une variable.

- Dans un deuxième temps faite un menu qui donne deux options : forme canonique, et calcul des racines (donnez les noms que vous voulez)

- Dans l'option forme canonique calculez alpha et bêta et donnez les valeurs à l'utilisateur.

- Dans l'option calcul des racines :
                         a) Si delta est négatif prévenez l'utilisateur qu'il n'y a pas de racines
                         b) Si delta est nul donnez l'unique racine à l'utilisateur
                         c) Si delta est positif donnez les deux racines du polynômes

- Voila vous avez terminé le programme

Astuce : Vous pouvez faire une option quittez en mettant dans l'instruction un Stop une fonction qui arrête le programme, ou plus simple et moins spacieux dans la mémoire : mettez l'étiquette de l'option à la dernière ligne du programme et c'est tout, ce sera donc la fin du programme.
(Rappels : si = If, sinon = Else, et = and, ou inclusif = or, pour plus d'infos revoyez le tuto de Linka)

Allez creusez-vous un peu les méninges, je ne serais pas toujours là pour vous tenir la main.

Bon il est temps de comparez nos résultats:

Ma Proposition:
:Lbl M
:EffEcr
:Disp "AX²+BX+C
:Prompt A,B,C
:B²-4AC→D
:Lbl Z                // vous comprendrez l'utilité plus tard
:EffEcr
:Menu("CANONIQUE","a(X-α)²+ϐ",A,"RACINE",B,"NOUVEAU",C,"QUITTEZ",Q   // pour alpha et bêta vous pouvez mettre a et b minuscule dans var, puis statistique, puis l'onglet EQ
:Lbl C
:Goto M
:Lbl A
:Disp "a(X-α)²+ϐ
:Disp "Δ=",Ans►Frac    // utilisez un D pour delta
:Disp "α=",-B/(2A)►Frac
:Disp "ϐ=",-D/(4A)►Frac
:Pause 
:Goto Z
:Lbl B
:If D=0:Then
:Disp "Δ=0 1 SOLUCE
:Disp "a(X-α)²
:Disp "α=",‾B/(2A)►Frac
:Pause 
:Goto Z
:End
:If D<0:Then
:Disp "0 SOLUCE Δ=",D
:Pause 
:Goto Z
:End
:If D>0:Then
:Disp "2 SOLUCE A=",A
:Disp "A(X-X1)(X-X2)
:Disp "X1=",(-B-√(D))/(2A)►Frac,"X2=",(-B+√(D))/(2A)►Frac
:Disp "D=",D
:Pause 
:Goto Z
:End
:Lbl Q

Si nos programmes sont différents mais que le votre marche tout va bien. Bon et bien vous avez terminé le tuto bravo!
J'espère que ça vous a plu et surtout aidé.

Dans un avenir plutôt proche je pense faire la suite du tuto intitulé : Des programmes de maths aux jeux simples où l'on apprendra à faire des jeux simples. Si vous avez des questions n'hésitez pas à m'envoyer des mp. Vous pourrez trouver mes programmes dans ma signature, il y aura les lien de mes programmes de maths (y en a que je ne vous ai pas fait faire).

Bonne chance programmeur en herbe et à bientôt.


Dernière édition par ashtrail le Mer 25 Sep 2013 - 23:19, édité 2 fois

__________________________________________________________________________
Mes programmes :
-JEUX : Le TAPTAUPE, Le MINSTEP, Un Plus-Moins
-MATHS : Regroupement n°1, Regroupement n°2, tout sur les pourcentages
-AUTRE : Le programme qui jauge les prénoms
avatar
ashtrail
Connaisseur
Connaisseur

Messages : 248
Points Concours : 21
Productivité : 21
Date d'inscription : 18/06/2013
Localisation : Paris
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://ti-freeworld.fr1.co/

Revenir en haut Aller en bas

Re: [TUTO] Programmer des programmes mathématiques simples.

Message par blg_flg le Ven 20 Sep 2013 - 18:04

Merci beaucoup, mon brave. Very Happy

Je n'ai personnellement pas lu l'intégralité du tuto, mais j'ai une entière confiance en toi. :P

__________________________________________________________________________




A bove ante, ab asino retro, a moderatoro undique caveto.

Invité, tu désires la liberté ? Fais donc un petit tour sur TI-Free World !

Spoiler:
avatar
blg_flg
Connaisseur
Connaisseur

Messages : 249
Points Concours : 45
Productivité : 6
Date d'inscription : 04/06/2013
Localisation : Pantruche
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [TUTO] Programmer des programmes mathématiques simples.

Message par ashtrail le Mer 25 Sep 2013 - 20:58

blg_flg a écrit:j'ai une entière confiance en toi
Je ne sais pas comment tu l'as acquise mais ça fait toujours plaisir Cool  (en revanche mon brave... Mad ).

__________________________________________________________________________
Mes programmes :
-JEUX : Le TAPTAUPE, Le MINSTEP, Un Plus-Moins
-MATHS : Regroupement n°1, Regroupement n°2, tout sur les pourcentages
-AUTRE : Le programme qui jauge les prénoms
avatar
ashtrail
Connaisseur
Connaisseur

Messages : 248
Points Concours : 21
Productivité : 21
Date d'inscription : 18/06/2013
Localisation : Paris
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://ti-freeworld.fr1.co/

Revenir en haut Aller en bas

Re: [TUTO] Programmer des programmes mathématiques simples.

Message par persalteas le Mer 25 Sep 2013 - 21:21

Félicitations ashtrail ! Smile

Je mets ce topic en post-it ! Bien Joué

__________________________________________________________________________
Bienvenue sur le nouveau Tout-82, Invité ! Viens discuter sur le chat... What a Face
Depuis que je me suis tatoué une calculatrice sur le bras, vous pouvez compter sur moi ! :P (Best joke ever x) )
avatar
persalteas
----------------------
----------------------

Messages : 482
Points Concours : 152
Productivité : 39
Date d'inscription : 06/12/2012
Localisation : Savoie, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://tout82.forumactif.org

Revenir en haut Aller en bas

Re: [TUTO] Programmer des programmes mathématiques simples.

Message par m@thieu41 le Mer 25 Sep 2013 - 21:41

Petite remarque:
Pour la division euclidienne tu donnes un 2e code que tu dis optimisé, alors tant qu'à faire autant y aller franchement :P :
Code:

EffEcr
Disp "DIVISION","EUCLIDIENNE","DE A PAR B
Prompt A,B    
partEnt(A/B->Q
Disp "Q=",Q,"R=",A-B*Q
Pause
EffEcr
Devient alors:
Code:

EffEcr
Disp "DIVISION","EUCLIDIENNE","DE A PAR B
Prompt A,B    
partEnt(A/B
Disp "Q=",Rép,"R=
Pause A-BRép //C'est surtout la non utilisation de la multiplication implicite qui est importante
EffEcr
C'est pas grand chose mais j'ai pas pu m'empêcher Wink.

Joli travail sinon Bien Joué .

PS: Quand tu parles des Goto/Lbl, il faudrait donner un lien vers l'explication de Linka sur la mauvaise utilisation des Goto dans les boucles:
http://tout82.free.fr/forum/sujet.php?sujet=2757

__________________________________________________________________________
ZSNAKE Mon premier (et unique) jeu en ASM:
Un Snake 2 joueurs (2caltos)
-> Je travaille sur une version plus stable du jeu, je poste dès que possible.
avatar
m@thieu41
----------------------
----------------------

Messages : 934
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [TUTO] Programmer des programmes mathématiques simples.

Message par blg_flg le Mer 25 Sep 2013 - 22:57

Ashtrail, pour éviter les torticolis et autres entorses du doigt qui manie la molette de la souris, pourrais-tu incorporer au fur et à mesure les remarques ? Si tu ne le fais pas déjà, évidemment. Smile

__________________________________________________________________________




A bove ante, ab asino retro, a moderatoro undique caveto.

Invité, tu désires la liberté ? Fais donc un petit tour sur TI-Free World !

Spoiler:
avatar
blg_flg
Connaisseur
Connaisseur

Messages : 249
Points Concours : 45
Productivité : 6
Date d'inscription : 04/06/2013
Localisation : Pantruche
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [TUTO] Programmer des programmes mathématiques simples.

Message par ashtrail le Mer 25 Sep 2013 - 23:07

@ m@t : ok merci je règle ça le plus tôt possible
@ Keb : tu veux dire des commentaires dans les codes? Auquel ças je le fais, sinon de toutes manières ce sont des codes court. Si c'est autre chose je ne vois pas ce que tu veux dire...

__________________________________________________________________________
Mes programmes :
-JEUX : Le TAPTAUPE, Le MINSTEP, Un Plus-Moins
-MATHS : Regroupement n°1, Regroupement n°2, tout sur les pourcentages
-AUTRE : Le programme qui jauge les prénoms
avatar
ashtrail
Connaisseur
Connaisseur

Messages : 248
Points Concours : 21
Productivité : 21
Date d'inscription : 18/06/2013
Localisation : Paris
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://ti-freeworld.fr1.co/

Revenir en haut Aller en bas

Re: [TUTO] Programmer des programmes mathématiques simples.

Message par blg_flg le Mer 25 Sep 2013 - 23:12

Non, non, je veux juste dire les astuces, conseils, remarques et autres, comme le post de mat, ci-dessus. Wink

__________________________________________________________________________




A bove ante, ab asino retro, a moderatoro undique caveto.

Invité, tu désires la liberté ? Fais donc un petit tour sur TI-Free World !

Spoiler:
avatar
blg_flg
Connaisseur
Connaisseur

Messages : 249
Points Concours : 45
Productivité : 6
Date d'inscription : 04/06/2013
Localisation : Pantruche
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [TUTO] Programmer des programmes mathématiques simples.

Message par ashtrail le Mer 25 Sep 2013 - 23:20

Ah bah oui bien sur c'est beaucoup plus simple comme ça. Agir autrement serait illogique. J'aime la clarté!

__________________________________________________________________________
Mes programmes :
-JEUX : Le TAPTAUPE, Le MINSTEP, Un Plus-Moins
-MATHS : Regroupement n°1, Regroupement n°2, tout sur les pourcentages
-AUTRE : Le programme qui jauge les prénoms
avatar
ashtrail
Connaisseur
Connaisseur

Messages : 248
Points Concours : 21
Productivité : 21
Date d'inscription : 18/06/2013
Localisation : Paris
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://ti-freeworld.fr1.co/

Revenir en haut Aller en bas

Re: [TUTO] Programmer des programmes mathématiques simples.

Message par blg_flg le Mer 25 Sep 2013 - 23:27

Parfait.

__________________________________________________________________________




A bove ante, ab asino retro, a moderatoro undique caveto.

Invité, tu désires la liberté ? Fais donc un petit tour sur TI-Free World !

Spoiler:
avatar
blg_flg
Connaisseur
Connaisseur

Messages : 249
Points Concours : 45
Productivité : 6
Date d'inscription : 04/06/2013
Localisation : Pantruche
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [TUTO] Programmer des programmes mathématiques simples.

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum