Números Perfeitos com Java
Publicado por Alan Teixeira 30/12/2007
[ Hits: 18.412 ]
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");
}
}
}
Exemplo de POO usando conceitos de calorimetria em Java
Funções matemáticas no plano cartesiano
Nenhum comentário foi encontrado.
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
Gentoo binário em 2026: UEFI, LUKS, Btrfs e Systemd
Trabalhando Nativamente com Logs no Linux
Jogando Daikatana (Steam) com Patch 1.3 via Luxtorpeda no Linux
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)
Vou destruir sua infância:) (6)
Quando vocês pararam de testar distros? (24)
O que houve com slackware ??? (12)









