
Repetições dentro de repetições: laços aninhados
Atividade 9 questões 50 min
14 materiais e 111 questões sobre algoritmos, com gabarito comentado.

Atividade 9 questões 50 min

Prova 11 questões 60 min

Prova 8 questões 45 min

Atividade 10 questões 50 min

Atividade 8 questões 40 min

Atividade 11 questões 50 min

Atividade 11 questões 50 min

Prova 12 questões 55 min

Atividade 10 questões 50 min

Prova 10 questões 50 min
Uma função de ordenação genérica recebe uma lista e uma segunda função, chamada chave, que diz qual informação de cada item deve ser comparada:
função idade(p):
devolva p.idade
alunos ← [(Ana, 17), (Bia, 15), (Caio, 16)]
escreva ordenar(alunos, chave = idade)
A lista escrita e a vantagem desse tipo de função são
Para verificar se há nomes repetidos em uma lista de n nomes, um algoritmo compara cada nome com todos os que vêm depois dele:
para i de 1 até n − 1 faça
para j de i + 1 até n faça
se nome[i] = nome[j] então
escreva "há repetição"
Para uma lista com 1 000 nomes, o número de comparações feitas e o comportamento do tempo de execução quando a lista dobra de tamanho são
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) é: