Traduire le code source d'un langage à un aut

kamaradclimber -  
Aghaster Messages postés 26 Statut Membre -
Bonjour,
j'ai écrit un programme assez long sur ma calculette (TI-89titanium)
et je souhaiterais afin d'accelerer son execution le traduire en langage comprehensible par mon ordinateur comme le python (j'en connais les rudiments). Je voudrais savoir s'il existe des moyens (autres que la traduction à la main car mon programme est assez long) pour "passer" du langage TI-basic à un langage "PC"
si vous en connaissez merci de me contacter (rokjumpers@hotmail.com)
merci d'avance
kamaradclimber
A voir également:

3 réponses

Aghaster Messages postés 26 Statut Membre 25
 
Hum... intéressant. J'ai justement recu une TI-89 titanium pour noel. Je doute que cela existe déjà, mais il faudrait que tu te programmes un file parser qui te convertirais ça dans un autre language. Ça serait assez long à programmer et surtout inutile, car c'est pas bien dur traduire un programme en TI-Basic dans un autre language. Post ton code source ici, j'aimerais bien voir ton programme. J't'en enverrai des miens si tu veux.

-Aghaster
www.planetcpp.info
0
kamaradclimber
 
voila mon code source, il s'agit d'un programme de génétique, (des individus mutent evoluent et meurent dans un environement)

Prgm
DelVar delrow
setMode("Display Digits","FIX 2")
setMode("Exact/Approx","APPROXIMATE")
©note de version : nb reproduction= nb individu / 3
©nw : bug extinction espece impossible[regle]
©bug impossible maladie trop forte[regle]
©cycle haploide
©essai maladie v.
©©il va falloir considerer apres combien de temps la mutation voulue par la maladie est devenue presque impossible pour en trouver une autre

Local delrow
Define delrow(ma2,h)=Prgm
©matrice,h
©reconstruit m1 ligne par ligne
©h= num col vie/mort
Local a,b,c,d,ma4
dim(ma2)a
©construction 1ere ligne m1©
1b
subMat(ma2,b,1,b,a[2])ma3
If ma3[1,h]=0 Then
If b+1>a[1] Then
Goto fin
EndIf
While ma2[b,h]=0
b+1b
EndWhile
subMat(ma2,b,1,b,a[2])ma3
EndIf
©lignes suivantes
For c,b+1,a[1]
If ma2[c,h]0 Then
subMat(ma2,c,1,c,a[2])ma4
augment(ma3;ma4)ma3
EndIf
EndFor
DelVar a,b,c,d,ma4,ma2
Return ma3
Lbl fin
setMode("Display Digits","FLOAT 6")
DispHome
EndPrgm

©©©©©©©©©©©©©©©©©©©©©©
Local a,b,c,d,e,d,f,g,h,i,m2,j,l,nbrepro,m,n,nbgen,fl
ClrIO
1nbgen:2x
4sta[1]:1sta2[1]
[[1,4,2,1,1][1,4,2,1,1][1,4,2,1,1][1,4,2,1,1]]m1
©explication
©chaque ligne = un individu
©chaque colonne =un caractere
©colonne1=caractere1
©colonne2=esperance vie
©colonne3=freq mutations
©colonne4=age actuel
©colonne5=(vit=1 mort=0
©numero col agef
4f
©numero col esp vieg
2g
©numero col vit?h
5h
©numero col freq mutationsl
3l
1nbgen
Lbl a01
dim(m1)a
For m,1,iPart((a[1]+6)/8)
dim(m1)a
©repro
©©choix organismes
rand(a[1])b:bc
1j
©©choix 2nd individu
©©si 2individu est le meme retirage
©©si 30 retirages=pas de repro
While b=c
rand(a[1])c
j+1j
If j>29 Then
Goto a3
EndIf
EndWhile

©©melange genome
dim(m1)a
©ne pas oublier de mettreautant de col ds m2 ken m1
[[0,0,0,0,1]]m2
For d,1,a[2]-2
rand(2)e
If e=1 Then
m1[b,d]m2[1,d]
Else
m1[c,d]m2[1,d]
EndIf
EndFor
1m2[1,h]
augment(m1;m2)m1
EndFor
Lbl a3
©mutation
dim(m1)a
For b,1,a[1],1
©pkoi -2? car la mutation ne peut enlever le caractere vie ni modifier lage de lindividu
rand(a[2]-2)c
©©mutation
If rand(abs(iPart(m1[b,l]))+1)=1 Then
m1[b,c]d
m1[b,c]+(rand(3)-2)*m1[b,c]/10m1[b,c]
EndIf
EndFor

©confrontation au milieu
©©verif age
dim(m1)a
For d,1,a[1]
If m1[d,f]>m1[d,g] Then
0m1[d,h]
Else
m1[d,f]+1m1[d,f]
EndIf
EndFor
©maladie
dim(m1)a
For d,1,a[1]
©cette maladie devient de + en + selective 40eme generation
If abs(m1[d,1]-.8)ž­.0125*nbgen+.5125 and rand(5)=1 and nbgen<40 Then
0m1[d,h]
EndIf
EndFor

©maladie 2
©dim(m1)a
©For d,1,a[1]
©If mod(round(m1[d,1],2)*100,2)=1 and rand(10)=1 Then
©0m1[d,h]
©EndIf
©EndFor

dim(m1)a
1d
©elimine de la matrice les morts
©loperation est a renouveller autant de fois ke dindividus
©compte les morts
dim(m1)a
1j
For i,1,a[1],1
If m1[i,h]=0 Then
1+jj
EndIf
EndFor
For i,1,j
dim(m1)a
delrow(m1,h)
ma3m1
EndFor
©©si toute pop morte =>fin
dim(m1)a
If a[1]=1 Then
Goto extinct
EndIf
ClrIO
setMode("Display Digits","FLOAT 3")
©Disp subMat(m1,1,1,a[1],a[2]-1)
Disp m1
setMode("Display Digits","FIX 2")

nbgen+1nbgen
Output 10,125,nbgen
Output 30,105,a
©dispgen(nbgen)

©stat
If a[1]sta[x-1] Then
a[1]sta[x]
nbgensta2[x]
x+1x
EndIf

Goto a01

©extinction espece
Lbl extinct
ClrIO
Output 10,10,"espece eteinte"
Disp "causes possibles:"
Disp "pas assez individu pour"
Disp "reproduction ou une"
Disp " maladie a decime toute"
Disp "la population"
Pause
Goto fin

©fin
Lbl fin
DelVar m1
DelVar ma3
setMode("Display Digits","FLOAT 6")
DelVar nbgen
DispHome
EndPrgm
0
Aghaster Messages postés 26 Statut Membre 25
 
Mouais, le principal défi pour la conversion à un autre language est toute les ces fonctions built-ins du TI-Basic. Je vois pas d'autre solution que de tout réécrire dans un autre language à la main, il n'existe pas de convertisseur de language à ma connaissance.

-Aghaster
www.planetcpp.info
0