Números Perfeitos com Java
Publicado por Alan Teixeira 30/12/2007
[ Hits: 18.400 ]
Homepage: NULL
Download NumerosPerfeitos2.java
É um script simples que foi usado no meu trabalho semestral.
Encontra números perfeitos, dado como parâmetro um vetor.
// Programa que encontra numeros perfeitos em java dado uma lista como parametro
// Autor: Alan Santos Teixeira
// email: astdarkness@yahoo.com.br >Astdarkness<
// Descrição: Número perfeito é um número natural cuja soma de seus divisores próprios
//(excluído o próprio número) coincide com o número.
// Exemplo:
// Numeros Perfeitos: 6,28,496,
// 6 ==> 1+2+3=6
// 28 ==> 1+2+4+7+14=28
// 496 ==> 1+2+4+8+16+31+62+124+248=496
public class NumerosPerfeitos2{
public static int[] NumPerfect(int[] lista){
// Função que retorna um array de numeros perfeitos
int elemento, soma, cont;
int resposta[]=new int[lista.length]; //array que armazena a resposta temporaria
int total[]; // array que armazena a resposta final
cont=0; // contador responsavel pelo indice do array resposta adicionando o numero
//na posicao e tambem responsavel pela quantidade de numeros perfeitos achados
for (int i=0; i < lista.length ; i++) {
soma = 0;
// pega o elemento da lista passada como parametro
elemento=lista[i];
for (int j=1 ; j < elemento ; ++j)
// acha os divisores próprios excluido-se o próprio numero
if ( (elemento % j) == 0) soma += j;
// verifica se a soma dos divisores próprios e igual ao numero da lista
if (soma == elemento)
// adiciona no array temporario de o valor coincide
resposta[cont++]=elemento;
}
total=new int[cont]; // cria um novo vetor para receber apenas os elementos encontrados
for(int z=0; z< cont; z++){
total[z]=resposta[z];
}
return total; //retorna o novo vetor com os numeros perfeitos
}
public static void main(String args[]){
//Testa a funcao
int list[]={33550336,28,7,5,6,496,51,8128};
int vet[];
vet= NumPerfect(list) ;
for(int i=0; i< vet.length; i++){
System.out.println(vet[i] + "\t");
}
}
}
Nenhum comentário foi encontrado.
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Instalando COSMIC no Linux Mint
Turbinando o Linux Mint: o poder das Nemo Actions
Inteligência Artificial no desenvolvimento de software: quando começar a usar?
[Resolvido] Algo deu errado ao abrir seu perfil
Usando o VNSTAT para medir o seu consumo de internet
Habilitando clipboard manager no ambiente COSMIC
Não estou conseguindo fazer funcionar meu Postfix na versão 2.4 no Deb... (1)
Quando vocês pararam de testar distros? (6)
A fórmula da coca-cola foi decompilada e agora é opensource! (4)









