def solve(numLegs, numHeads):
for numSpiders in range(0, numHeads + 1):
for numChicks in range(0, numHeads - numSpiders + 1):
numPigs = numHeads - numChicks - numSpiders
totLegs = 4*numPigs + 2*numChicks + 6*numSpiders
if totLegs == numLegs:
return [numPigs, numChicks, numSpiders]
return [None, None, None]
def barnYard(heads, legs):
pigs, chickens, spiders = solve(legs, heads)
if pigs == None:
print "There is no solution."
else:
print 'Number of pigs: ', pigs
print 'Number of Chickens: ', chickens
print 'Number of Spider: ', spiders
barnYard(20,56) # 8 pigs - 12 chickens
barnYard(21,62) # 10 pig - 11 chickens
20 têtes et 56 retours jambes 8 cochons et 12 poulets, donc je l'ai fait 21 et 62 d'ajouter une araignée, mais il retourne toujours des cochons et des poulets, ce qui est erroné dans le code?Résultat inattendu dans un exemple simple
Merci!
pas que ce soit une erreur dans votre code, mais les araignées ont huit pattes :) –