Skip to content

Instantly share code, notes, and snippets.

@voyeg3r
Created March 11, 2010 17:49
Show Gist options
  • Save voyeg3r/329419 to your computer and use it in GitHub Desktop.
Save voyeg3r/329419 to your computer and use it in GitHub Desktop.
python - quantos porcos e quantas galinhas
#!/usr/bin/env python
# # -*- coding: UTF-8 -*-
# Criado em:Qui 11/Mar/2010 hs 14:50
# Last Change: Qui 11 Mar 2010 14:53:27 BRT
# vim:ft=python:nolist:nu:
# Instituicao: <+nome+>
# Proposito do script: <+descreva+>
# Autor: <+seuNome+>
# site: <+seuSite+>
"""
Um fazendeiro tem um bando de porcos e um bando de galinhas.
Ele sai para o terreiro e observa 20 cabeças e 56 pernas.
Quantos porcos e quantas galinhas que ele tem?
Observando o algoritmo você vai pareceber que ele trabalha por força bruta,
tentando cada opção até chegar ao equilíbrio das igualdades.
para calcular: barnYard(cabecas,pernas)
"""
def solve(numLegs, numHeads):
for numChicks in range(0, numHeads + 1):
numPigs = numHeads - numChicks
totLegs = 4*numPigs + 2*numChicks
if totLegs == numLegs:
return [numPigs, numChicks]
return [None, None]
def barnYard(heads, legs):
pigs, chickens = solve(legs, heads)
if pigs == None:
print "There is no solution."
else:
print 'Number of pigs: ', pigs
print 'Number of Chickens: ', chickens
if __name__ == '__main__':
cabecas=int(raw_input("Quantas cabeças? "))
pernas=int(raw_input("Quantas pernas? "))
barnYard(cabecas,pernas)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment