
Polinômios: divisão e dispositivo de Briot-Ruffini
Atividade 11 questões 50 min
(EM13MAT315) Investigar e registrar, por meio de um fluxograma, quando possível, um algoritmo que resolve um problema.
Um programa procura um nome em uma lista de 1.000 nomes em ordem alfabética usando a busca binária: compara o nome procurado com o do meio da lista e, conforme o resultado, descarta a metade em que ele não pode estar, repetindo o processo na metade restante.
O número máximo de comparações necessárias para encontrar o nome (ou concluir que ele não está na lista) é:
Para enviar mensagens secretas, um grupo troca cada letra por sua posição no alfabeto (A = 1, B = 2, ..., Z = 26) e agrupa os números em pares (x, y). Cada par é codificado multiplicando-se a matriz C, de linhas (2, 1) e (1, 1), pela coluna formada por x e y.
a) Codifique a palavra MA (M = 13, A = 1).
b) A inversa de C é a matriz de linhas (1, −1) e (−1, 2). Verifique que C · C⁻¹ é a identidade.
c) Uma mensagem codificada chegou como (27, 14). Decodifique-a e explique por que a matriz usada precisa ter inversa.
O algoritmo de Euclides calcula o máximo divisor comum (mdc) de dois números naturais a e b, com a > b > 0, pelos passos:
1. Divida a por b e obtenha o resto r.
2. Se r = 0, o mdc é b; fim.
3. Caso contrário, faça a ← b e b ← r e volte ao passo 1.
Executando o algoritmo com a = 84 e b = 36, a quantidade de divisões feitas e o resultado obtido são:
Uma companhia de saneamento (valores fictícios) cobra: R$ 40,00 fixos para consumo de até 10 m³; R$ 5,00 por m³ excedente entre 10 e 20 m³; e R$ 8,00 por m³ excedente acima de 20 m³.
a) Escreva um algoritmo, em pseudocódigo ou em uma linguagem de programação, que leia o consumo c (em m³) e escreva o valor da conta.
b) Faça o teste de mesa do seu algoritmo para c = 7, c = 15 e c = 25.
c) Explique por que, no seu algoritmo, a ordem das condições é importante.
Fonte: Base Nacional Comum Curricular (MEC). Base de dados: bncc.dev, mantido pela Profy, licença CC BY 4.0.