Patrícia, O programa abaixo não mostra num applet, mas está funcionando.
Waldomiro. ------------------------------------------------------------------- import javax.swing.JOptionPane; public class Perfeitos { public static void main( String args[] ) { String msg=""; for (int num=1; num<=1000; num++) { int sum=0; for(int i=1; i<=num-1; i++) if (num%i==0) sum+=i; if (num == sum) { msg += "\n" + num + " eh um inteiro perfeito. Fatores: "; for(int i=1; i<=num-1; i++) if (num%i==0) msg += i + " "; } } JOptionPane.showMessageDialog( null, msg, "Resultado", JOptionPane.PLAIN_MESSAGE ); System.exit( 0 ); } } -----Mensagem original----- De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] Enviada em: domingo, 21 de outubro de 2001 13:50 Para: [EMAIL PROTECTED] Assunto: [java-list] Dúvida URGENTE!!!!!!!!! oi , estou precisando de uma ajudinha , se for possível !!! É o seguinte , preciso resolver o seguinte exercício : Diz - se que um número inteiro é um número perfeito , se a soma de seus fatores , incluindo o 1 é igual ao próprio número . Por exemplo , 6 é um número perfeito , porque 6=1+2+3 . Escreva um método perfect que determina se seu parâmetro number é um número perfeito . Utilize esse método em um applet que determina e exibe todos os números perfeitos entre 1 a 1000 . exiba , para cada número seus fatores . O resultado deve ser mostrado em JTextArea. O problema é o seguinte , consegui o algoritimo em VBScript , mas não sei passar p/ Java . e não sei o que é um método perfect !!!! Aqui vai o algoritimo em VBScript: for x=1 to 1000 if perfect(x) then Msgbox X&"é um numero perfeito end if next function prfect(numero) dim numero_primo dim quociente dim soma_divisor soma_divisor=2 numero_primo=0 quociente=numero do while quociente>1 if(quocienteMODnumero_primo=0)them quociente=quociente/numero_primo soma_divisor=soma_divisor+numero_primo else numero_primo=BuscaProximoNumeroPrimo(numero_primo) end if loop soma_divisor=soma_divisor+1 if clng(soma_divisor)=clng(numero)then perfect=true else perfect=false end if end function function BuscaProximoNumeroPrimo(numero_primo_inicial) dim prox_numero_primo dim k dim qtd_divisoes dim_eh_primo eh_primo=false prox_numero_primo=numero_primo_inicial+1 do while eh_primo=false qtd_divisoes=0 for k=1 to prox_numero_primo if prox_numero_primoMODk=0 then qtd_divisoes=qtd_divisoes+1 end if next 'se houver apenas duas divisoes , significa que o numerofoi dividido 'apenas por 1 e por ele mesmo , logo ele é primo ifqtd_divisoes=2 then BuscaProximoNumeroPrimo=prox_numero_primo eh_primo=true else 'se não for primo , testar o próximo numero prox_numero_primo =prox_numero_primo+1 end if loop end function Por favor me responda , caso vc não possa me ajudar e conheça alguém que possa me fale , desde já agradeço ! Patricia!!! ------------------------------------------------------ Esta mensagem foi enviada usando o WebMail Canbras.Net http://www.canbrasnet.com.br ------------------------------ LISTA SOUJAVA ---------------------------- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] ------------------------------------------------------------------------ - ------------------------------ LISTA SOUJAVA ---------------------------- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] -------------------------------------------------------------------------