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 |
Équilibrage de réactions chimiques
Page 1 sur 1
Équilibrage de réactions chimiques
Bonjour !
Voici un programme qui permet d'équilibrer les réactions chimiques.
Taille : 400 octets
Ce programme affiche les nombres stœchiométriques de chaque espèce de la réaction que vous entrez.
Quelques règles pour qu'il fonctionne :
- Une lettre par atome, deux lettres sont considérés comme deux atomes différents (il faut écrire F à la place de Fe par exemple).
- Les charges positives et négatives sont traitées comme des éléments (Fe2+ s'écrira donc F+2).
- Les parenthèses ne sont pas prises en charge, (OH)2 devra donc être écrit O2H2 ou OHOH.
* J'ai choisi "." pour la charge positive et "-" (le moins situé sous le 3) pour la charge négative, vous pouvez les remplacer par ce que vous voulez, à part un chiffre, "=", "+" et "e". "e" (exponentielle) représente un électron.
Un exemple pour montrer le fonctionnement du programme :
Équation : O2 + H+ + Fe = Fe2+ + H2O
Dans la calculatrice : O2+H.+F=F.2+H20
Résultat : {1, 4, 2, 2, 2
Un autre programme qui équilibre les réactions chimiques : http://tout82.free.fr/forum/sujet.php?sujet=2435 (de linkakro)
Voici un programme qui permet d'équilibrer les réactions chimiques.
Taille : 400 octets
- Code:
:Input "EQ:",Chaîne1
:EffVar[A]1->J
:1.1->E
:1->A
:{0->L1
:Rép->L2
:"#->Chaîne3 //# est une espace
:For(I,longueur(Chaîne1),1,-1
:sous-Chaîne(Chaîne1,I,1->Chaîne2
:If carChaîne("0123456789",Chaîne2
:Then
:expr(Chaîne2
:Rép+(9Rép+E)non(partDéc(E->E
:Else
:J->dim(L2
:carChaîne("-e.",Chaîne2
:If Rép
:Then
:L2(J)+ApartEnt(E)(1-2non(Rép=3->L2(J
:Else
:carChaîne("+=",Chaîne2
:If non(Rép
:Then
:If non(carChaîne(Chaîne3,Chaîne2
:Chaîne3+Chaîne2->Chaîne3
:longueur(Chaîne3)-non(max(abs(L2
:{Rép,J->dim([A]
:carChaîne(Chaîne3,Chaîne2)-1
:ApartEnt(E)+[A](Rép,J->[A](Rép,J
:Else
:If Rép=2
:-1->A
:J+1->J
:End
:End
:1.1->E
:End
:End
:If max(abs(L2
:Then
:For(I,1,dim(L2
:L2(I->[A](longueur(Chaîne3),I
:End
:End
:Gauss-Jordan([A]->[A]
:For(I,2,J
:-[A](J-I+1,J->L1(I
:End
:0=/=max(abs(L1->L1(1 // =/= est le signe [différent]
:While max(abs(partDéc(arrondi(RépL1,9
:Rép+1
:End
:RépL1
Ce programme affiche les nombres stœchiométriques de chaque espèce de la réaction que vous entrez.
Quelques règles pour qu'il fonctionne :
- Une lettre par atome, deux lettres sont considérés comme deux atomes différents (il faut écrire F à la place de Fe par exemple).
- Les charges positives et négatives sont traitées comme des éléments (Fe2+ s'écrira donc F+2).
- Les parenthèses ne sont pas prises en charge, (OH)2 devra donc être écrit O2H2 ou OHOH.
* J'ai choisi "." pour la charge positive et "-" (le moins situé sous le 3) pour la charge négative, vous pouvez les remplacer par ce que vous voulez, à part un chiffre, "=", "+" et "e". "e" (exponentielle) représente un électron.
Un exemple pour montrer le fonctionnement du programme :
Équation : O2 + H+ + Fe = Fe2+ + H2O
Dans la calculatrice : O2+H.+F=F.2+H20
Résultat : {1, 4, 2, 2, 2
Un autre programme qui équilibre les réactions chimiques : http://tout82.free.fr/forum/sujet.php?sujet=2435 (de linkakro)
Ruadh- Nouveau Venu
- Messages : 5
Points Concours : 0
Productivité : 0
Date d'inscription : 01/06/2015
Calculatrice(s) :- TI-82 Stats.fr
. :
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++