FAQ sobre submissões ao mooshak


Respostas a algumas questões frequentes.
Browse the glossary using this index

Special | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | ALL

Page:  1  2  (Next)
  ALL

C

Question:

Compile Time Error

(Last edited: sexta, 6 março 2009, 2:36 )
Answer:

Veja se a mensagem é algo como esta:

javac: file not found: poo/Main.java
Usage: javac 
use -help for a list of possible options

Se sim, o problema é que o java não consegue encontrar o ficheiro Main.java dentro do arquivo que submeteu ao mooshak. Normalmente, isso acontece quando nos esquecemos de que devemos zipar o directório poo, com o Main.java lá dentro.

Se não existir um Main.java, ou se esse ficheiro não estiver dentro de um directório chamado poo, o mooshak não o encontra.

Entry link: Compile Time Error

G

Question:

Guião 1, tarefa C: Qual é mesmo o formato que se está a pedir?

(Last edited: quarta, 4 março 2009, 10:52 )
Answer:

Há um exemplo no enunciado, quando o quadro de honra está preenchido com 10 entradas. Repare que temos a nota, seguida de um tab (\t), seguido do número do aluno, seguido de \n, em todas as linhas, incluindo a última.

Vamos ver o que acontece se o quadro de honra tiver, por exemplo, apenas duas entradas:

19 23534
18 29432

Tal e qual como no caso do quadro cheio, mas com menos linhas, portanto.

E se nenhum aluno entra no quadro de honra? Nesse caso, devolvemos apenas uma linha, com 10 sinais menos, seguidos de \n.
Ou seja:
"----------\n"
Entry link: Guião 1, tarefa C: Qual é mesmo o formato que se está a pedir?

Question:

Guião 2, task A: funcionalidades a verificar?

(Last edited: segunda, 16 março 2009, 11:35 )
Answer:
Quando os argumentos dos métodos são referências a objectos, considerar na programação o caso em que a referência é null.
Os diversos métodos de Music funcionam bem para objectos criados com o construtor mais simples?

Entry link: Guião 2, task A: funcionalidades a verificar?

Question:

Guião 2, task A: p/ o método equals de Music, é exigido implementar tb hashCode?

(Last edited: segunda, 16 março 2009, 10:08 )
Answer:
Não, os métodos a implementar são unicamente os especificados no guião 2 (ver anexo no fim) e hashCode não é um deles. Porém, é essencial implementar todos os membros externos de Music, incluindo as constantes.
Entry link: Guião 2, task A: p/ o método equals de Music, é exigido implementar tb hashCode?

Question:

Guião 2, task A: posso colocar mais instruções no construtor + simples de Music?

(Last edited: terça, 17 março 2009, 3:16 )
Answer:
Sim.
Entry link: Guião 2, task A: posso colocar mais instruções no construtor + simples de Music?

Question:

Guião 2, task A: qual deve ser valor de rating no construtor com 1 argumento?

(Last edited: segunda, 16 março 2009, 11:09 )
Answer:
Deve encontrar-se dentro dos limites especificados: 1-5 inclusive. Pode ser qualquer valor nesse intervalo.
Entry link: Guião 2, task A: qual deve ser valor de rating no construtor com 1 argumento?

Question:

Guião 2, task A: qual é o valor que deve ter o campo artist no construtor + simples de Music?

(Last edited: terça, 17 março 2009, 3:17 )
Answer:
null
Entry link: Guião 2, task A: qual é o valor que deve ter o campo artist no construtor + simples de Music?

Question:

Guião 2, task C: podemos alterar a classe AbstractIterator?

(Last edited: terça, 17 março 2009, 6:11 )
Answer:
Só as partes internas, como o nome do campo _playList. Todos os membros visíveis externamente (i.e., que fazem parte da interface da classe) têm de permanecer como estão, caso contrário surgem erros de compilação no mooshak.
Também é permitido acrescentar membros à classe, tal como é permitido acrescentar classes vossas e mais métodos às classes especificadas. O importante é que as classes e métodos especificados existam com a interface exactamente como especificado (senão ocorrem erros de compilação) e se comportem também como especificado (senão falham nos testes).
Entry link: Guião 2, task C: podemos alterar a classe AbstractIterator?

Question:

Guião 2, tasks A e B: posso submeter para a task B sem ter Accepted na A?

(Last edited: segunda, 16 março 2009, 11:38 )
Answer:
Não. Os testes sobre a funcionalidade de Music são executados também na task B. Se falham na task A, também vão falhar na B. É assim em todas as tasks: os testes das tasks anteriores são executados nas seguintes.
Entry link: Guião 2, tasks A e B: posso submeter para a task B sem ter Accepted na A?

Question:

Guião xpto, qualquer task: Tenho um runtime error (NoClassDefFoundError). O que se passa?

(Last edited: quinta, 5 março 2009, 12:40 )
Answer:

O mooshak permite ver o relatório do erro. Veja se a mensagem é algo deste género. Pode parecer assustadora, mas vamos tentar perceber o que se passa.
(test T4): Exception in thread "main" java.lang.NoClassDefFoundError: poo/Main
Caused by: java.lang.ClassNotFoundException: poo.Main
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
while executing "close $fd "OK
O java não está a conseguir encontrar a classe Main, dentro de um package chamado poo, como se pode ler em:
Exception in thread "main" java.lang.NoClassDefFoundError: poo/Main
Caused by: java.lang.ClassNotFoundException: poo.Main 

Abra o arquivo zip que acabou de submeter. Lá dentro, deve ter um directório chamado poo (o package) e dentro desse package, entre outras classes, deverá existir uma classe chamada Main, onde está o método main.

O mais provável é que algo na descrição do parágrafo anterior não esteja a acontecer no seu zip.

Entry link: Guião xpto, qualquer task: Tenho um runtime error (NoClassDefFoundError). O que se passa?


Page:  1  2  (Next)
  ALL