Mensagens enviadas por: RafaelVS
Índice dos Fóruns » Perfil de RafaelVS » Mensagens enviadas por RafaelVS
Autor Mensagem
Cássio, do jeito que você fez, você está somando de 1 a 500, ou seja, tanto os ímpares quanto os pares.

Para somar apenas os números pares, o padrão é o seguinte:

1) 2 + 500 = 502
2) 4 + 498 = 502
3) 6 + 496 = 502
.
.
.
125) 250 + 252 = 502

Então, há 125 somas de 502; logo, para achar a soma dos números pares, basta fazer 125 * 502 = 62750.


Porém, essa solução é bem matemática e acho que o que o javahelp precisa é de uma solução lógica de programação. Assim sendo, a classe que o sergiotaborda colocou resolve o problema dele.
Se for o caso de vc não poder usar if, vc pode fazer assim:

se vc for em http://www.altabooks.com.br/downloads.asp vai ver uma lista de livros e, entre eles, está o "Certificação Sun para Programador Java 5"

Tem 2 opções de download, é só escolher uma e boa sorte.

obs.: se preferir, aqui está o link direto para o download (pelo menos no momento em que escrevo): ftp://200.211.214.2/MasterExame_Livro_SJCP_310-055.zip
Victor,

o problema é que essa questão é independente de código (ou seja, na prova, por exemplo, não teria trecho de código para analisarmos)... a pergunta seria somente isso:

"Se a expressão1 for avaliada como false e a expressão2 é tal que retorna algum valor (ou seja, não chama um método cujo retorno é void), em tempo de execução será lançada uma AssertionError?"

Como mostrei, a resposta para isso seria "Depende da expressão2", porém, como muitos livros vêm ensinando, sem pensar em um caso como esse, a resposta seria "lança AssertionError". Portanto, fico com medo de em um caso como esse eu responder "Depende" e o gabarito ser "lança AssertionError"
Pois então, segundo o material que a gente estuda em qualquer livro, inclusive o da Kathy, sobre Assertions, a resposta seria essa que vocês falaram. Porém, pensei em uma situação onde isso não acontece:



Se vocês rodarem esse código, vai ser exibido no console:



Ou seja, a expressão1 foi avaliada como false, a expressão2 retorna valor (para o compilador), porém, em tempo de execução, não foi lançado AssertionError. Se ao invés de tratarmos Exception, declarássemos que o main lança Exception, o programa abortaria lançando Exception (e não AssertionError, como muitos livros ensinam).

Por isso, gostaria de saber se a resposta de uma questão como essa, do ponto de vista da prova (pois já mostrei que na realidade isso não acontece), seria "É lançado AssertionError" ou "Depende da Expressão2 (pois se ela lançar exceção, AssertionError não vai ser lançada)"
Só um detalhe: eu coloquei o código acima apenas pra facilitar no entendimento da pergunta. Mas pra ficar mais difícil, a pergunta poderia ser assim:

P. Assumindo que um trecho de código foi compilado e executado habilitando assertions, em uma linha onde temos



se a expressão1 for avaliada como false e a expressão2 é tal que retorna algum valor (ou seja, não chama um método cujo retorno é void), em tempo de execução será lançada uma AssertionError?
Galera,

Quando estou estudando para a certificação, fico imaginando várias possibilidades de coisas estranhas que podem acontecer e talvez cair na prova.

Essa questão eu mesmo elaborei e fiquei em dúvida sobre qual resposta deveria ser a correta do ponto de vista da prova:

P: Assuma que o seguinte trecho de código foi compilado e executado habilitando assertions (texto típico da maioria das questões sobre Assertions hehe):



Se a expressão1 é avaliada como false e a expressão2 é tal que retorna algum valor (ou seja, não chama um método cujo retorno é void), em tempo de execução será lançada uma AssertionError?

(antes de dar a minha resposta, gostaria de saber qual resposta vocês dariam a uma questão como essa)

Parabéns!

Liguei hoje para a Sun para comprar o Voucher. Pretendo fazer a prova assim que chegar o Voucher (acho q na 3a. semana de Julho) e, em breve, espero estar abrindo meu topico "Passei com XX%" e comentar como foi a prova com vocês.
ok, então funcionada como um objeto qualquer... quando não há nenhuma referência, torna-se elegível ao GC.

valeu.
[]'s
Galera,

Sabemos que quando usamos um literal String, ele é armazenado em um lugar especial, um pool de constantes de String e que toda referência a String que recebe um mesmo literal, está apotando para o mesmo objeto String.

ex.:




O fato de ele ser guardado nesse "local especial" torna o tratamento do GC para literais de String diferente dos demais objetos? Ou seja, após eu dizer que s1 e s2 tem valor null e o literal "teste" não está sendo referenciado, ele não será elegível para o GC? Ou funciona da mesma maneira e ele será elegível?

[]'s
Uma das coisas que eu aprendi sobre Threads foi que não há especificação quanto à estratégia de escalonamento que a JVM deve utilizar... Assim sendo, se a JVM utiliza a estratégia de Time Slice (onde cada thread executa por um determinado período de tempo) poderia acontecer que no momento de rodar a linha (onde seria impresso "Main"), o escalonador trocaria para a thread que foi criada no construtor da classe A e então, rodaria seu método run() (exibindo "Worker" primeiro).

Já se a estratégia foi não preemptiva, então o que o sérgio falou estaria correto, pois a troca de Threads só ocorreria ou quando a Thread corrente terminasse ou quando o programador explicitasse isso (chamando yield ou sleep). Nesse caso, imprimindo "Main Worker".

Então, como há as duas possibilidades, acredito que a resposta correta seria a letra E, já que não seria possível determinar a saída correta.
aeee parabens!! \o/

caiu uma questao dessa sobre GC com inner nao? hehehe
acho que o thingol observou bem... tem 2 opções de resposta:

1. ou dá erro de compilação (se a questão original define a classe com "Class" ao invés de "class").
2. ou então apenas um objeto será serializado (e, no caso, não teria nenhuma resposta pra marcar).
hmmm blz...

vou comprar logo entao (a promocao ta valendo desde março e só agora a pouco que eu vim saber huahuhauh)

[]'s
geraldobarboza wrote:quando liga na SUN e passa os dados para aquisição do volcher ... demora para eles enviarem o email?

tipo.. liguei ontem cedo e nada ainda... e a promocao repeteco ta acabando hehehehehe

[]'s
Geraldo



Geraldo, vc sabe dizer se o preço sem promoção é R$330,00 ou se esse preço é apenas enquanto a promoção durar?
 
Índice dos Fóruns » Perfil de RafaelVS » Mensagens enviadas por RafaelVS
Ir para:   
Powered by JForum 2.1.8 © JForum Team