Académique Documents
Professionnel Documents
Culture Documents
Curso: _____________________________
Disciplina: ____________________________
Professor(a):
______________________________________________
PROVA: ____ - DATA: ___/____/______
_____________
TURMA: _________
Soluo comentada:
Muitos dos problemas em computao podem ser reduzidos a uma forma de
"busca", onde o computador gera todas as combinaes possveis at se
encontrar a soluo desejada.
Para esse problema, como podemos gerar todas as solues?
Basicamente, precisamos definir 3 coisas:
1. Incio: qual o primeiro candidado a soluo a ser testado?
2. Fim: a partir de que valor no mais necessrio procurar a soluo?
3. Incremento: como gerar a prxima soluo a ser testada.
Nesse caso, como os nmeros so positivos, a primeria soluo a ser testada
seria 1*2*3. A segunda seria 2*3*4, e assim por diante. Caso o produto for
igual ao nmero que desejamos testar, ento encontramos a soluo, e a
resposta seria positiva. Quando o produto se torna maior que o nmero
desejado, sabemos que o nmero no pode ser perfeito, e podemos encerrar a
busca. Vejamos um programa que faz isso:
#include
#include
int
{
main
cont,
num;
com
um
nmero:
");
scanf("%d",
&num);
for
(cont=1;
num
<
cont*(cont+1)*(cont+2);
cont++);
/*
veja
que
o
for
executa
um
comando
vazio
*/
if
(cont*(cont+1)*(cont+2)
==
num)
printf("O
numero
%d
e
perfeito\n");
else
printf("O
numero
%d
nao
e
perfeito\n");
system("pause");
return
0;
printf("Entre
int
<stdio.h>
<stdlib.h>
()
TURMA: _________
/*
Verificando se o Nmero Par ou Impar.
*/
TURMA: _________
TURMA: _________