Para representar uma fração normalmente fazemos com que o numerador e denominador sejam números primos, isto é, o MDC entre eles é 1. Assim se consideramos 2 números quaisquer a e b, uma fração a/b pode ser simplificada para c/d onde c e d são primos realizando a seguinte operação. Achamos os MDC(a,b) = m e achamos a = m * c e b = m * d.
Podemos achar o MDC por fatoração dos 2 números ou pelo método das divisões sucessivas. Eu acho melhor implementar o segundo método, portanto:
Vamos agora fazer uma classe bem simples - só para a gente treinar um pouco mais esta parte de manipulação matemática de inteiros. O que vamos fazer? Uma classe que passamos um número inteiro abcdef e a classe retorna outro número na ordem invertida. Temos diversos métodos de resolver este problema, os mais comuns são:
- transformar o inteiro em uma String e ler as posições da string na ordem inversa, gerando uma segunda String. Ao terminar convertemos esta segunda String em inteiro;
- usamos restos sucessivos;
- etc
Notem a linha 28, vocês se lembram do último post? Dá para reescrever como
numero /= 10
Nenhum comentário:
Postar um comentário