[BETA] Mathplus ^^

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

[BETA] Mathplus ^^

Message par Seccour le Jeu 28 Mar - 16:15

Un petit programme de math du nom de... Mathplus x)

[Vous devez être inscrit et connecté pour voir ce lien]

Il est basique, je code actuellement la v1 graphique Content
Je le poste là pour savoir si il est bien coder... Ou pas Très Content

(Ne pas faire attention à toutes les lignes sauter à la fin ^^)

Seccour
Argent 1
Argent 1

Sexe : Masculin
Age : 20
Messages : 17
Date d'inscription : 09/11/2012
Etudes : Seconde
Points Forum : 5
Points Concours : 0
Langages :
  • - TI-Basic Z80
Calculatrices :
  • - TI-Collège
  • - TI-84 Pocket.fr

TI-84 Pocket.fr


Revenir en haut Aller en bas

Re: [BETA] Mathplus ^^

Message par linkakro le Jeu 28 Mar - 18:28

Poster le code serait appréciable.

Le premier Goto thêta est innutile. C'est sans doute un oubli de suppression.
L'usage même Du second Goto thêta et du Lbl F est stipide. Supprimme le premier usage de Lbl F et ce qui en dépend puis remplace le Lbl thêta par F. Puis si tu préfères vraiment thêta alors remplace F par thêta partout.

Supprimme les parenthèses innutiles des numérateurs de fractions quand ce sont des produits. Enlève les symboles de produits quand ils peuvent être implicites.
(cpendant si un jour tu es confronté aux ti82non-stat, méfie toi des priorités opératives un peu étranges concernant les fonctions d'une part et les fractions d'autre part)

Place tes ClrHome au dessus des menu de choix au lieu de les placer au début des chaque partie.
Les menus qui se placent juste avant les modules sont idéaux pour cela, car ils assureront autant au premier chargement que lors de répétitions.

Les parenthèses autour de conditions sont innutiles dans les fonctions de tests. Elles servent seulement pour insérer le booléen résultat dans des calculs et modifier la priorité des opérations logiques comme "ou".

Songe à ne pas confondre le Radian et le Pi*Radian.
Quand on dit 3pi/2 il s'agit de 3pi/2 randians et 3/2 pi*radian.
or tu demandes de saisir des radians sans effectuer de division par pi pour convertir.

J'aimerais bien éviter de repéter les menus de répétion. C'est à première vue impossible à cause des Labels/Menu, mais on doit pouvoir se débrouiller en faisant bugguer des boucles et des End. Comme sur le site du zéro en lien dans mon tuto.

---------
Tu peux éviter de répéter des algorithmes symétrique autour de zéro en utilisant la fonction valeur absolue et une variable dont le signe dépend de l'angle.
abs(S)>360 <=> S>360 ou S<~360
En fait le abs et ma variable seront parfois équivalent, mais pas toujours.

De plus tu effectues un test innutile, ou bien c'est qu'il en manque un de l'autre côté du else.

