Ir para conteúdo
Fórum Script Brasil
  • 0

Calculadora de MMC


Elon Neto

Pergunta

Gente, teve um problema na minha calculadora de MMC, ela foi feita no intuito de ajudar pessoas com dificuldade em matematica, portanto ela calcula o MMC de certos numeros, o problema e que ela não calcula numeros primos maiores que 31, o que faz com que numeros maiores que o mesmo, ate naturais, podem chegar a não calcular também, eu ate fiz uma parte do codigo identica a dos outros que verifica qual numero e possivel dividir, o esqueminha e igual ao que você faz em sala de aula, de decomposisao, ent eu preciso de ajuda pra resolver aquela parte, porq o programa não passa naquela parte e não calcula estes numeros, porem não sei como fazer pra ela passar nessa parte.

Aqui o codigo:

#include <iostream>
#include <cstdio>
#include <conio.h>
#include <stdlib.h>
float numero1, numero2;
int divisivel[50], paro, primeiro, mmc, verifica(), numero11[50], numero22[50];
float verificasao1, verificasao2;
bool que;
int main(){
    for(int y = 0; y < 50; y++){
        divisivel[y] = 1;
        numero11[y] = 1;
        numero22[y] = 1;
    }
    std::cout << "Ola, bem vindo ao contador de MMC" << std::endl;
    std::cout << "Coloque quais numeros voce quer fazer o MMC (2 numeros apenas)" << std::endl;
    std::cout << "Primeiro numero: ";
    std::cin >> numero1;
    std::cout << "Segundo numero: ";
    std::cin >> numero2;
    verifica();
}
int verifica(){
    for(int i = 0; i < 51; i++){
    verificasao1 = numero1 / 2;
    verificasao2 = numero2 / 2;
    if (verificasao1 == (int)verificasao1 && verificasao2 == (int)verificasao2){
        if(numero1 != 1 && numero2 != 1){
        numero1 = verificasao1;
        numero2 = verificasao2;
        divisivel = 2;
    }
    }
    else if(verificasao1 == (int)verificasao1){
        if(numero1 != 1){
        numero1 = verificasao1;
        divisivel = 2;
    }
    }
    else if(verificasao2 == (int)verificasao2){
        if(numero2 != 1){
        numero2 = verificasao2;
        divisivel = 2;
    }
    }
    else{
        verificasao1 = numero1 / 3;
    verificasao2 = numero2 / 3;
    if (verificasao1 == (int)verificasao1 && verificasao2 == (int)verificasao2){
        if(numero1 != 1 && numero2 != 1){
        numero1 = verificasao1;
        numero2 = verificasao2;
        divisivel = 3;
    }
    }
    else if(verificasao1 == (int)verificasao1){
        if(numero1 != 1){
        numero1 = verificasao1;
        divisivel = 3;
    }
    }
    else if(verificasao2 == (int)verificasao2){
        if(numero2 != 1){
        numero2 = verificasao2;
        divisivel = 3;
    }
    }
    else{
    verificasao1 = numero1 / 5;
    verificasao2 = numero2 / 5;
    if (verificasao1 == (int)verificasao1 && verificasao2 == (int)verificasao2){
        if(numero1 != 1 && numero2 != 1){
        numero1 = verificasao1;
        numero2 = verificasao2;
        divisivel = 5;
    }
    }
    else if(verificasao1 == (int)verificasao1){
        if(numero1 != 1){
        numero1 = verificasao1;
        divisivel = 5;
    }
    }
    else if(verificasao2 == (int)verificasao2){
        if(numero2 != 1){
        numero2 = verificasao2;
        divisivel = 5;
    }
    }
    else{
    verificasao1 = numero1 / 7;
    verificasao2 = numero2 / 7;
    if (verificasao1 == (int)verificasao1 && verificasao2 == (int)verificasao2){
        if(numero1 != 1 && numero2 != 1){
        numero1 = verificasao1;
        numero2 = verificasao2;
        divisivel = 7;
    }
    }
    else if(verificasao1 == (int)verificasao1){
        if(numero1 != 1){
        numero1 = verificasao1;
        divisivel = 7;
    }
    }
    else if(verificasao2 == (int)verificasao2){
        if(numero2 != 1){
        numero2 = verificasao2;
        divisivel = 7;
    }
    }
    else{
    verificasao1 = numero1 / 11;
    verificasao2 = numero2 / 11;
    if (verificasao1 == (int)verificasao1 && verificasao2 == (int)verificasao2){
        if(numero1 != 1 && numero2 != 1){
        numero1 = verificasao1;
        numero2 = verificasao2;
        divisivel = 11;
    }
    }
    else if(verificasao1 == (int)verificasao1){
        if(numero1 != 1){
        numero1 = verificasao1;
        divisivel = 11;
    }
    }
    else if(verificasao2 == (int)verificasao2){
        if(numero2 != 1){
        numero2 = verificasao2;
        divisivel = 11;
    }
    }
    else{
    verificasao1 = numero1 / 13;
    verificasao2 = numero2 / 13;
    if (verificasao1 == (int)verificasao1 && verificasao2 == (int)verificasao2){
        if(numero1 != 1 && numero2 != 1){
        numero1 = verificasao1;
        numero2 = verificasao2;
        divisivel = 13;
    }
    }
    else if(verificasao1 == (int)verificasao1){
        if(numero1 != 1){
        numero1 = verificasao1;
        divisivel = 13;
    }
    }
    else if(verificasao2 == (int)verificasao2){
        if(numero2 != 1){
        numero2 = verificasao2;
        divisivel = 13;
    }
    }
    else{
        verificasao1 = numero1 / 17;
    verificasao2 = numero2 / 17;
    if (verificasao1 == (int)verificasao1 && verificasao2 == (int)verificasao2){
        if(numero1 != 1 && numero2 != 1){
        numero1 = verificasao1;
        numero2 = verificasao2;
        divisivel = 17;
    }
    }
    else if(verificasao1 == (int)verificasao1){
        if(numero1 != 1){
        numero1 = verificasao1;
        divisivel = 17;
    }
    }
    else if(verificasao2 == (int)verificasao2){
        if(numero2 != 1){
        numero2 = verificasao2;
        divisivel = 17;
    }
    }
    else{
        verificasao1 = numero1 / 23;
    verificasao2 = numero2 / 23;
    if (verificasao1 == (int)verificasao1 && verificasao2 == (int)verificasao2){
        if(numero1 != 1 && numero2 != 1){
        numero1 = verificasao1;
        numero2 = verificasao2;
        divisivel = 23;
    }
    }
    else if(verificasao1 == (int)verificasao1){
        if(numero1 != 1){
        numero1 = verificasao1;
        divisivel = 23;
    }
    }
    else if(verificasao2 == (int)verificasao2){
        if(numero2 != 1){
        numero2 = verificasao2;
        divisivel = 23;
    }
    }
    else{
        verificasao1 = numero1 / 29;
    verificasao2 = numero2 / 29;
    if (verificasao1 == (int)verificasao1 && verificasao2 == (int)verificasao2){
        if(numero1 != 1 && numero2 != 1){
        numero1 = verificasao1;
        numero2 = verificasao2;
        divisivel = 29;
    }
    }
    else if(verificasao1 == (int)verificasao1){
        if(numero1 != 1){
        numero1 = verificasao1;
        divisivel = 29;
    }
    }
    else if(verificasao2 == (int)verificasao2){
        if(numero2 != 1){
        numero2 = verificasao2;
        divisivel = 29;
    }
    }
    else{
        verificasao1 = numero1 / 31;
    verificasao2 = numero2 / 31;
    if (verificasao1 == (int)verificasao1 && verificasao2 == (int)verificasao2){
        if(numero1 != 1 && numero2 != 1){
        numero1 = verificasao1;
        numero2 = verificasao2;
        divisivel = 31;
    }
    }
    else if(verificasao1 == (int)verificasao1){
        if(numero1 != 1){
        numero1 = verificasao1;
        divisivel = 31;
    }
    }
    else if(verificasao2 == (int)verificasao2){
        if(numero2 != 1){
        numero2 = verificasao2;
        divisivel = 31;
    }
    }
    else{
        verificasao1 = numero1 / numero1;
        verificasao2 = numero2 / numero1;
        if (verificasao1 == (int)verificasao1 && verificasao2 == (int)verificasao2){
        if(numero1 != 1 && numero2 != 1){
        numero1 = verificasao1;
        numero2 = verificasao2;
        divisivel = numero1;
    }
}
    else if(verificasao1 == (int)verificasao1){
        if(numero1 != 1){
        numero1 = verificasao1;
        divisivel = numero1;
    }
    }
    else if(verificasao2 == (int)verificasao2){
        if(numero2 != 1){
        numero2 = verificasao2;
        divisivel = numero1;
    }
    }
    else{
        verificasao1 = numero1 / numero2;
        verificasao2 = numero2 / numero2;
        if (verificasao1 == (int)verificasao1 && verificasao2 == (int)verificasao2){
        if(numero1 != 1 && numero2 != 1){
        numero1 = verificasao1;
        numero2 = verificasao2;
        divisivel = numero2;
    }
    }
    else if(verificasao1 == (int)verificasao1){
        if(numero1 != 1){
        numero1 = verificasao1;
        divisivel = numero1;
    }
    }
    else if(verificasao2 == (int)verificasao2){
        if(numero2 != 1){
        numero2 = verificasao2;
        divisivel = numero2;
    }
    }
    }
    }
    }
    }
    }
    }
    }
    }
    }
    }
    }
    numero11 = numero1;
    numero22 = numero2;
}
    for (int x = 0; x < 50; x++){
        if (divisivel[x] == 1){
            break;
        }
        if (x == 0){
            mmc = divisivel[x];
        }
        else if (x == 1){
            mmc = mmc * divisivel[x];
        }
        else{
            mmc = mmc * divisivel[x];
        }
        std::cout << numero11[x] << ", " << numero22[x] << " | " << divisivel[x] << std::endl;
    }
    std::cout << "MMC = " << mmc;
    }

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...