Dualzahlen in Dezimalzahlen verwandeln

aufgabe101

Programmcode:
Dualzahl:[1,1,0,1]/* Eingabe, darf veraendert werden */;
n:length(Dualzahl);
Umwandler:makelist(2^(n-i),i,1,n);
Dezimalzahl:Dualzahl.Umwandler /* Skalarprodukt */;

Lösung mit Maxima Online: http://maxima-online.org/?inc=r78755656

Ein Beispiel für das Zahlensystem mit der Basis 6 mit einem verbesserten Algorithmus:
http://maxima-online.org/?inc=r1035833127

Werbeanzeigen

Ziffernsumme einer dreistelligen Zahl

Eine Aufgabenstellung bei www.edhelper.com lautete in deutscher Übersetzung:
(g1) Die Ziffernsumme einer dreistelligen Zahl ist 18
(g2) Die Hunderterstelle ist um 6 größer als das 2fache der Zehnerstelle
(g3) Die Einerstelle ist um 6 größer als das 3fache der Zehnerstelle
Die dreistellige Zahl ist gesucht.

Programmcode:

g1:H+Z+E=18;
g2:H-6=2*Z;
g3:E-6=3*Z;
l:solve([g1,g2,g3],[H,Z,E]);
Zahl:100*H+10*Z+E,l;

Ausführung mit Maxima Online: http://maxima-online.org/?inc=r-144388483

Übungsauftrag:

Zweiergruppen:
Formuliere derartige Aufgabenstellungen für frei gewählte dreistellige Zahlen (mit unterschiedlichen Ziffern).
Das andere Gruppenmitglied soll deine Aufgabenstellungen lösen.

Aufgabe für Fortgeschrittene:

Auch ohne Computer ist nicht schwer, herauszufinden, wie viele dreistellige Zahlen es gibt. Mit Computer ist es auch interessant: http://maxima-online.org/?inc=r-673670430 . Aber, wie viele dreistellige Zahlen mit unterschiedlichen Ziffern gibt es? Die Kombinatorik liefert schnell eine Antwort.
Ich hätte gerne, dass der Computer diese Zahlen aufschreibt.

Der Programmcode dazu:

H:setify(makelist(i,i,1,9));
Z:setify(makelist(i,i,0,9));
E:Z;
zahlenmenge:cartesian_product(H,Z,E);
zahlenliste:listify(zahlenmenge);
verschiedene_ziffern:sublist(zahlenliste,lambda([x],
cardinality(setify(x))=3));
length(verschiedene_ziffern);

Anmerkung: cardinality(M) ist die Mächtigkeit der Menge M. Die Mächtigkeit einer Menge, ist die Anzahl ihrer Elemente. Die Zahl 199 als Liste ist [1,9,9]. Wenn man die Liste zu einer Menge verwandelt, erhält man {1,9}. Da eine Menge eine Zusammenfassung von wohlunterschieden Objekten unserer Anschauung oder unseres Denkens ist, dürfen keine Ziffern mehrfach vorkommen. Die Umwandlung einer Liste x in eine Menge erfolgt mit setify(x).  Die lambda-Funktion berücksichtigt in der Teilliste (sublist) also nur dreistellige Zahlen mit lauter verschiedenen Ziffern.Liste_in_Menge_1

Ausführung mit Maxima Online: http://maxima-online.org/?inc=r-1271358832

Es geht natürlich auch ohne Maxima:

Matthias Praunegger von http://www.d4e.at hat mir dieses Programm (mit einem anderen Algorithmus) geschickt:

matthias