Kata - Calcular MDC e MMC

Identificação do desafio

Criar funções que calculem o Máximo Divisor Comum (MDC) e Mínimo Múltiplo Comum (MMC).

Pistas ou dicas

  • Matemática básica1
  • Algoritmo de Euclides 2

Recursos

Obstáculos

Domínio da disciplina Algorítmos3 4 e Estrutura de Dados5.

Solução

🙈 🙉 🙊

def mdc(n: int, m: int):
    while m != 0:
        resto = n % m
        n = m
        m = resto

    return n


def mmc(n: int, m: int):
    res = int(n * (m / (mdc(n, m))))
    return res

Referências


  1. Só Matemática - MDC, MMC ↩︎

  2. Euclidean algorithm https://en.wikipedia.org/wiki/Euclidean_algorithm ↩︎

  3. Entendendo Algorítmos, Aditya Bhargava, ed. 2017 ↩︎

  4. Projeto de Algorítmos - com Implementação em Pascal e C, Ph.D. Nivio Ziviani, ed. 2011 ↩︎

  5. Data Structures and Algorithms (DSA), disponível em https://www.geeksforgeeks.org/dsa/dsa-tutorial-learn-data-structures-and-algorithms ↩︎