le_entrada

Re: le_entrada

por Francisco Reverbel -
Número de respostas: 0
No primeiro caso (a: 3 2 1 3 3 3 1) não há motivo para não aceitar os três pares de números fornecidos. O polinômio lido deve ser

a(x) = 5x + 3x^3

Além desse ser o comportamento mais lógico, é também o mais fácil de implementar. Basta ir somando todos os monômios correspondentes aos pares fornecidos na entrada, considerando que a quantidade total de pares é o número que vem logo depois do ":" (3, no caso acima).

No segundo caso (b: 2 0 2 3 1 2 2) apenas os dois primeiros pares de números devem ser levados em conta, pois a quantidade de pares especificada é 2. O fato do par 0 2 não gerar um célula (pois o termo correspondente é nulo) não é motivo para pular esse par. O polinômio lido deve ser

b(x) = 3x

e o resto da linha (o par 2 2) deve ser descartado. Alternativamente, você poderia considerar que a linha toda é inválida, pois ela tem pares demais. Eu acho melhor e mais simples olhar só para a quantidade de pares especificada e ignorar o resto da linha. O fato do resto da linha ser ignorado pode até ser uma característica desejável, pois permite que os usuários façam comentários:

p: 3 1 2 3 4 5 6 ... p(x) é blá, blá, blá...