Ernteproblem

image

Diese Aufgabe habe ich ursprünglich bei Martin Gardner gefunden.

Code 01:

g1:m+f+k=100;
g2:3*m+2*f+1/2*k=100;
l:solve([g1,g2],[m,f,k]);
L:makelist(ev(l,%r1=i),i,0,100);

Es müssen noch die Lösungen ausgefiltert werden, die keine natürliche Zahlen sind.

Code 02:

g1:m+f+k=100;
g2:3*m+2*f+1/2*k=100;
l:solve([g1,g2],[m,f,k]);
l:map(rhs,l[1]);
L:makelist(ev(l,%r1=i),i,0,100);
L:setify(L);
subset(L,lambda([e],is(e[1]>0 and e[1]=floor(e[1]) and e[2]>0 and e[2]=floor(e[2]) and e[3]>0 and e[3]=floor(e[3]))));

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

Unten die Berechnung mit http://maxima.cesga.es

cesga

Die letzte Lösung (keine Frauen) ist ungültig. Man muss das Programm veränden. In der letzen Zeile nur „>“ statt „>=“.

Lösung mit Python:

Python-Programm

Über Johnny Weilharter

Direktor i. R. der Bundeshandelsakademie und Bundeshandelssschule in Tamsweg, Österreich
Dieser Beitrag wurde unter BYOD, Creative Commons, diophantische Gleichungen, GLEICHUNGEN ODER GLEICHUNGSSYSTEME, Kompetenzorientiert, Lineare Algebra, Listenverarbeitung, Zahlenrätsel veröffentlicht. Setze ein Lesezeichen auf den Permalink.