equações diofantinas encantaram os matemáticos desde Diofanto de Alexandria propôs pela primeira vez resolver uma equação da forma ax + bx = c . Nesta forma , a equação é conhecido como uma equação linear Diophantine . Esta equação tem apenas uma solução , quando c é o maior divisor comum de a e b , ou quando c é um múltiplo do maior divisor comum de a e b . Caso contrário , não há soluções para esta equação . Desenvolvido pelo professor Jim Carlson , da Universidade de Illinois em Urbana /Champagne, a curto programa abaixo mostra o poder do Python para tarefas matemáticas. Coisas que você precisa 
 Python 2.6 ou superior  
 Visualizar Mais instruções 
 1 
 Abra uma sessão de terminal e invocar o interpretador Python com o seguinte comando: 
 
 My- iMac: ~ me $ python -v 
 
 Isso irá retornar uma longa lista de todos os módulos Python disponíveis em sua instalação e no final ele vai dizer qual a versão do Python é instalado no seu computador. 
 2 
 Criar uma nova definição de uma função em Python , digitando o seguinte código no prompt do Python. Após Professor Carlson , vamos chamar isso de " isolve " : 
 
 >>> def isolve (a, b, c): 
 
 O cólon dirá Python para não interpretar imediatamente quando você pressione a tecla Enter para que você tenha mais espaço para o seu programa. 
 3 
 Criar duas variáveis, Q e R , que vai ficar para o quociente eo resto da variáveis da equação a e B e, em seguida, chamar a função divmod Python, que irá encontrar e dividir dois números e mostrar o seu divisor e restante, se houver . O código deve ser semelhante a este : 
 
 ... q, r = divmod (a, b) 
 4 
 Criar uma instrução if que rapidamente saída de uma solução para a equação quando a sua não é resto . Digite o seguinte : 
 
 ... se r == 0 : 
 
 ... retorno ( [0, c /b] ) 
 5 
 Crie uma instrução mais para o caso em que há um resto : 
 
 ... outra coisa : 
 
 ... sol = isolve (b, r, c) 
 
 ... u = sol [0] 
 
 ... v = sol [ 1] 
 
 ... retorno ( [v , u - q * v] ) 
 
 Isso vai colocá- b e r para o operador divmod , devolver os valores que as variáveis u e v e , em seguida, devolvê-los como a solução defina [ v, e o produto de q e v subtraído u ] . O código completo para este programa segue : 
 
 >>> def isolve (a, b, c): 
 
 ... q , r = divmod ( a, b ) 
 
 ... se r == 0 : 
 
 ... voltar ( [0, c /b] ) 
 
 ... outra coisa : 
 
 ... sol = isolve (b, r, c) 
 
 ... u = sol [0] 
 
 ... v = sol [ 1] 
 
 ... retorno ( [v , u - q * v] ) 
 
 Preste muita atenção para o recuo após o caso eo else . Python não irá executar este código , sem o recuo adequado. 
 6 
 Pressione o botão de retorno mais uma vez para trazer de volta o prompt Python. Digite a função isolve e três valores para z , y e c e pressione "Return ". Você deve ver o seguinte: 
 
 >>> isolve (5 , 17, 103) 
 
 [ 721, -206 ]