Pessoal ai vai o critério de correção da segunda questão. Usaremos os dois critérios abaixo: o primeiro fornece um limite superior para a nota dada em cada parte correta do programa (critério construtivo); o segundo dá uma tabela de erros que pretendemos descontar da nota. Também estamos propondo 1 Quantum = 0.5 (i.e. o descontos podem ser 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5 ...). Assim as possíveis notas na questão serão 0.0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5 ... Critério Construtivo: Este critério é baseado na hipótese de que o aluno fez toda a questão. Se o aluno escreve um monte de comandos sintaticamente corretos, mas não tem `nada' a haver com o problema a nota da questão é zero. 1. Sintaxe em geral: vale 0.5 ponto 2. Contagem do número de digitos: vale 1.0 ponto 3. Quebra do número em duas metades + resposta: vale 1.0 ponto 3.1 Calculo da potencia: (vale 0.5 ponto) Aceitamos o uso de pow? Alguns professores permitiram o uso do math.h nesta questão. Desta maneira achamos que não dá para tirar nota de quem usou o pow. 3.2 Obtenção das duas metades + resposta (vale 0.5 ponto) ------------------ Total: 2.5 pontos Critério destrutitivo: Este critério é baseado na hipótese de que o aluno fez toda a questão. Se o aluno escreve um monte de comando sintaticamente corretos, mas não tem `nada' a haver com o problema a nota da questão é zero. -1: Só escreveu abobrinha. Desconto: 2.5 pontos ;-) 0. Nos daremos o direito de eventualmente descontar 2.5 pontos ;-) para questões incompletas (faltando pedaço, não terminou). (Se a questão estiver imcompleta, mas o que estiver lá estiver correto podemos pensar no caso). 1. Solução do tipo pot = 1; edobrado = 0; while (n % pot < = n / pot && edobrado == 0) if (n % pot == n / pot) edobrado = 1; else pot = pot * 10; Desconto: 0.5 ponto. 2. conta o número de digitos de n com erro de +- 1. Desconto: 0.5 ponto 3. A princípio não pretendemos descontar nota por erro de sintaxe. Entretanto se o erro se repetir consistentemente o desconto será de 0.5 ponto. 4. Leitura do número de digitos de n (isto não é dado de entrada). Desconto: 1.0 ponto. (Neste caso o aluno não fez a contagem do número de digitos que vale 1.0 ponto pelo critério construtivo.) 5. Calculo da potência usando pow. Não descontaremos nada, a menos que o aluno não tenha declarado o tal do math.h (neste caso descontaremos 1 Quantum = 0.5 ponto). 6. Fez a pontência da mesma maneira que em basic (?), (10^d) ou calculou a potência de maneira errada. Desconto: 0.5 ponto. 7. Tem algum while entrando em loop. Desconto -0.5 (se for fácil de consertar) e até 1.0 ponto dependendo de qual parte da solução está o loop. 8. Destrói o valor de n (que precisa ser usado mais tarde). Desconto: 0.5 ponto 9. Não descontaremos nada de erros que sejam claramente tipográficos. Por exemplo, ao invés de escrever divisor = divisor * 10 ; o aluninho escreveu divisor = divisor + 10 ; 10. Variável usada sem ter sido inicializada. Desconto: 0.5 ponto. 11. Leu a primeira metade do numero e depois a segunda metade e depois comparou as duas metades *corretamente*. Desconto: 5 Quanta = 2.5 pontos. ;-) 100. Levamos mais do que 5 minutos para entender que raios que o programa esta fazendo. Desconto: 2.5 pontos ;-). Flavio, Reverbel, coelho