Budasan 0 Denunciar post Postado Abril 2, 2008 Pessoal, to com um programa que verifica se o numero é perfeito, fiz ele mas ta com algum problema na logica, o programa que eu escrevi foi esse: #include <stdio.h> int main() { int num, soma=0, i, t; printf("Numero a ser analisado:"); scanf("%d", &num); do { for (i=1; i<num; i++) if (num%i==0) soma=soma+i; scanf("%d", &num); if (soma==num) printf("O numero %d e perfeito." , num); if (soma<=num) printf("A soma dos divisores, %d, e menor do que o numero %d", soma, num); if(soma>=num) printf("A soma dos divisores, %d, e maior do que o numero %d", soma, num); } while (num>=0); scanf("d", &t); return 0; }Alguma Sugestao???? Compartilhar este post Link para o post Compartilhar em outros sites
Budasan 0 Denunciar post Postado Abril 2, 2008 achei um dos erros mas os outros ainda persistem, o primeiro numero que eu coloco o programa num le, o segundo funciona corretamente, o terceiro da problema na soma dos divisores ps um numero perfeito eh aquele que a soma dos divisores da ele mesmo, por exemplo, 6=1 + 2 +3, 28 e 496 tb sao o progrmama parcial ta assim: #include <stdio.h> int main() { int num, soma=0, i; printf("Numero a ser analisado:"); scanf("%d", &num); do { for (i=1; i<num; i++) if (num%i==0) soma=soma+i; scanf("%d", &num); if (soma==num) printf("O numero %d e perfeito." , num); if (soma<num) printf("A soma dos divisores, %d, e menor do que o numero %d", soma, num); if(soma>num) printf("A soma dos divisores, %d, e maior do que o numero %d", soma, num); } while (num>=0); return 0; } Compartilhar este post Link para o post Compartilhar em outros sites
Budasan 0 Denunciar post Postado Abril 2, 2008 consegui resolver, achei o erro, vlw pessoal #include <stdio.h> int main() { int num, soma, i; printf("Numero a ser analisado:"); do { scanf("%d", &num); soma=0; for (i=1; i<num; i++) if (num%i==0) soma=soma+i; if (soma==num) printf("O numero %d e perfeito." , num); if (soma<num) printf("A soma dos divisores, %d, e menor do que o numero %d", soma, num); if(soma>num) printf("A soma dos divisores, %d, e maior do que o numero %d", soma, num); } while (num>=0); return 0; } Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Abril 2, 2008 nossa é isso ae! tem q tentar http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites