Código de programas

7 respostas
S

Alguém pode me arrumar o código dessas questões:

*Dizemos que um número inteiro é um número perfeito se a soma de seus fatores,
incluindo 1( mas não o próprio número), é igual ao número. Por exemplo, 6 é um
número perfeito porque 6 = 1 + 2 + 3. Escreva um método que determina se um
determinado número é um número perfeito.

*A série de Fibonacci inicia com 0 e 1 e tem a propriedade de que cada número de
Fibonacci subseqüente é a soma dos dois números que o precedem. Escreva um
método implemente esta série de forma recursiva.
A série de Fibonacci pode ser definida recursivamente como segue:
fibonacci(0) = 0
fibonacci(1) = 1
fibonacci(n) = fibonacci(n-1) + fibonacci(n-2)

7 Respostas

P

Olá, tudo bem?

Sempre que for postar algo aqui ou em outro fórum, evite usar termos “genéricos”, como “HELP-ME”, “AJUDA!”, “DÚVIDA” etc.

Procure ser mais objetivo. Escreva O QUE DE FATO ESTÁ ACONTECENDO, SINTETIZANDO.

Agindo assim as chances de ter suas dúvidas respondidas será maior :wink:

D

Samilu:
Alguém pode me arrumar o código dessas questões:

*Dizemos que um número inteiro é um número perfeito se a soma de seus fatores,
incluindo 1( mas não o próprio número), é igual ao número. Por exemplo, 6 é um
número perfeito porque 6 = 1 + 2 + 3. Escreva um método que determina se um
determinado número é um número perfeito.

*A série de Fibonacci inicia com 0 e 1 e tem a propriedade de que cada número de
Fibonacci subseqüente é a soma dos dois números que o precedem. Escreva um
método implemente esta série de forma recursiva.
A série de Fibonacci pode ser definida recursivamente como segue:
fibonacci(0) = 0
fibonacci(1) = 1
fibonacci(n) = fibonacci(n-1) + fibonacci(n-2)

Verifica se número é perfeito

/*-----------------------------------------------------------------------*/ /* Verifica se número é perfeito - algoritmo eficiente. */ /*-----------------------------------------------------------------------*/ public static boolean perfeito2(long numero) { long soma,i; double raiz = Math.sqrt(numero); /* Limite para o divisor */ soma = 1; /* 1 divide qualquer número */ for (i=2; i < raiz; ++i) /* Até antes da raiz quadrada */ if (numero % i == 0) /* Se divide número */ soma += i + numero/i; /* Soma divisor e quociente */ if (raiz == (int) raiz) /* Se raiz for inteira, ela */ soma += (int) raiz; /* precisa ser somada */ return numero == soma; /* True ou false */ }

Fibonacci
:arrow:http://www.guj.com.br/java.tutorial.artigo.132.1.guj

Um Abraço !

R

[size=18][/size]Tem esse codigo que eu criei que é bastante simples tb.

public String Perfeito(long numeroPerf){

int aux=0;

for (int i=1 ;i<numeroPerf;i++){

if (numeroPerf % i==0){

aux=i+aux;

}

}

if (aux==numeroPerf){

return “é Perfeito!;

}else

return não é Perfeito!;

}>
E

Dá uma pesquisada no Google e no wikipedia q tem esses códigos fontes prontos… tome cuidado aki no forum o pessoal normalmente nao curte fazer o dever de casa dos outros, tente fazer, conforme for dando erros ou duvidas vc vai postando q o pessoal responde.

Dá uma olhada aki tbm no busca do GUJ

http://www.guj.com.br/posts/list/44681.java
http://www.guj.com.br/posts/list/40444.java#215684

Aki tbm tem :
http://www.linhadecodigo.com.br/dicas.asp?id_dica=1165&sub=17
http://q.sitelevelsearch.com/query-ask.go?crid=4b4bcad34d12aeab&query=Fibonacci&slice_title=&page=1&sp=1
:smiley:

O

não é que o pessoal não curti fazer o dever de casa dos outros, é que isso é trabalho DELE, o mínimo que a pessoa devia fazer era tentar fazer e não ir direto para um forum com lição de casa dele…

mas eu não reclamo, afinal pra mim é otimo que ele não aprenda a programar… é um a menos no mercado de trabalho :slight_smile:

C

Vc so nao levou em conta o desperdicio de vida, dinheiro e tempo de todo mundo envolvido: familia, professores, quem poderia estar ocupando uma vaga em qualquer que seja o curso que o nosso amigo espertao ta fazendo…

S
import java.util.Scanner;

public class exercicio12 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		
		
		Scanner s = new Scanner(System.in);
		
		System.out.print("digite um numero inteiro: ");
		int i = s.nextInt(); // le um inteiro
		
		int nperfeito = 0;
		boolean Primo = true;
		
		for (int a = 2 ; a < i ; a++ ) {
										
				if (i % a == 0) {
							
					Primo = false;
					
					break;
					
				}else if (i % a != 0) {
					
					Primo = true;
					
					nperfeito = (int) (Math.pow (2,i) -1 * Math.pow(2,i) -1);
							
					// Notando que 2n − 1 é um número primo em cada uma destas instâncias, 
					// Euclides provou que a fórmula 2n−1(2n − 1) dá um número perfeito para
					// sempre que 2n − 1 é primo (Euclides, Prop. IX.36).
					
					
					break;
				}			
			}
		
		if (nperfeito >=0) {
		
		System.out.println("O numero " + i + " é numero perfeito ");
		
		}
				
		if (Primo == true){
			 
		System.out.println("O numero " + i + " é numero primo ");

		}else if (Primo == false)
			
		System.out.println("O numero " + i + " não é um numero primo ");

	 }
}
Criado 15 de maio de 2006
Ultima resposta 19 de nov. de 2011
Respostas 7
Participantes 8