Über Quadratzahlen

Aufgabe:

Man bestimme die dreistelligen Quadratzahlen mit lauter verschiedenen Ziffern.


Code
:

qzahlen:makelist(i^2,i,ceiling(sqrt(100)),floor(sqrt(999)));
zeichen:map(charlist,(map(string,qzahlen)))$
ziffern:makelist(map(parse_string,zeichen[i]),i,1,length(qzahlen))$
vziffern:sublist(ziffern,lambda([e],cardinality(setify(e))=3))$
f(x):=x.[100,10,1]$
ergebnis:map(f,vziffern);

wxMaxima:

dkz

Zusatzaufgabe:

Wie viele vierstellige Quadratzahlen gibt es und wie viele davon haben lauter verschiedene Ziffern?


Code
:

qzahlen:makelist(i^2,i,ceiling(sqrt(1000)),floor(sqrt(9999)));
zeichen:map(charlist,(map(string,qzahlen)))$
ziffern:makelist(map(parse_string,zeichen[i]),i,1,length(qzahlen))$
vziffern:sublist(ziffern,lambda([e],cardinality(setify(e))=4))$
f(x):=x.[1000,100,10,1]$
ergebnis:map(f,vziffern);
Antwort:[length(ergebnis),"von",length(qzahlen)];

Erklärungen:

dqz-erkl

Maxima Onlinehttp://maxima-online.org/?inc=r997161410