Mínimo Multiplo Comum
Publicado por saymon castro de souza 05/11/2007
[ Hits: 9.807 ]
Senhores, segue o código fonte de um programa em C que resolve o cálculo do MMC.
#include<stdio.h>
#define tam 15
/*
Versão 1.0
Feito por:
Saymon Castro
Desenvolvido em linguagem c
*/
/*assinatura das funções*/
int prox_primo(int a);
int main(){
int qtde, i, primo=2, k=0, j, aux;
int qt_um=1;
printf("Digite a qtde de numeros: ");
scanf("%d",&qtde);
int mat[tam][qtde+1];
for(i=0;i<tam;i++){
for(j=0;j<=qtde;j++)
mat[i][j] = 0;
}
for(i=0;i<qtde;i++){
printf("\nNumero MMC: ");
scanf("%d",&mat[0][i]);
}
i = 0;
while(qt_um < qtde){
aux = 1;
while(aux != 0){
aux = 0;
for(j=0;j<qtde;j++){
if ((mat[i][j] % primo) == 0){
mat[i+1][j] = (mat[i][j] / primo);
mat[i][qtde] = primo;
aux++;
}
else
mat[i+1][j] = mat[i][j];
}
if (aux == 0)
i--;
i++;
}
primo = prox_primo(primo);
for(j=0;j<qtde;j++)
if(mat[i][j] == 1)
qt_um++;
else
qt_um = 1;
}
/*imprimindo a matriz*/
for(i=0;i<tam;i++){
printf("\n\n");
for(j=0;j<=qtde;j++)
printf("%d\t",mat[i][j]);
}
int mmc = mat[0][qtde];
printf("\n\n");
printf("%d",mat[0][qtde]);
for(i=1;mat[i][qtde]!=0;i++){
mmc *= mat[i][qtde];
printf(" x %d",mat[i][qtde]);
}
printf(" = %d\n\n",mmc);
system("pause"); /*se for no linux comente esta linha*/
}
int prox_primo(int a){
int i, k=1;
while(k>0){
k=0;
a++;
for(i=2;i<a;i++){
if((a % i) == 0)
k++;
}
}
return a;
}
Nenhum comentário foi encontrado.
KDE Plasma - porque pode ser a melhor opção de interface gráfica
Gentoo: detectando impressoras de rede e como fixar uma impressora por IP
Como o GNOME conseguiu o feito de ser preterido por outras interfaces gráficas
Por que sua empresa precisa de uma PKI (e como automatizar EMISSÕES de certificados via Web API)
Instalando NoMachine no Gentoo com Systemd (acesso Remoto em LAN)
Gentoo: Trocando wpa_supplicant pelo iwd no NetworkManager (Systemd)
Instalar Linux em notebook Sony Vaio VPCEG13EB (10)
Vou destruir sua infância:) (6)
Quando vocês pararam de testar distros? (24)