Cette étude est insuffisante car elle ne donne pas systématiquement l'angle principal. (120 n'est pas principal)
Cependant cela explique pourquoi tu indiques un seul sens de rotation pour ton angle et tes tours, ainsi qu'une abscence de test du signe final puisque le signe ne change pas entre l'initial et le final.
(les tours en sens toujours opposé à l'angle)
Spoiler:
Extrit original un peu commenté
Code:
Lbl D
ClrHome
Input "RADIAN=",R
R180->S
0->T
If (S<0
Then
While (S<=~360) // parenthèses
S+360->S
T+1->T
End
Disp "  SENS NEGATIF"
Disp "DEGRES=",S*~1  // économie avec "~S" // faux car un angle
Disp "TOUR=",T
Else
If (S>=360  // manque son symétrique ou est en trop
Then
While (S>=360  // on va fusionner ça à l'autre while
S-360->S
T+1->T
End
Disp "  SENS POSITIF"
Disp "DEGRES=",S
Disp "TOUR=",T
Else  // ce qui va avec le test en trop ou en manque
Disp "DEGRES=",S
End
End
Pause
Version améliorée, pas encore testée.
Code:
Lbl D
ClrHome
Input "RADIAN=",R
R180->S
0->T
2(S>0)-1->U  // 1 ou -1 selon le signe de S
While abs(S)>=360      // US>=360
S-U360->S
T+1->T
End

If S<0  //avant ma modif le sens n'était pas indiqué pour un angle sans tour
Then
Disp "  SENS NEGATIF"
Else
Disp "  SENS POSITIF"
End
Disp "DEGRES=",US    // abs(S
If T // au moins un tour
Disp "TOUR=",T
Pause
On peut encore éviter d'afficher un sens de rotation si on se contente d'afficher le nombre avec son signe.

On peut améliorer et simplifier en calculant l'angle principal.
Je te laisses améliorer la présentation. Tu es rôdé.
Code:
Disp "A=X*pi=(2K+R)*pi
Prompt X
int(X/2->K
X-2K->R
K+2(R>1->K
R-2(R>1->R->R
Disp "K=",K,"R=",R>Frac

Si tu as du mal avec mes opérations booléennes (R>1 par exemple) et ma méthode de mesure principale, consulte ceci et ceci.
--------

Le programme est lourdingue mais bien présenté.
Je ne suis pas un utilisateur de ce genre d'antisèche cependant.

Il y aura concurrence avec persalteas qui développe MathPowa et sachiix69 (plus sûr que ce soit lui) qui optimise SupraMath.
Mais ton programme réalise de nombreuses choses élémentaires qui ne sont pas forcément traités par les autres qui s'adonnent à des algorithmes complexes.

linkakro
Or 4
Or 4

Sexe : Masculin
Age : 22
Messages : 768
Date d'inscription : 01/07/2010
Etudes : dut geii (elec/info)
Points Forum : 51
Points Concours : 8
Langages :
  • - TI-Basic Z80
  • - ASM TI-82 Stats / TI-83
  • - ASM TI-83+ / TI-84+
Calculatrices :
  • - TI-82 Stats.fr
  • - TI-84 Pocket.fr

TI-84+ SE


Revenir en haut Aller en bas

Re: [BETA] Mathplus ^^

Message par Seccour le Jeu 28 Mar - 20:23

Woaw... Sa en fait des trucs inutiles dedans... Bon bas je vais essayer de faire moins d'erreur, et d'enlever un maximum de truc inutile dans la v1.

Et c'est pas vraiment une antisèche ( pour moi en tout cas ) c'est juste pour avoir tout sous la main pour me faciliter la vie +_+ Et c'est un gain de temps dans les contrôles je trouve, et vue que le prof de math nous pousse a créer des programmes. ( Ils font des trucs simples ) Je voulais tout mettre en un seul, donc j'ai créer ce prog, l'histoire de voir ce que sa pourrait donner.

Seccour
Argent 1
Argent 1

Sexe : Masculin
Age : 20
Messages : 17
Date d'inscription : 09/11/2012
Etudes : Seconde
Points Forum : 5
Points Concours : 0
Langages :
  • - TI-Basic Z80
Calculatrices :
  • - TI-Collège
  • - TI-84 Pocket.fr

TI-84 Pocket.fr


Revenir en haut Aller en bas

Re: [BETA] Mathplus ^^

Message par linkakro le Jeu 28 Mar - 21:55

Tu fais ce que tu veux avec ton programme. En plus je ne suis pas dérangé par la multitude de contenus puisqu'ils ne sont pas dépareillés.

J'ai réfléchit à une méthode pour utiliser un unique menu de répétition. A tester. Ce sera économique si tu l'utilises de nombreuses fois.
Je n'effectues pas de goto directement depuis le menu de répétition vers le menu de choix car je veux m'assurer que la boucle est refermée. Sinon le programme ralentirait à chaque choix jusqu'au prochain arrêt du programme.
Code:
Lbl A
Menu("","",B,"",C // choix
Lbl B
Repeat Ans
... // module
Goto Z
Lbl C
Repeat Ans
... // module
Goto Z
................ // quelconque
Lbl Z
1
Menu("","REPEAT",Y,"MENU",X,"EXIT",F // repetition
Lbl Y
0
Lbl X
End
Goto A
Lbl F

linkakro
Or 4
Or 4

Sexe : Masculin
Age : 22
Messages : 768
Date d'inscription : 01/07/2010
Etudes : dut geii (elec/info)
Points Forum : 51
Points Concours : 8
Langages :
  • - TI-Basic Z80
  • - ASM TI-82 Stats / TI-83
  • - ASM TI-83+ / TI-84+
Calculatrices :
  • - TI-82 Stats.fr
  • - TI-84 Pocket.fr

TI-84+ SE


Revenir en haut Aller en bas

Re: [BETA] Mathplus ^^

Message par nikitouzz le Mar 2 Avr - 8:52

C'est vraiment bien, c'est comme ca que j'ai commencer la prog intensive en axe par faire des programme de maths en basic Content

_________________
[Vous devez être inscrit et connecté pour voir cette image]
Invité née le 0 a aujord'huis 0 ans et a posté 11 messages... je suis derrière vous

2x2x2 : 2.18 secondes / 2x2x2 une main : 21.15 secondes / 2x2x2 yeux bandés : 47.59
3x3x3 : 5.97 secondes / 3x3x3 une main : 49.86 secondes
4x4x4 : 1.49 minutes / 4x4x4 une main : 6.50 minutes
5x5x5 : 4.10 minutes / 5x5x5 une main : 18.02 minutes
6x6x6 : 8.10 minutes
7x7x7 : 16.03 minutes
9x9x9 : 58.26 minutes

3x3x1 : 0.73secondes / 3x3x2 : 30.55secondes / 3x3x3 : 5.97secondes / 3x3x4 : 1.09minutes / 3x3x5 : 1.46minutes / 3x3x6 : 2.06minutes

megaminx : 5.59 minutes / pyraminx : 7.91 secondes / square-one : 1.07

nikitouzz
Platinum 1
Platinum 1

Sexe : Masculin
Age : 21
Messages : 1834
Date d'inscription : 16/01/2011
Points Forum : 7
Points Concours : 6
Langages :
  • - TI-Basic Z80
  • - ASM TI-83+ / TI-84+
  • - Axe Parser
  • - TI-Basic 68K
  • - TI-Basic Nspire
Calculatrices :
  • - TI-73
  • - TI-76.fr
  • - TI-82 Stats.fr
  • - TI-83+
  • - TI-84+
  • - TI-92
  • - TI-Nspire
  • - TI-Nspire CX

TI-84+ SE


Revenir en haut Aller en bas

Re: [BETA] Mathplus ^^

Message par Contenu sponsorisé Aujourd'hui à 4:55


Contenu sponsorisé


Revenir en haut Aller en bas

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

- Sujets similaires

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