Aufgabe:
Wie man die Gleichung bekommt.
Code:
Funktionen1:[SIN,COS,TAN,CSC,SEC,COT]$ Funktionen2:map(string,Funktionen1)$ f(x):=charlist(string(x))$ Funktionen3:map(f,Funktionen1)$ Funktionen4:makelist(map(parse_string,Funktionen3[i]),i,1,6)$ F1:[100,10,1]$ F2:[1000,100,10,1]$ Zahlen:makelist((Funktionen4[i].F1),i,1,6)$ Summe:sum(Zahlen[i],i,1,6)$ TRIG:[T,R,I,G].F2$ Gleichung:Summe=TRIG;
wxMaxima:
Maxima Online: http://maxima-online.org/?inc=r-1314696322
Omega Explorer:
Probieren geht nicht! Es würde viel zulange dauern.
Es gibt offenbar eine Methode, wie man Kryptogramme besser lösen kann. Eine Android App bringt in großer Geschwindigkeit die ersten 200 von 304 Möglichkeiten!


Code:
zaehler:0$
buchstabe:[A,C,E,I,N,O,S,T,R,G]$
ziffer:[0,1,2,3,4,5,6,7,8,9]$
wert:makelist(buchstabe[i]=ziffer[i],i,1,10)$
gleichung:101*T+211*S+20*O+2*N+10*I+10*E+302*C+10*A=1000*T+100*R+10*I+G$
moeglich:listify(permutations(ziffer))$
for i:1 thru 10! do
block(
wert:makelist(buchstabe[j]=moeglich[i][j],j,1,10),
if is(ev(gleichung,wert)) then
block(
zaehler:zaehler+1,
disp(zaehler,wert)
)
)$
Testlauf mit wxMaxima (nach 8 Stunden bei 25 von 304):
