Exercícios de lógica de programação com respostas

As 80 questões desta página são as perguntas de verificação do Curso de Lógica de Programação: uma de cada aula, na ordem do curso, com o mesmo pseudocódigo em português das aulas. Responda de cabeça antes de abrir o gabarito, porque a explicação mostra o raciocínio certo e indica a aula em que o assunto é ensinado.

Como usar: leia a pergunta, escolha a sua alternativa e só depois abra "Ver a resposta". Quando errar, a explicação diz por que e o link leva à aula que ensina o assunto. As mesmas questões aparecem nas aulas como teste rápido, e o Curso de Lógica de Programação é gratuito do começo ao fim.

Módulo 1: Bem-vindo ao mundo da lógica

Questão 1 · aula O que é lógica de programação, afinal

Qual frase define melhor a lógica de programação?

  1. A habilidade de decorar os comandos de uma linguagem famosa.
  2. A arte de transformar um problema em passos claros e ordenados que uma máquina consegue seguir.
  3. Um programa que corrige códigos automaticamente.
  4. Uma matéria de matemática avançada exclusiva de faculdade.
Ver a resposta

Resposta: B. A arte de transformar um problema em passos claros e ordenados que uma máquina consegue seguir.

Lógica de programação é raciocínio, não decoreba: quebrar problemas em passos claros, ordenados e sem ambiguidade. As linguagens são apenas formas diferentes de escrever esses passos.

Estudar a aula: O que é lógica de programação, afinal

Questão 2 · aula O computador é literal: ele faz o que você diz, não o que você quer

Um programa mostra "Olá, !" sem nome nenhum. O que provavelmente aconteceu?

  1. O computador decidiu pular o nome porque estava sem memória.
  2. As instruções mandaram mostrar a mensagem antes de perguntar o nome, e a máquina obedeceu.
  3. O computador não gosta de nomes acentuados.
  4. É um erro aleatório; rodando de novo, se corrige sozinho.
Ver a resposta

Resposta: B. As instruções mandaram mostrar a mensagem antes de perguntar o nome, e a máquina obedeceu.

O computador executa na ordem recebida. Se a mensagem vem antes da pergunta do nome, ele mostra a mensagem com o espaço vazio, sem estranhar. Reordenar as instruções resolve; esperar a máquina "perceber" não.

Estudar a aula: O computador é literal: ele faz o que você diz, não o que você quer

Questão 3 · aula O que é um algoritmo: a receita que sempre funciona

Qual das listas abaixo cumpre as três exigências de um algoritmo?

  1. Misture os ingredientes com carinho até a massa parecer feliz.
  2. Ferva 500 ml de água; adicione 2 colheres de pó; coe; sirva em 2 xícaras.
  3. Faça o necessário para o cliente ficar satisfeito.
  4. Repita a limpeza até alguém elogiar a casa.
Ver a resposta

Resposta: B. Ferva 500 ml de água; adicione 2 colheres de pó; coe; sirva em 2 xícaras.

A opção do café tem passos claros (quantidades exatas), ordem definida e fim garantido. As outras dependem de interpretação ou podem nunca terminar, o que reprova nos testes de clareza e de parada.

Estudar a aula: O que é um algoritmo: a receita que sempre funciona

Questão 4 · aula Você já executa algoritmos o dia inteiro

Na tarefa "lavar louça enquanto houver louça na pia", qual padrão de algoritmo predomina?

  1. Sequência simples: passos um após o outro, sem volta.
  2. Decisão: escolher entre dois caminhos e seguir em frente.
  3. Repetição: refazer um bloco de passos enquanto uma condição for verdadeira.
  4. Entrada de dados: receber informação de fora.
Ver a resposta

Resposta: C. Repetição: refazer um bloco de passos enquanto uma condição for verdadeira.

O bloco "lavar uma louça" se repete enquanto a condição "tem louça na pia" continuar verdadeira. É o padrão de repetição, que nos módulos 9 e 10 vira os laços ENQUANTO e PARA.

Estudar a aula: Você já executa algoritmos o dia inteiro

Questão 5 · aula Como estudar este curso (e por que ele tem jogos)

Por que os jogos e testes valem mais para a memória do que reler a aula?

  1. Porque são mais divertidos, e diversão é tudo que importa.
  2. Porque obrigam o cérebro a BUSCAR e APLICAR o conteúdo, e essa recuperação ativa é o que grava.
  3. Porque a releitura estraga a memória de longo prazo.
  4. Porque jogos valem nota e a leitura não.
Ver a resposta

Resposta: B. Porque obrigam o cérebro a BUSCAR e APLICAR o conteúdo, e essa recuperação ativa é o que grava.

O ganho vem da busca na memória: tentar lembrar e usar o conceito fortalece a gravação muito mais que revisitar o texto. Reler não estraga nada, só rende menos. A diversão ajuda na constância, mas o motor é a recuperação ativa.

Estudar a aula: Como estudar este curso (e por que ele tem jogos)

Módulo 2: Algoritmos, as receitas do computador

Questão 6 · aula Passo a passo sem ambiguidade: o fim do "depende"

O passo "prepare o lanche das crianças" está grande demais para um algoritmo. Qual é a correção certa?

  1. Escrever o passo em letras maiúsculas para dar ênfase.
  2. Quebrá-lo em passos menores, cada um com uma ação única e verificável.
  3. Adicionar "com capricho" para orientar o executor.
  4. Deixar como está, porque todo mundo sabe fazer lanche.
Ver a resposta

Resposta: B. Quebrá-lo em passos menores, cada um com uma ação única e verificável.

Passo grande é ambiguidade disfarçada: esconde dezenas de decisões que o executor teria que tomar sozinho. A correção é ajustar a granularidade: quebrar em ações únicas ("passe manteiga em 2 fatias de pão", "corte a maçã em 4 pedaços") até não sobrar decisão para o executor.

Estudar a aula: Passo a passo sem ambiguidade: o fim do "depende"

Questão 7 · aula Entrada, processamento e saída: o esqueleto de todo algoritmo

No aplicativo de rotas, qual das opções descreve o PROCESSAMENTO?

  1. A origem e o destino que a pessoa digita.
  2. O trajeto desenhado no mapa ao final.
  3. A comparação dos caminhos possíveis para escolher o mais rápido.
  4. O toque no botão de iniciar a navegação.
Ver a resposta

Resposta: C. A comparação dos caminhos possíveis para escolher o mais rápido.

Origem e destino são entradas; o trajeto no mapa é a saída. O processamento é o trabalho invisível entre os dois: comparar os caminhos possíveis e escolher o melhor. É a parte que o usuário nunca vê e que o autor do algoritmo projeta.

Estudar a aula: Entrada, processamento e saída: o esqueleto de todo algoritmo

Questão 8 · aula Pseudocódigo: o algoritmo escrito em português

Qual é a principal função do pseudocódigo neste curso?

  1. Rodar mais rápido que as linguagens de verdade.
  2. Treinar a lógica em português estruturado antes de encarar a sintaxe de uma linguagem real.
  3. Substituir o Python e o JavaScript nas empresas.
  4. Deixar o algoritmo mais bonito para imprimir.
Ver a resposta

Resposta: B. Treinar a lógica em português estruturado antes de encarar a sintaxe de uma linguagem real.

Pseudocódigo é ferramenta de aprendizado e de rascunho: concentra você na lógica, sem o atrito do inglês e da pontuação das linguagens reais. Ele não roda em produção nem compete com linguagem de verdade; ele prepara você para todas elas.

Estudar a aula: Pseudocódigo: o algoritmo escrito em português

Questão 9 · aula Fluxogramas: o algoritmo vira desenho

Qual é a principal vantagem de desenhar o fluxograma de um algoritmo antes de escrevê-lo?

  1. O desenho roda mais rápido no computador.
  2. Enxergar o caminho completo, com decisões e desvios visíveis, antes de detalhar qualquer linha.
  3. Fluxogramas dispensam o teste do algoritmo.
  4. O fluxograma esconde os erros de lógica.
Ver a resposta

Resposta: B. Enxergar o caminho completo, com decisões e desvios visíveis, antes de detalhar qualquer linha.

O poder do fluxograma é a visão panorâmica: decisões, desvios e voltas ficam visíveis de uma olhada, o que ajuda a pensar e a comunicar. Ele não executa nem substitui teste; é ferramenta de planejamento que anda de mãos dadas com o pseudocódigo.

Estudar a aula: Fluxogramas: o algoritmo vira desenho

Questão 10 · aula Seu primeiro algoritmo completo: o troco da padaria

No teste, o algoritmo do troco respondeu -10 reais para uma compra de 30 paga com 20. Qual é a atitude certa?

  1. Jogar o algoritmo fora e começar outro do zero.
  2. Aceitar o resultado, porque a subtração está matematicamente correta.
  3. Registrar o caso e planejar uma versão 2 que confira se o pagamento é suficiente antes de calcular.
  4. Evitar testar com valores que quebram o algoritmo.
Ver a resposta

Resposta: C. Registrar o caso e planejar uma versão 2 que confira se o pagamento é suficiente antes de calcular.

O teste cumpriu o papel dele: revelou um caso que a versão 1 não cobre. O caminho profissional é registrar e refinar, acrescentando a conferência (uma decisão, ferramenta do módulo 8). Esconder o caso ou aceitar o absurdo empurra o erro para o cliente; recomeçar do zero joga fora o que já funciona.

Estudar a aula: Seu primeiro algoritmo completo: o troco da padaria

Módulo 3: Variáveis, as caixas da memória

Questão 11 · aula O que é uma variável: a caixa etiquetada da memória

Na linha idade <- 25, o que são "idade" e "25", respectivamente?

  1. Dois valores guardados na mesma caixa.
  2. O nome da variável (a etiqueta da caixa) e o valor guardado dentro dela.
  3. Dois nomes diferentes para a mesma variável.
  4. O valor da variável e o nome dela, nessa ordem.
Ver a resposta

Resposta: B. O nome da variável (a etiqueta da caixa) e o valor guardado dentro dela.

A seta guarda o valor da direita na caixa da esquerda: "idade" é a etiqueta que identifica a caixa e 25 é o conteúdo dela neste momento. O valor pode mudar depois; a etiqueta, não.

Estudar a aula: O que é uma variável: a caixa etiquetada da memória

Questão 12 · aula Tipos de informação: número, texto e lógico

Um cadastro vai guardar o CEP dos clientes. Qual tipo de variável é o mais adequado e por quê?

  1. Número, porque o CEP é feito de dígitos.
  2. Lógico, porque o CEP existe ou não existe.
  3. Texto, porque o CEP é um código de identificação: não entra em contas, tem hífen e pode começar com zero.
  4. Tanto faz, porque a máquina converte sozinha quando precisar.
Ver a resposta

Resposta: C. Texto, porque o CEP é um código de identificação: não entra em contas, tem hífen e pode começar com zero.

O teste da conta decide: ninguém soma CEPs. Como código de identificação, o CEP precisa preservar o hífen e o zero inicial (01310-100 virando 1310100 perde o endereço). Portanto, texto. A máquina literal não adivinha a intenção; quem escolhe o tipo é você.

Estudar a aula: Tipos de informação: número, texto e lógico

Questão 13 · aula Atribuição: guardar, substituir e a linha que parece impossível

Depois das linhas "saldo <- 80" e "saldo <- saldo - 30", qual é o conteúdo da caixa saldo?

  1. 80, porque a segunda linha é inválida.
  2. 50, porque o lado direito calcula 80 - 30 e o resultado substitui o valor antigo.
  3. 30, porque o último número escrito vence.
  4. 110, porque a atribuição soma os valores das duas linhas.
Ver a resposta

Resposta: B. 50, porque o lado direito calcula 80 - 30 e o resultado substitui o valor antigo.

A coreografia de dois tempos resolve: primeiro o lado direito lê o valor atual (80) e calcula 80 - 30 = 50; depois o 50 entra na caixa, descartando o 80. A atribuição nem acumula nem escolhe o último número solto: ela guarda o resultado da expressão da direita.

Estudar a aula: Atribuição: guardar, substituir e a linha que parece impossível

Questão 14 · aula A troca de valores: o desafio dos dois copos

Com a valendo 10 e b valendo 20, o que acontece ao executar apenas "a <- b" e depois "b <- a"?

  1. As variáveis trocam de valor: a fica com 20 e b fica com 10.
  2. As duas terminam com 20, porque a primeira linha descarta o 10 antes que a segunda possa usá-lo.
  3. As duas terminam com 10, porque a segunda linha desfaz a primeira.
  4. O programa para com erro, porque duas atribuições seguidas não são permitidas.
Ver a resposta

Resposta: B. As duas terminam com 20, porque a primeira linha descarta o 10 antes que a segunda possa usá-lo.

A linha a <- b guarda 20 em a e o 10 é descartado na hora, sem lixeira. Quando b <- a executa, o valor atual de a já é 20, então b recebe 20 de novo. Resultado: duplicação, não troca. A variável auxiliar existe para salvar o 10 antes do atropelo.

Estudar a aula: A troca de valores: o desafio dos dois copos

Questão 15 · aula Nomes que se explicam: batizando bem as suas variáveis

Qual destes nomes é a melhor escolha para a variável que guarda o total a pagar numa compra?

  1. t, porque nomes curtos economizam digitação.
  2. total_da_compra, porque descreve o conteúdo e segue o padrão de minúsculas com underline.
  3. total da compra, porque fica mais parecido com português.
  4. TTLCMP, porque letras maiúsculas dão destaque à variável.
Ver a resposta

Resposta: B. total_da_compra, porque descreve o conteúdo e segue o padrão de minúsculas com underline.

O bom identificador descreve o conteúdo sem mistério e respeita as regras de formação: total_da_compra cumpre os dois critérios. "t" e "TTLCMP" exigem adivinhação, e "total da compra" nem é um identificador válido, porque contém espaços.

Estudar a aula: Nomes que se explicam: batizando bem as suas variáveis

Módulo 4: Entrada e saída, a conversa com o programa

Questão 16 · aula Mostrar na tela com ESCREVA: a voz do programa

A variável troco guarda o valor 7. Qual a diferença entre escreva(troco) e escreva("troco")?

  1. Nenhuma: os dois mostram 7 na tela.
  2. escreva(troco) mostra 7; escreva("troco") mostra a palavra troco, porque as aspas mandam reproduzir o texto ao pé da letra.
  3. escreva(troco) dá erro, porque variável só funciona com aspas.
  4. Os dois mostram a palavra troco; números precisam de outro comando.
Ver a resposta

Resposta: B. escreva(troco) mostra 7; escreva("troco") mostra a palavra troco, porque as aspas mandam reproduzir o texto ao pé da letra.

Sem aspas, o computador procura a variável na memória e mostra o valor guardado (7). Com aspas, ele obedece ao pé da letra e mostra o texto troco. As aspas escolhem entre o conteúdo da caixinha e a etiqueta dela.

Estudar a aula: Mostrar na tela com ESCREVA: a voz do programa

Questão 17 · aula Perguntar com LEIA: o programa escuta você

O que acontece quando a execução chega na linha leia(idade)?

  1. O programa mostra a palavra idade na tela e segue em frente.
  2. O programa pausa, espera a pessoa digitar, guarda a resposta na variável idade e só então continua.
  3. O programa inventa uma idade provável e continua sem esperar.
  4. O programa apaga a variável idade e encerra.
Ver a resposta

Resposta: B. O programa pausa, espera a pessoa digitar, guarda a resposta na variável idade e só então continua.

O LEIA é uma catraca: a execução para até chegar a resposta, o valor digitado é guardado na variável indicada e o programa segue. Ele não mostra nada sozinho, por isso o aviso com ESCREVA vem antes.

Estudar a aula: Perguntar com LEIA: o programa escuta você

Questão 18 · aula Mensagens vivas: juntando texto e variável

A variável nome guarda Maria. Qual comando mostra exatamente Olá, Maria! na tela?

  1. escreva("Olá, nome!")
  2. escreva(Olá, Maria!)
  3. escreva("Olá, ", nome, "!")
  4. escreva(nome, "Olá!")
Ver a resposta

Resposta: C. escreva("Olá, ", nome, "!")

A frase precisa de três partes: o texto fixo "Olá, " (com o espaço dentro das aspas), a variável nome fora das aspas (para sair Maria) e o "!" final. A primeira opção prende a variável nas aspas e mostra a palavra nome; a segunda nem tem aspas no texto; a última inverte a ordem.

Estudar a aula: Mensagens vivas: juntando texto e variável

Questão 19 · aula A entrada vira cálculo: o programa trabalha para você

Num programa de troco, a linha troco <- pago - preço foi colocada antes dos dois LEIA. O que acontece?

  1. Nada de errado: o computador espera as leituras e refaz a conta sozinho.
  2. A conta usa os valores que as variáveis tiverem naquele momento, guarda um resultado sem sentido e ele não se atualiza quando os valores certos chegarem.
  3. O programa recusa a linha e pula direto para os LEIA.
  4. O troco sai certo, mas em ordem invertida na tela.
Ver a resposta

Resposta: B. A conta usa os valores que as variáveis tiverem naquele momento, guarda um resultado sem sentido e ele não se atualiza quando os valores certos chegarem.

A atribuição executa uma única vez, no instante em que a linha roda, com o que estiver nas variáveis. O computador não volta para refazer contas: quem garante que a conta rode depois das leituras é a ordem das linhas, ou seja, você.

Estudar a aula: A entrada vira cálculo: o programa trabalha para você

Questão 20 · aula Seu primeiro programa completo, do oi ao tchau

Qual sequência descreve o roteiro correto de um programa completo como o divisor de conta?

  1. Mostrar o resultado, calcular, perguntar os dados.
  2. Calcular primeiro, perguntar os dados depois, mostrar por último.
  3. Perguntar e ler os dados, calcular com eles, mostrar o resultado.
  4. Perguntar os dados e mostrar o resultado; o cálculo é opcional.
Ver a resposta

Resposta: C. Perguntar e ler os dados, calcular com eles, mostrar o resultado.

É o roteiro de três atos: entrada (perguntar e ler), processamento (calcular com os valores lidos) e saída (mostrar o resultado). A conta precisa dos dados, e o resultado precisa da conta; a ordem não é estilo, é lógica.

Estudar a aula: Seu primeiro programa completo, do oi ao tchau

Módulo 5: Contas dentro do algoritmo

Questão 21 · aula As quatro contas de sempre, do jeito que a máquina escreve

No pseudocódigo, quanto vale a expressão 7 / 2?

  1. 3, porque a máquina descarta a sobra automaticamente.
  2. 3,5, porque a divisão comum devolve o valor exato, com vírgula se precisar.
  3. 4, porque a máquina arredonda para cima.
  4. Dá erro, porque 7 não é divisível por 2.
Ver a resposta

Resposta: B. 3,5, porque a divisão comum devolve o valor exato, com vírgula se precisar.

A divisão comum (/) devolve o quociente exato: 7 / 2 é 3,5. Não há erro nem arredondamento automático. Quando o problema exige resultado inteiro (pessoas, vans, ovos), usa-se a divisão inteira, que você conhece na próxima aula.

Estudar a aula: As quatro contas de sempre, do jeito que a máquina escreve

Questão 22 · aula Divisão inteira e resto: as duas respostas escondidas na divisão

Uma gráfica imprime apostilas com 26 folhas e recebeu 200 folhas de papel. O que dizem as contas 200 div 26 e 200 mod 26?

  1. 200 div 26 dá o preço da apostila; 200 mod 26 dá o lucro.
  2. 200 div 26 dá 7 apostilas completas; 200 mod 26 dá as 18 folhas que sobram.
  3. As duas contas dão o mesmo valor, porque usam os mesmos números.
  4. 200 div 26 dá 7,69 apostilas; 200 mod 26 arredonda para 8.
Ver a resposta

Resposta: B. 200 div 26 dá 7 apostilas completas; 200 mod 26 dá as 18 folhas que sobram.

A divisão inteira responde quantas apostilas inteiras cabem no papel: 7 (que consomem 182 folhas). O resto responde o que sobra: 200 - 182 = 18 folhas. Conferindo pela regra de ouro: 7 * 26 + 18 = 200, e 18 é menor que o divisor 26.

Estudar a aula: Divisão inteira e resto: as duas respostas escondidas na divisão

Questão 23 · aula Ordem das operações: quem calcula primeiro quando a linha mistura contas

Quanto vale a expressão 20 - 8 / 2 no pseudocódigo?

  1. 6, porque a máquina resolve da esquerda para a direita: 20 - 8 primeiro.
  2. 16, porque a divisão tem prioridade: 8 / 2 dá 4, e 20 - 4 dá 16.
  3. 10, porque a máquina divide o resultado final por 2.
  4. Dá erro, porque faltam parênteses obrigatórios.
Ver a resposta

Resposta: B. 16, porque a divisão tem prioridade: 8 / 2 dá 4, e 20 - 4 dá 16.

A divisão está um degrau acima da subtração na precedência, então 8 / 2 resolve primeiro (dá 4) e depois 20 - 4 dá 16. Quem quer o outro resultado escreve (20 - 8) / 2, que dá 6. Parênteses nunca são obrigatórios nem proibidos: são a sua ordem por escrito.

Estudar a aula: Ordem das operações: quem calcula primeiro quando a linha mistura contas

Questão 24 · aula Expressões que misturam tudo: do problema em português à fórmula que funciona

Uma loja dá 20% de desconto num produto de preço reais. Qual expressão devolve o preço final?

  1. preço - 20
  2. preço - preço * 20 / 100
  3. preço * 20 / 100
  4. preço / 20
Ver a resposta

Resposta: B. preço - preço * 20 / 100

O desconto é uma fração do preço: preço * 20 / 100. O preço final é o preço menos essa fração. Teste com número fácil: produto de 100 reais dá 100 - 20 = 80, que bate com os 20% esperados. A alternativa preço - 20 só funcionaria por coincidência quando o preço fosse exatamente 100.

Estudar a aula: Expressões que misturam tudo: do problema em português à fórmula que funciona

Questão 25 · aula O resto no dia a dia: par ou ímpar, troco em notas e rodízio de placas

Uma pizzaria tem 3 motoboys que se revezam em ordem fixa (0, 1 e 2). O pedido de número 25 sai com qual motoboy?

  1. Com o motoboy 2, porque 25 div 3 dá 8 e sobra 2.
  2. Com o motoboy 1, porque 25 mod 3 dá 1: 8 voltas completas somam 24 e o pedido 25 é o primeiro da volta seguinte.
  3. Com o motoboy 0, porque toda volta recomeça no zero.
  4. Impossível saber sem a lista completa dos 25 pedidos.
Ver a resposta

Resposta: B. Com o motoboy 1, porque 25 mod 3 dá 1: 8 voltas completas somam 24 e o pedido 25 é o primeiro da volta seguinte.

O revezamento é um ciclo de 3 posições, então a posição do pedido 25 é 25 mod 3. Oito voltas completas consomem 24 pedidos (8 * 3), e sobra 1: o pedido 25 cai na posição 1 do ciclo. A alternativa do div confunde as duas respostas da divisão: o div conta as voltas, o mod aponta a posição.

Estudar a aula: O resto no dia a dia: par ou ímpar, troco em notas e rodízio de placas

Módulo 6: Comparações, perguntas de sim ou não

Questão 26 · aula Igual ou diferente: a primeira pergunta de sim ou não

A variável cupom guarda o texto "DESCONTO10". O que a comparação cupom = "DESCONTO10" produz?

  1. O valor lógico V, porque os dois textos são exatamente iguais.
  2. O número 10, extraído do final do cupom.
  3. Uma nova variável chamada DESCONTO10.
  4. Nada: o = só funciona com números.
Ver a resposta

Resposta: A. O valor lógico V, porque os dois textos são exatamente iguais.

Comparação não cria variável nem extrai pedaços de texto: ela apenas pergunta "são iguais?" e devolve V ou F. Como o valor guardado e o texto comparado são idênticos, a resposta é V, e é esse V que mais tarde vai alimentar as decisões do módulo 8.

Estudar a aula: Igual ou diferente: a primeira pergunta de sim ou não

Questão 27 · aula Maior e menor: a balança que decide

Uma pizzaria entrega grátis para pedidos acima de 80 reais e usa a comparação pedido > 80. Um cliente pediu exatamente 80 reais. O que a comparação responde e o que acontece?

  1. Responde V: entrega grátis, porque 80 está dentro da promoção.
  2. Responde F: o cliente paga a entrega, porque 80 não é maior que 80.
  3. Responde V ou F dependendo do horário do pedido.
  4. A comparação trava, porque empate não tem resposta.
Ver a resposta

Resposta: B. Responde F: o cliente paga a entrega, porque 80 não é maior que 80.

No empate a balança não pende: 80 > 80 é F, e o algoritmo cobra a entrega. Não existe travamento nem sorteio; a comparação SEMPRE responde V ou F. Se a intenção da pizzaria era incluir os 80 reais em cheio, o operador certo é o >= da próxima aula.

Estudar a aula: Maior e menor: a balança que decide

Questão 28 · aula Maior ou igual: o dia em que o empate muda tudo

A escola aprova quem tem média no mínimo 7. Ana tirou exatamente 7. Qual comparação aprova a Ana, como manda a regra?

  1. média > 7, porque 7 é a nota mínima.
  2. média >= 7, porque "no mínimo 7" inclui o próprio 7, e 7 >= 7 responde V.
  3. média = 7, porque a nota dela foi exatamente 7.
  4. média <= 7, porque o 7 precisa estar dentro do limite.
Ver a resposta

Resposta: B. média >= 7, porque "no mínimo 7" inclui o próprio 7, e 7 >= 7 responde V.

"No mínimo 7" inclui o 7, então o operador é >=: com média 7, "média >= 7" responde V e Ana passa. O > barraria a nota exata; o = aprovaria SÓ quem tirou 7 em cheio e reprovaria quem tirou 9; o <= aprovaria quem tirou 2. Cada símbolo conta uma regra diferente.

Estudar a aula: Maior ou igual: o dia em que o empate muda tudo

Questão 29 · aula Comparando textos: "Ana" e "ana" não são a mesma coisa

Um formulário guardou o nome " Bruno" (com espaço antes do B). A comparação " Bruno" = "Bruno" responde o quê, e por quê?

  1. V, porque espaços não contam em comparação de textos.
  2. F, porque o espaço é um caractere e a conferência letra por letra encontra a diferença logo no primeiro.
  3. V, porque os dois textos têm as mesmas letras na mesma ordem.
  4. F, porque nomes próprios não podem ser comparados.
Ver a resposta

Resposta: B. F, porque o espaço é um caractere e a conferência letra por letra encontra a diferença logo no primeiro.

O espaço é um caractere invisível, mas real: " Bruno" tem 6 caracteres e "Bruno" tem 5. A comparação para no primeiro caractere (espaço contra B) e responde F. É o bug clássico do copiar e colar, e a defesa é aparar os espaços das pontas antes de comparar.

Estudar a aula: Comparando textos: "Ana" e "ana" não são a mesma coisa

Questão 30 · aula V ou F: o resultado secreto de toda comparação

Depois de executar "aprovado <- média >= 7" com média valendo 8, o que a variável aprovado guarda?

  1. O número 8, que era o valor da média.
  2. O número 7, que era a nota de corte.
  3. O valor lógico V, porque a comparação 8 >= 7 foi calculada antes de guardar.
  4. O texto "média >= 7", para calcular depois.
Ver a resposta

Resposta: C. O valor lógico V, porque a comparação 8 >= 7 foi calculada antes de guardar.

A linha faz duas coisas na ordem: calcula a comparação (8 >= 7 vale V) e guarda o RESULTADO na variável. A caixa aprovado não guarda a média, nem a pergunta: guarda o veredito V. É esse valor lógico que o módulo 7 vai combinar com E, OU e NÃO, e que o módulo 8 vai usar para decidir caminhos.

Estudar a aula: V ou F: o resultado secreto de toda comparação

Módulo 7: E, OU e NÃO desenhados

Questão 31 · aula O operador E: duas chaves em série

Na condição "idade >= 16 E autorizado = V", com idade 15 e autorizado V, qual o resultado?

  1. V, porque pelo menos uma condição é verdadeira.
  2. F, porque a primeira condição é falsa e o E exige as duas verdadeiras.
  3. V, porque a autorização compensa a idade.
  4. Erro: o computador não consegue avaliar.
Ver a resposta

Resposta: B. F, porque a primeira condição é falsa e o E exige as duas verdadeiras.

idade >= 16 dá F (15 não chega). No E, uma chave aberta corta o circuito: F E V = F. A lâmpada só acenderia com as duas condições verdadeiras ao mesmo tempo.

Estudar a aula: O operador E: duas chaves em série

Questão 32 · aula O operador OU: dois caminhos em paralelo

Numa promoção, tem desconto quem é aniversariante OU cliente do clube. Ana é as duas coisas. Ela tem desconto?

  1. Não, porque o OU exige exatamente uma condição verdadeira.
  2. Sim, porque o OU da lógica é inclusivo: V OU V = V.
  3. Depende da ordem das condições no código.
  4. Não, porque as condições se cancelam.
Ver a resposta

Resposta: B. Sim, porque o OU da lógica é inclusivo: V OU V = V.

O OU lógico aceita uma, outra ou as duas: V OU V = V. Ana se encaixa duas vezes e o resultado continua verdadeiro. O "ou isto ou aquilo" exclusivo é coisa da fala, não do operador.

Estudar a aula: O operador OU: dois caminhos em paralelo

Questão 33 · aula O operador NÃO: o inversor

A variável pago vale F. O que devolve a expressão NÃO (NÃO pago)?

  1. V, porque toda negação dupla vira verdadeiro.
  2. F, porque duas inversões devolvem o valor original, que é F.
  3. Erro, porque não se pode negar duas vezes.
  4. Depende do valor de outras variáveis.
Ver a resposta

Resposta: B. F, porque duas inversões devolvem o valor original, que é F.

De dentro para fora: NÃO pago = NÃO F = V; depois NÃO V = F. Duas viradas completas devolvem o ponto de partida. Em código real, negação dupla é convite para simplificar: NÃO (NÃO pago) é simplesmente pago.

Estudar a aula: O operador NÃO: o inversor

Questão 34 · aula Tabelas-verdade sem decoreba

Quantas linhas tem a tabela-verdade de uma expressão com 3 condições (A, B e C)?

  1. 3 linhas.
  2. 6 linhas.
  3. 8 linhas.
  4. 9 linhas.
Ver a resposta

Resposta: C. 8 linhas.

Cada condição dobra as combinações: 2 x 2 x 2 = 8. A fórmula geral é 2 elevado ao número de condições. Por isso regras com muitas condições pedem quebra em partes: a tabela cresce rápido.

Estudar a aula: Tabelas-verdade sem decoreba

Questão 35 · aula Combinando tudo: parênteses e prioridade

Sem parênteses, como o computador lê a condição "A OU B E C"?

  1. (A OU B) E C, da esquerda para a direita.
  2. A OU (B E C), porque o E tem prioridade sobre o OU.
  3. Tanto faz: as duas leituras dão sempre o mesmo resultado.
  4. O computador recusa a condição e pede parênteses.
Ver a resposta

Resposta: B. A OU (B E C), porque o E tem prioridade sobre o OU.

O E agrupa antes do OU, como a multiplicação antes da soma: A OU (B E C). As duas leituras dão resultados diferentes (teste A=V, B=F, C=F: uma dá V, outra dá F). Quando a intenção for a outra leitura, os parênteses são obrigatórios.

Estudar a aula: Combinando tudo: parênteses e prioridade

Módulo 8: Decisões, o SE... ENTÃO... SENÃO

Questão 36 · aula A bifurcação SE: quando o programa escolhe um caminho

Em um comando SE, a condição "saldo >= valor" deu F. O que acontece?

  1. O programa encerra na hora, com mensagem de erro.
  2. O bloco entre então e fim é pulado, e o programa continua na linha depois do fim.
  3. O bloco executa mesmo assim, só que mais devagar.
  4. O computador pergunta ao usuário o que fazer.
Ver a resposta

Resposta: B. O bloco entre então e fim é pulado, e o programa continua na linha depois do fim.

Condição F significa apenas "não execute este bloco". O programa não para nem pergunta nada: salta para a primeira linha depois do fim e segue o fluxo normal. Quem quiser um caminho alternativo para o F vai usar o SENÃO, assunto da próxima aula.

Estudar a aula: A bifurcação SE: quando o programa escolhe um caminho

Questão 37 · aula SENÃO: o plano B de toda decisão

No pseudocódigo "se nota >= 7 então escreva("Aprovado") senão escreva("Recuperação") fim", quando o bloco do SENÃO executa?

  1. Sempre, logo depois do bloco do ENTÃO.
  2. Apenas quando nota >= 7 vale F, ou seja, quando a nota é menor que 7.
  3. Apenas quando o programador escreve uma condição para ele.
  4. Nunca: SENÃO é só um comentário decorativo.
Ver a resposta

Resposta: B. Apenas quando nota >= 7 vale F, ou seja, quando a nota é menor que 7.

O SENÃO herda o contrário exato da condição do SE, sem precisar de condição própria. Com nota 7 ou mais, roda o ENTÃO; com nota abaixo de 7, roda o SENÃO. Exatamente um dos dois blocos executa em cada passagem, nunca os dois.

Estudar a aula: SENÃO: o plano B de toda decisão

Questão 38 · aula A escada SENÃO SE: várias faixas, uma decisão só

Uma escada começa com "se nota >= 5 então escreva("Recuperação")" e só depois testa nota >= 9. O que acontece com a nota 9,5?

  1. Ela recebe "Excelente", porque a escada procura o degrau mais adequado.
  2. Ela recebe "Recuperação", porque 9,5 >= 5 dá V no primeiro degrau e a escada para ali.
  3. O programa trava, porque duas condições valem V ao mesmo tempo.
  4. Ela cai no SENÃO final, sem classificação.
Ver a resposta

Resposta: B. Ela recebe "Recuperação", porque 9,5 >= 5 dá V no primeiro degrau e a escada para ali.

A escada testa na ordem e executa o PRIMEIRO degrau com V, sem procurar um "melhor" degrau depois. Como 9,5 >= 5 é V, a execução para no primeiro bloco e mostra "Recuperação". Por isso as condições se ordenam da mais restritiva para a mais folgada.

Estudar a aula: A escada SENÃO SE: várias faixas, uma decisão só

Questão 39 · aula Decisões dentro de decisões: o SE aninhado

No caixa eletrônico aninhado, a senha digitada está errada. O que acontece com a condição do saldo?

  1. Ela é avaliada mesmo assim, por segurança.
  2. Ela nunca é avaliada: o bloco do V da senha, onde o SE do saldo mora, foi pulado por inteiro.
  3. Ela é avaliada, mas o resultado é descartado.
  4. O programa pergunta ao usuário se deseja conferir o saldo.
Ver a resposta

Resposta: B. Ela nunca é avaliada: o bloco do V da senha, onde o SE do saldo mora, foi pulado por inteiro.

Com a condição externa em F, todo o bloco do então é pulado, incluindo o SE interno do saldo, que nem chega a existir naquela execução. É a essência do aninhamento: a pergunta de dentro só acontece quando o portão de fora abriu.

Estudar a aula: Decisões dentro de decisões: o SE aninhado

Questão 40 · aula ESCOLHA CASO: o menu de opções do algoritmo

No menu de 1 a 3 do banco, o usuário digita 8. Sem o caso contrário, o que aconteceria?

  1. O programa mostraria uma mensagem de erro automática do computador.
  2. Nenhum caso executaria e o programa seguiria em silêncio, sem qualquer resposta ao usuário.
  3. O caso 3 executaria, por ser o último da lista.
  4. O ESCOLHA CASO arredondaria o 8 para o caso válido mais próximo.
Ver a resposta

Resposta: B. Nenhum caso executaria e o programa seguiria em silêncio, sem qualquer resposta ao usuário.

Sem caso contrário, um valor que não bate com nenhum caso simplesmente não executa bloco algum, e o programa continua como se nada tivesse acontecido: a clássica falha silenciosa. O caso contrário existe para dar resposta a toda entrada, nem que seja "opção inválida".

Estudar a aula: ESCOLHA CASO: o menu de opções do algoritmo

Módulo 9: Repetir ENQUANTO for preciso

Questão 41 · aula Por que repetir: o dia em que copiar e colar não dá mais conta

Um programa precisa dar boas-vindas a 500 usuários. Por que um laço é melhor que 500 linhas copiadas e coladas?

  1. Porque o laço deixa o computador mais rápido que as 500 linhas.
  2. Porque o bloco escrito uma vez vale para todos: mudou a mensagem, corrige-se um lugar só, e o número de usuários pode crescer sem mexer no código.
  3. Porque copiar e colar é proibido nas linguagens de programação.
  4. Porque o laço escolhe sozinho a mensagem mais educada.
Ver a resposta

Resposta: B. Porque o bloco escrito uma vez vale para todos: mudou a mensagem, corrige-se um lugar só, e o número de usuários pode crescer sem mexer no código.

A vantagem do laço é de escrita e manutenção: um único bloco atende 500 ou 5 milhões de usuários, e qualquer correção acontece num lugar só. A velocidade de execução não é o ponto, e copiar e colar não é proibido, só é frágil.

Estudar a aula: Por que repetir: o dia em que copiar e colar não dá mais conta

Questão 42 · aula O laço ENQUANTO: repita até a condição dizer chega

O que faz um laço ENQUANTO terminar?

  1. O bloco interno acabar de executar uma vez.
  2. A condição ser testada e estar falsa, o que faz o programa seguir para depois do fim.
  3. O programa atingir um limite fixo de 100 voltas.
  4. A palavra fim, que encerra o laço na primeira vez que é alcançada.
Ver a resposta

Resposta: B. A condição ser testada e estar falsa, o que faz o programa seguir para depois do fim.

O laço vive de teste em teste: enquanto a condição responder verdadeiro, há nova volta. Ele só encerra quando o teste do topo recebe um falso. Não existe limite automático de voltas, e o fim apenas marca onde o bloco termina, devolvendo o programa ao teste.

Estudar a aula: O laço ENQUANTO: repita até a condição dizer chega

Questão 43 · aula O contador: ensinando o programa a contar

A variável pontos vale 9. O que acontece ao executar pontos <- pontos + 1?

  1. O computador cria uma segunda variável chamada "pontos + 1", com valor 10.
  2. O lado direito calcula 9 + 1 e o resultado 10 substitui o 9 dentro da caixa pontos.
  3. Nada, porque uma variável não pode aparecer dos dois lados da seta.
  4. O computador entra em erro, pois pontos não pode ser igual a pontos mais um.
Ver a resposta

Resposta: B. O lado direito calcula 9 + 1 e o resultado 10 substitui o 9 dentro da caixa pontos.

A atribuição não é equação: o lado direito calcula primeiro, usando o valor atual (9 + 1 = 10), e o resultado é guardado de volta na mesma caixa, substituindo o 9. É o clique do contador: ler, somar, guardar.

Estudar a aula: O contador: ensinando o programa a contar

Questão 44 · aula O acumulador: o cofrinho do algoritmo

Um programa soma os preços de 4 produtos (10, 20, 30 e 40), mas a linha total <- 0 ficou DENTRO do laço. O que aparece no fim?

  1. 100, porque a posição da inicialização não muda a soma.
  2. 40, porque o total é rezerado a cada volta e só sobra o último preço.
  3. 0, porque o total nunca consegue crescer.
  4. Uma mensagem de erro avisando que a linha está no lugar errado.
Ver a resposta

Resposta: B. 40, porque o total é rezerado a cada volta e só sobra o último preço.

A cada volta o total vira 0 e depois recebe o preço da vez: 10, depois 20, depois 30, depois 40. As somas anteriores são apagadas e sobra apenas o último valor. Nenhum erro é exibido, e é isso que torna o descuido perigoso: o programa roda e o resultado sai errado em silêncio.

Estudar a aula: O acumulador: o cofrinho do algoritmo

Questão 45 · aula O laço infinito: o vilão que congela programas

Um ENQUANTO está rodando para sempre. Qual é a PRIMEIRA verificação a fazer?

  1. Reiniciar o computador para limpar a memória e rodar de novo.
  2. Conferir se alguma linha dentro do bloco altera a variável da condição, na direção que a leva ao falso.
  3. Trocar o ENQUANTO por um SE, que nunca trava.
  4. Aumentar a velocidade do processador para o laço terminar mais rápido.
Ver a resposta

Resposta: B. Conferir se alguma linha dentro do bloco altera a variável da condição, na direção que a leva ao falso.

O laço só termina quando a condição vira falsa, e ela só vira falsa se algo dentro do bloco empurrar a variável nessa direção. Reiniciar não conserta a lógica, o SE não repete (é outra ferramenta) e velocidade não encurta o infinito: o motor de saída é o que precisa existir e apontar para o lado certo.

Estudar a aula: O laço infinito: o vilão que congela programas

Módulo 10: Repetir com contagem, o PARA

Questão 46 · aula O laço PARA: conte de 1 até N sem esforço

No laço 'para i de 1 até 4 faça', quem é responsável por fazer o i avançar de 1 em 1?

  1. O programador, escrevendo i <- i + 1 dentro do bloco.
  2. O próprio laço PARA, automaticamente, ao fim de cada volta.
  3. O comando escreva, toda vez que é executado.
  4. Ninguém: o i fica parado em 1 até o laço acabar.
Ver a resposta

Resposta: B. O próprio laço PARA, automaticamente, ao fim de cada volta.

No PARA, a atualização da variável de controle vem de fábrica: o laço soma 1 ao i ao fim de cada volta e testa o limite sozinho. É justamente o que o diferencia do ENQUANTO do módulo 9, onde o avanço do contador era tarefa sua.

Estudar a aula: O laço PARA: conte de 1 até N sem esforço

Questão 47 · aula O passo: conte de 2 em 2 e de trás para frente

Qual laço escreve na tela 10, 8, 6, 4, 2, nessa ordem?

  1. para i de 2 até 10 passo 2 faça escreva(i) fim
  2. para i de 10 até 2 passo -2 faça escreva(i) fim
  3. para i de 10 até 2 faça escreva(i) fim
  4. para i de 10 até 2 passo 2 faça escreva(i) fim
Ver a resposta

Resposta: B. para i de 10 até 2 passo -2 faça escreva(i) fim

Para descer de 10 até 2 saltando de 2 em 2, o passo precisa ser -2: o laço subtrai 2 a cada volta e visita 10, 8, 6, 4 e 2. A primeira opção conta na ordem crescente; as duas últimas usam passo positivo com início maior que o fim, e o laço termina sem dar volta alguma.

Estudar a aula: O passo: conte de 2 em 2 e de trás para frente

Questão 48 · aula Percorrendo intervalos: comece e termine no lugar certo

Quantas voltas dá o laço 'para i de 5 até 9 faça'?

  1. 4 voltas, porque 9 - 5 = 4.
  2. 5 voltas, porque o intervalo inclui as duas pontas: 5, 6, 7, 8 e 9.
  3. 9 voltas, porque o limite é 9.
  4. Nenhuma, porque o laço não começa em 1.
Ver a resposta

Resposta: B. 5 voltas, porque o intervalo inclui as duas pontas: 5, 6, 7, 8 e 9.

O intervalo do PARA inclui início e fim: o i visita 5, 6, 7, 8 e 9, cinco valores. A conta é fim - início + 1 = 9 - 5 + 1 = 5. A subtração pura mede a distância entre as pontas e esquece um dos mourões da cerca.

Estudar a aula: Percorrendo intervalos: comece e termine no lugar certo

Questão 49 · aula A tabuada como projeto: seu primeiro programa completo com PARA

Na tabuada com soma, por que a linha soma <- 0 fica ANTES do laço, e não dentro dele?

  1. Por estilo: dentro ou fora do laço, o efeito seria o mesmo.
  2. Porque dentro do laço a soma seria zerada a cada volta e o total final seria só o último resultado.
  3. Porque o computador não aceita atribuição dentro de laços.
  4. Porque o zero só existe fora de repetições.
Ver a resposta

Resposta: B. Porque dentro do laço a soma seria zerada a cada volta e o total final seria só o último resultado.

O acumulador precisa nascer uma única vez, zerado, e crescer volta após volta. Se o soma <- 0 morasse no corpo do laço, cada volta apagaria o que as anteriores acumularam, e o total final seria apenas o resultado da décima linha (70, na tabuada do 7), não 385.

Estudar a aula: A tabuada como projeto: seu primeiro programa completo com PARA

Questão 50 · aula Laço dentro de laço: o poder das repetições aninhadas

No trecho 'para linha de 1 até 3 faça / para coluna de 1 até 5 faça / escreva(linha, coluna) / fim / fim', quantas vezes o escreva executa?

  1. 8 vezes, somando 3 + 5.
  2. 15 vezes, multiplicando 3 x 5: o interno roda completo a cada volta do externo.
  3. 5 vezes, porque o laço interno manda.
  4. 3 vezes, porque o laço externo manda.
Ver a resposta

Resposta: B. 15 vezes, multiplicando 3 x 5: o interno roda completo a cada volta do externo.

A cada uma das 3 voltas de linha, o laço de coluna executa as 5 voltas dele: 3 x 5 = 15 execuções do escreva. A soma (8) é o erro clássico de quem ainda não internalizou a regra de ouro: aninhado multiplica, não soma.

Estudar a aula: Laço dentro de laço: o poder das repetições aninhadas

Módulo 11: Listas, muitas caixas juntas

Questão 51 · aula O que é uma lista: muitas caixas com a mesma etiqueta

A lista compras guarda 5 itens da feira. Qual descrição está correta?

  1. São 5 variáveis independentes chamadas compras1 a compras5.
  2. É uma única variável com 5 caixas numeradas, todas sob o nome compras.
  3. É uma variável comum que guarda os 5 itens misturados num texto só.
  4. São 5 listas, uma para cada item.
Ver a resposta

Resposta: B. É uma única variável com 5 caixas numeradas, todas sob o nome compras.

A lista é UMA variável com várias caixas numeradas (índices) sob o mesmo nome. É esse formato que permite alcançar cada item por posição e percorrer tudo com um laço, em vez de decorar 5 nomes diferentes.

Estudar a aula: O que é uma lista: muitas caixas com a mesma etiqueta

Questão 52 · aula O índice começa no zero (sim, no zero)

A lista notas tem 4 valores. Qual índice acessa o ÚLTIMO deles?

  1. notas[4], porque a lista tem 4 valores.
  2. notas[3], porque o último índice é o tamanho menos 1.
  3. notas[1], porque a contagem começa no 1.
  4. notas[0], porque o zero é sempre o fim da lista.
Ver a resposta

Resposta: B. notas[3], porque o último índice é o tamanho menos 1.

Com 4 elementos, os índices válidos são 0, 1, 2 e 3. O último é sempre tamanho menos 1: notas[3]. Pedir notas[4] estoura a lista, o famoso índice fora do alcance.

Estudar a aula: O índice começa no zero (sim, no zero)

Questão 53 · aula Percorrendo a lista, caixa por caixa

Uma lista tem 6 elementos. Como fica o laço PARA que visita todas as caixas?

  1. para i de 1 até 6 faça, porque a lista tem 6 elementos.
  2. para i de 0 até 6 faça, para garantir que nada fique de fora.
  3. para i de 0 até 5 faça, porque os índices vão de 0 ao tamanho menos 1.
  4. para i de 1 até 5 faça, pulando o zero, que é só um marcador.
Ver a resposta

Resposta: C. para i de 0 até 5 faça, porque os índices vão de 0 ao tamanho menos 1.

Com 6 elementos, os índices válidos são 0, 1, 2, 3, 4 e 5. O laço vai de 0 até tamanho menos 1, ou seja, de 0 até 5. Ir até 6 estouraria a lista na última volta; começar em 1 deixaria a primeira caixa sem visita.

Estudar a aula: Percorrendo a lista, caixa por caixa

Questão 54 · aula Somar tudo é achar o maior: os dois clássicos da lista

Por que iniciar maior <- lista[0] é mais seguro do que iniciar maior <- 0?

  1. Porque lista[0] é sempre o maior valor da lista.
  2. Porque, se todos os valores forem negativos, o 0 "venceria" sem estar na lista, e a resposta sairia errada.
  3. Porque o 0 não pode ser usado em comparações.
  4. Porque começar com lista[0] deixa o laço mais rápido.
Ver a resposta

Resposta: B. Porque, se todos os valores forem negativos, o 0 "venceria" sem estar na lista, e a resposta sairia errada.

O campeão provisório precisa ser um candidato REAL, ou seja, um valor da própria lista. Com maior <- 0 e uma lista de temperaturas negativas como [-2, -7, -1], nenhum valor supera 0 e o algoritmo responde 0, um número que nem existe na lista. Com maior <- lista[0], funciona sempre.

Estudar a aula: Somar tudo é achar o maior: os dois clássicos da lista

Questão 55 · aula Procurando na lista: tem ou não tem?

Ao final de uma busca, a variável posição vale -1. O que isso significa?

  1. O valor procurado está na última caixa da lista.
  2. O valor procurado não estava em nenhuma caixa da lista.
  3. A busca deu erro e precisa ser executada de novo.
  4. O valor procurado está na primeira caixa, de índice 0.
Ver a resposta

Resposta: B. O valor procurado não estava em nenhuma caixa da lista.

posição nasce valendo -1 e só muda se alguma caixa for igual ao procurado. Se o percurso inteiro termina e ela continua -1, nenhuma comparação deu igual: o valor não está na lista. Como índices reais nunca são negativos, o -1 é um sinal sem ambiguidade.

Estudar a aula: Procurando na lista: tem ou não tem?

Módulo 12: Funções, as máquinas do algoritmo

Questão 56 · aula O que é uma função: a máquina dentro do algoritmo

O que acontece quando um algoritmo DEFINE uma função mas nunca a CHAMA?

  1. A função executa sozinha uma vez, no final do programa.
  2. Nada: a máquina foi construída, mas ninguém apertou o botão de ligar.
  3. O programa trava com erro de função abandonada.
  4. O computador decide o melhor momento de executá-la.
Ver a resposta

Resposta: B. Nada: a máquina foi construída, mas ninguém apertou o botão de ligar.

Definir é construir a máquina; chamar é ligá-la. Sem chamada, os passos da função ficam prontos e parados, como um liquidificador novo dentro da caixa. O computador é literal: só executa o que for chamado.

Estudar a aula: O que é uma função: a máquina dentro do algoritmo

Questão 57 · aula Parâmetros: o que entra na máquina

Na definição função dobro(número) e na chamada dobro(7), quem é parâmetro e quem é argumento?

  1. número é o argumento; 7 é o parâmetro.
  2. número é o parâmetro (o espaço reservado); 7 é o argumento (o valor enviado).
  3. Os dois são parâmetros, porque estão entre parênteses.
  4. Os dois são argumentos, porque a função só tem uma entrada.
Ver a resposta

Resposta: B. número é o parâmetro (o espaço reservado); 7 é o argumento (o valor enviado).

O parâmetro mora na definição: é o copo esperando conteúdo (número). O argumento mora na chamada: é o valor concreto da vez (7). A cada nova chamada, um argumento novo enche o mesmo parâmetro.

Estudar a aula: Parâmetros: o que entra na máquina

Questão 58 · aula Retorno: o que sai da máquina

A função calcular_media faz a conta e usa escreva para mostrar o resultado, sem retorne. Qual é a limitação prática?

  1. Nenhuma: mostrar na tela e retornar dão no mesmo.
  2. O algoritmo não consegue reaproveitar a média em outra conta, porque o valor evaporou na tela.
  3. O programa trava, porque toda função é obrigada a ter retorne.
  4. A média sai errada, porque o escreva arredonda os números.
Ver a resposta

Resposta: B. O algoritmo não consegue reaproveitar a média em outra conta, porque o valor evaporou na tela.

Sem retorne, o valor aparece para a pessoa e se perde para o programa: impossível comparar a média com a nota de corte ou guardá-la numa lista. Mostrar é efeito para gente; retornar é matéria-prima para o algoritmo.

Estudar a aula: Retorno: o que sai da máquina

Questão 59 · aula Quebrando um problema grande em funções pequenas

A função fechar_pedido calcula o total, aplica o desconto, imprime a nota e envia o e-mail. Pelo critério da responsabilidade única, qual é o diagnóstico?

  1. Perfeita: quanto mais tarefas numa função, menos funções para escrever.
  2. São quatro responsabilidades grudadas; o desenho limpo separa em funções menores e as chama do programa principal.
  3. Errada só por causa do e-mail, que nunca pode morar em função.
  4. Impossível avaliar sem contar as linhas da função.
Ver a resposta

Resposta: B. São quatro responsabilidades grudadas; o desenho limpo separa em funções menores e as chama do programa principal.

A descrição precisa de três "e", o sinal clássico de máquinas grudadas. Separando em calcular_total, aplicar_desconto, imprimir_nota e enviar_email, cada uma pode ser testada sozinha, e o programa principal narra o fluxo com clareza.

Estudar a aula: Quebrando um problema grande em funções pequenas

Questão 60 · aula Reusar sem copiar e colar: escreva uma vez, use sempre

O mesmo cálculo de frete aparece copiado em 4 pontos do programa, e a transportadora mudou a regra. Qual é o caminho mais seguro?

  1. Atualizar as 4 cópias com muita atenção e torcer para não esquecer nenhuma.
  2. Extrair o cálculo para a função calcular_frete, chamar a função nos 4 pontos e atualizar a regra em UM lugar.
  3. Apagar o cálculo dos 4 pontos e pedir para o usuário calcular o frete de cabeça.
  4. Manter as cópias e anotar num caderno onde cada uma fica.
Ver a resposta

Resposta: B. Extrair o cálculo para a função calcular_frete, chamar a função nos 4 pontos e atualizar a regra em UM lugar.

É o DRY aplicado: a regra passa a morar num único endereço, e as 4 telas chamam a mesma máquina. A próxima mudança da transportadora custa uma linha, e nenhuma cópia esquecida fica cobrando frete velho.

Estudar a aula: Reusar sem copiar e colar: escreva uma vez, use sempre

Módulo 13: O raio-X do algoritmo

Questão 61 · aula O teste de mesa: execute o algoritmo antes do computador

O que é, exatamente, um teste de mesa?

  1. Rodar o programa no computador várias vezes até funcionar.
  2. Executar o algoritmo manualmente, linha por linha, anotando o valor de cada variável e a saída.
  3. Pedir para outra pessoa ler o algoritmo e dar opinião.
  4. Medir quanto tempo o programa demora para terminar.
Ver a resposta

Resposta: B. Executar o algoritmo manualmente, linha por linha, anotando o valor de cada variável e a saída.

No teste de mesa, você faz o papel do computador: obedece cada linha na ordem escrita e anota o estado das variáveis numa tabela. Comparando a saída obtida com a esperada, descobre se o algoritmo está certo antes de qualquer máquina executá-lo.

Estudar a aula: O teste de mesa: execute o algoritmo antes do computador

Questão 62 · aula Rastreando variáveis: o filme do programa, quadro a quadro

No laço "contador <- 0; enquanto contador < 2 faça; contador <- contador + 1; fim", qual é o estado de contador logo APÓS a primeira volta completa?

  1. 0
  2. 1
  3. 2
  4. 3
Ver a resposta

Resposta: B. 1

Antes do laço, contador vale 0. A condição 0 < 2 é verdadeira, o laço executa "contador <- contador + 1" e o estado passa a 1. A fotografia após a primeira volta mostra contador valendo 1; ele só chega a 2 na volta seguinte, que também é a última, porque 2 < 2 é falso.

Estudar a aula: Rastreando variáveis: o filme do programa, quadro a quadro

Questão 63 · aula Casos de borda: as entradas que derrubam algoritmos

Um algoritmo de saque libera o dinheiro quando "valor < saldo". O cliente com saldo de 100 reais tenta sacar exatamente 100 e recebe recusa. Que tipo de problema é esse?

  1. Um erro de digitação do cliente, que deveria pedir 99.
  2. Um caso de borda no limite exato: a condição deveria ser "valor <= saldo".
  3. Um travamento por divisão por zero.
  4. Um problema de hardware do caixa eletrônico.
Ver a resposta

Resposta: B. Um caso de borda no limite exato: a condição deveria ser "valor <= saldo".

Sacar o saldo inteiro é uma entrada legítima e o algoritmo a recusa porque 100 < 100 é falso. É a família "limite exato": a fronteira entre o < e o <= decide o comportamento. O teste de mesa com o valor empatado no limite flagra esse bug em segundos.

Estudar a aula: Casos de borda: as entradas que derrubam algoritmos

Questão 64 · aula Caçando um bug de verdade: o método do detetive

Qual das frases abaixo é uma boa hipótese de bug?

  1. O programa está completamente errado e precisa ser reescrito.
  2. O computador deve estar com defeito hoje.
  3. A condição da linha 4 usa > onde deveria usar >=, por isso o valor empatado no limite é recusado.
  4. Alguma coisa em algum lugar não está funcionando direito.
Ver a resposta

Resposta: C. A condição da linha 4 usa > onde deveria usar >=, por isso o valor empatado no limite é recusado.

Boa hipótese é específica e testável: aponta a linha, o mecanismo e o sintoma que ela explica. Com ela, um único teste de mesa com o valor empatado no limite confirma ou derruba o palpite. As outras opções não indicam onde olhar nem que teste fazer, então não movem a investigação.

Estudar a aula: Caçando um bug de verdade: o método do detetive

Questão 65 · aula Melhorando um algoritmo que funciona (sem quebrar nada)

Depois de renomear variáveis e reorganizar um algoritmo que funcionava, o cálculo do troco passou a errar para pagamentos exatos. Como se chama esse fenômeno e o que o teria evitado?

  1. Coincidência: mexer em nomes não pode afetar o comportamento.
  2. Regressão: um comportamento que funcionava quebrou após a mudança; o teste de mesa com as mesmas entradas antes e depois teria flagrado.
  3. Caso de borda: o problema é do usuário que paga com valor exato.
  4. Depuração: é o nome de qualquer erro novo em código antigo.
Ver a resposta

Resposta: B. Regressão: um comportamento que funcionava quebrou após a mudança; o teste de mesa com as mesmas entradas antes e depois teria flagrado.

Comportamento que funcionava e quebrou após uma mudança é regressão, o risco central de toda melhoria. A vacina é fotografar o comportamento com teste de mesa antes de mexer (incluindo a borda do pagamento exato) e comparar depois: qualquer diferença aparece na hora, e não na frente do cliente.

Estudar a aula: Melhorando um algoritmo que funciona (sem quebrar nada)

Módulo 14: Lógica aplicada no mundo real

Questão 66 · aula Validando dados: nunca confie no que chega de fora

Por que o validador usa ENQUANTO, e não SE, para conferir a idade digitada?

  1. Porque o ENQUANTO executa mais rápido que o SE.
  2. Porque o ENQUANTO insiste até o dado vir válido; o SE conferiria uma única vez e deixaria o segundo erro passar.
  3. Porque o SE não aceita a condição idade < 0.
  4. Porque o ENQUANTO mostra mensagens de erro automaticamente.
Ver a resposta

Resposta: B. Porque o ENQUANTO insiste até o dado vir válido; o SE conferiria uma única vez e deixaria o segundo erro passar.

O SE testa uma vez e segue em frente: se a pessoa errar de novo, o valor ruim entra no programa. O laço ENQUANTO repete a explicação e a leitura quantas vezes forem necessárias, garantindo que só dado válido atravessa o portão.

Estudar a aula: Validando dados: nunca confie no que chega de fora

Questão 67 · aula Médias e aprovação: o sistema que decide o boletim

Numa escada de faixas, o que acontece se o programa testar "média >= 5" ANTES de "média >= 9"?

  1. Nada muda: a escada testa todos os degraus e escolhe o melhor.
  2. O programa trava, porque as condições entram em conflito.
  3. Toda média a partir de 5 para no primeiro degrau e recebe recuperação, inclusive o aluno de média 10.
  4. O SENÃO final deixa de funcionar.
Ver a resposta

Resposta: C. Toda média a partir de 5 para no primeiro degrau e recebe recuperação, inclusive o aluno de média 10.

A escada de SENÃO SE para no PRIMEIRO teste verdadeiro. Como 10 também é maior ou igual a 5, o aluno de média 10 cairia na faixa de recuperação. Por isso as faixas se testam da mais exigente para a menos exigente, sempre.

Estudar a aula: Médias e aprovação: o sistema que decide o boletim

Questão 68 · aula O jogo da adivinhação: seu primeiro jogo completo

Por que chutar o meio do intervalo é melhor que chutar 1, 2, 3 em sequência?

  1. Porque o meio tem mais chance de ser o número secreto.
  2. Porque cada dica de maior ou menor descarta metade dos números restantes, fechando 1 a 100 em no máximo 7 palpites.
  3. Porque o programa dá dicas melhores para palpites redondos.
  4. Porque a sequência 1, 2, 3 é proibida pelas regras do jogo.
Ver a resposta

Resposta: B. Porque cada dica de maior ou menor descarta metade dos números restantes, fechando 1 a 100 em no máximo 7 palpites.

O secreto tem a mesma chance em qualquer número; a vantagem do meio está na INFORMAÇÃO da dica. "Maior" ou "menor" a partir do meio elimina metade do intervalo de uma vez, enquanto o chute sequencial elimina um número por vez. É a intuição da busca binária.

Estudar a aula: O jogo da adivinhação: seu primeiro jogo completo

Questão 69 · aula O caixa eletrônico por dentro: portões que protegem dinheiro

No caixa eletrônico, por que a conferência de saldo vem ANTES de subtrair e entregar o dinheiro?

  1. Para o programa executar mais rápido.
  2. Porque subtrair primeiro deixaria a conta negativa antes de o programa descobrir que o saque era impossível.
  3. Porque a subtração só funciona com números positivos.
  4. Por tradição dos bancos, sem motivo técnico.
Ver a resposta

Resposta: B. Porque subtrair primeiro deixaria a conta negativa antes de o programa descobrir que o saque era impossível.

A ordem é a proteção: conferir depois de alterar o saldo é trancar a porta com o ladrão dentro. O portão (há saldo suficiente?) precisa barrar o caminho ANTES da ação que mexe no dinheiro. Esse princípio, conferir antes de agir, vale para todo dado importante de um sistema.

Estudar a aula: O caixa eletrônico por dentro: portões que protegem dinheiro

Questão 70 · aula Automações do cotidiano: sensor, condição e ação

O que diferencia o ciclo de monitoramento de um termostato do laço infinito acidental do módulo 9?

  1. Nada: todo laço que não termina é um erro.
  2. O ciclo de monitoramento é proposital: a automação deve vigiar sem parar enquanto o aparelho estiver ligado; o laço infinito acidental deveria terminar e não termina.
  3. O ciclo de monitoramento roda mais devagar, então não conta como laço.
  4. O laço infinito acidental usa ENQUANTO, e o ciclo de monitoramento usa PARA.
Ver a resposta

Resposta: B. O ciclo de monitoramento é proposital: a automação deve vigiar sem parar enquanto o aparelho estiver ligado; o laço infinito acidental deveria terminar e não termina.

A diferença é a intenção de projeto. O termostato precisa vigiar a sala o tempo todo, então o laço sem fim é a especificação. O laço infinito do módulo 9 é o acidente: um laço que tinha condição de parada, mas nunca a alcança. Mesmo mecanismo, papéis opostos.

Estudar a aula: Automações do cotidiano: sensor, condição e ação

Módulo 15: Da lógica para as linguagens reais

Questão 71 · aula O mesmo algoritmo em três línguas: você já sabe ler as três

Ao traduzir um algoritmo do pseudocódigo para Python ou JavaScript, o que muda de verdade?

  1. A lógica inteira precisa ser repensada do zero para cada linguagem.
  2. Só a grafia dos comandos: sequência, decisões e repetições continuam com a mesma estrutura.
  3. As decisões deixam de existir, porque as linguagens reais decidem sozinhas.
  4. A ordem das instruções deixa de importar nas linguagens reais.
Ver a resposta

Resposta: B. Só a grafia dos comandos: sequência, decisões e repetições continuam com a mesma estrutura.

A tradução é de superfície: escreva vira print ou console.log, o se vira if, a flecha vira sinal de igual. A estrutura do algoritmo (a parte difícil, que você já aprendeu) atravessa a ponte intacta.

Estudar a aula: O mesmo algoritmo em três línguas: você já sabe ler as três

Questão 72 · aula Sintaxe muda, lógica fica: a gramática de cada língua

Um programa Python usa > onde deveria usar >= e reprova quem tirou exatamente média 7. Que tipo de erro é esse?

  1. Erro de sintaxe: a máquina aponta a linha e não executa nada.
  2. Erro de lógica: a escrita está correta, o programa roda, mas o resultado trai a intenção.
  3. Erro de hardware: o computador não aguentou a comparação.
  4. Não é erro: > e >= são sempre equivalentes.
Ver a resposta

Resposta: B. Erro de lógica: a escrita está correta, o programa roda, mas o resultado trai a intenção.

O texto respeita todas as regras de escrita do Python, então a sintaxe passa e o programa executa. O problema é de raciocínio: a condição errada muda o resultado no caso de borda (média exatamente 7). É o tipo de erro que só o teste de mesa e os casos de borda do módulo 13 pegam.

Estudar a aula: Sintaxe muda, lógica fica: a gramática de cada língua

Questão 73 · aula Escolhendo a primeira linguagem sem cair em briga de torcida

Por que o ecossistema de uma linguagem importa na escolha da primeira?

  1. Porque linguagens sem ecossistema não têm sintaxe definida.
  2. Porque bibliotecas, documentação, comunidade e material de estudo definem o quão fácil será aprender e construir coisas reais com ela.
  3. Porque o ecossistema muda a lógica dos algoritmos que a linguagem aceita.
  4. Porque só linguagens com ecossistema grande rodam em computadores modernos.
Ver a resposta

Resposta: B. Porque bibliotecas, documentação, comunidade e material de estudo definem o quão fácil será aprender e construir coisas reais com ela.

A sintaxe você aprende em dias; é o ecossistema que acompanha você depois: bibliotecas prontas para não reinventar a roda, documentação para consultar e comunidade para tirar dúvida. A lógica dos algoritmos, essa é a mesma em qualquer linguagem, com ou sem ecossistema gigante.

Estudar a aula: Escolhendo a primeira linguagem sem cair em briga de torcida

Questão 74 · aula Lógica na era da IA: quem pensa continua sendo você

Por que quem domina lógica de programação escreve prompts melhores para gerar código?

  1. Porque a IA dá prioridade a usuários certificados em lógica.
  2. Porque a pessoa descreve o problema como um algoritmo: entrada, processamento, saída e casos de borda, o que reduz a ambiguidade do pedido.
  3. Porque prompts precisam ser escritos em pseudocódigo obrigatoriamente.
  4. Porque a lógica permite escrever prompts mais longos, e tamanho é o que importa.
Ver a resposta

Resposta: B. Porque a pessoa descreve o problema como um algoritmo: entrada, processamento, saída e casos de borda, o que reduz a ambiguidade do pedido.

A IA responde melhor a pedidos sem ambiguidade, e descrever entrada, processamento, saída e bordas é exatamente a habilidade de dar instrução clara que o curso treinou desde o módulo 1. O prompt bom é um algoritmo em prosa; o tamanho, sozinho, não vale nada.

Estudar a aula: Lógica na era da IA: quem pensa continua sendo você

Questão 75 · aula Seus próximos passos: a trilha continua no Python

Qual rotina tem mais chance de manter a lógica afiada depois do fim do curso?

  1. Maratonas de 3 horas de estudo, sempre que der vontade.
  2. Prática ativa curta e diária: cerca de 20 minutos escrevendo programas pequenos e revisando conceitos.
  3. Reler as aulas do curso uma vez por ano, sem escrever nada.
  4. Guardar o certificado e esperar a necessidade aparecer para retomar.
Ver a resposta

Resposta: B. Prática ativa curta e diária: cerca de 20 minutos escrevendo programas pequenos e revisando conceitos.

Consistência vence intensidade, e prática ativa vence releitura: são os dois princípios do método do curso, do módulo 1 até aqui. Vinte minutos diários escrevendo código cabem no pior dia da semana, e é isso que faz a rotina sobreviver aos meses.

Estudar a aula: Seus próximos passos: a trilha continua no Python

Módulo 16: Projeto final, pensando como programador

Questão 76 · aula Planejando o projeto: o organizador de despesas

Qual é o primeiro passo de um projeto de programação bem conduzido?

  1. Escrever o pseudocódigo o mais rápido possível para não perder a ideia.
  2. Entender o problema e listar as entradas e as saídas antes de escrever qualquer linha.
  3. Escolher a linguagem de programação mais moderna do mercado.
  4. Começar pelo relatório final, que é a parte que o usuário vê.
Ver a resposta

Resposta: B. Entender o problema e listar as entradas e as saídas antes de escrever qualquer linha.

Código escrito antes de entender o problema resolve o problema errado com perfeição. O plano (requisitos, entradas, saídas e a divisão em partes) vem primeiro; o pseudocódigo é a execução do plano, uma parte por vez.

Estudar a aula: Planejando o projeto: o organizador de despesas

Questão 77 · aula Parte 1: a entrada que não deixa passar dado ruim

No laço de validação "enquanto valor <= 0 faça", o que a condição descreve?

  1. O dado correto, para que o programa saiba quando aceitar.
  2. O dado errado: enquanto ele estiver assim, o programa repete a pergunta.
  3. A quantidade de vezes que o usuário pode errar antes de o programa fechar.
  4. O valor máximo que uma despesa pode ter no organizador.
Ver a resposta

Resposta: B. O dado errado: enquanto ele estiver assim, o programa repete a pergunta.

O laço de validação é um laço de rejeição: a condição descreve o dado inválido. Enquanto valor <= 0 for verdadeiro, o programa avisa e lê de novo; quando o usuário digita um valor positivo, a condição vira falsa e a execução segue com um dado confiável.

Estudar a aula: Parte 1: a entrada que não deixa passar dado ruim

Questão 78 · aula Parte 2: cada real no seu lugar, com SENÃO SE e acumuladores

Se a linha "totalGeral <- totalGeral + valor" fosse movida para DENTRO do degrau "se categoria = 1", o que aconteceria?

  1. Nada, porque o total geral é recalculado no relatório.
  2. O total geral passaria a contar só as despesas de moradia, ignorando as demais.
  3. O programa travaria com uma divisão por zero.
  4. O total geral dobraria, contando as despesas de moradia duas vezes.
Ver a resposta

Resposta: B. O total geral passaria a contar só as despesas de moradia, ignorando as demais.

Dentro do degrau, a soma só executa quando categoria = 1. Despesas de alimentação, transporte e outros deixariam de entrar no total geral, e o relatório mostraria um total menor que a realidade. Fora da escada, a soma é incondicional: toda despesa conta.

Estudar a aula: Parte 2: cada real no seu lugar, com SENÃO SE e acumuladores

Questão 79 · aula Parte 3: o relatório que transforma números em decisão

Por que os percentuais do relatório são calculados DEPOIS do laço de leitura?

  1. Porque divisões só funcionam fora de laços no pseudocódigo.
  2. Porque dentro do laço os acumuladores ainda estão mudando; o percentual só é definitivo com os totais finais.
  3. Porque calcular dentro do laço deixaria o programa rápido demais.
  4. Porque o comando escreva não pode aparecer dentro de um laço.
Ver a resposta

Resposta: B. Porque dentro do laço os acumuladores ainda estão mudando; o percentual só é definitivo com os totais finais.

O percentual depende do total geral FINAL. Durante o laço, cada nova despesa muda os acumuladores, então qualquer percentual calculado ali retrata um momento provisório. Depois do fim do laço os totais param de mudar, e a conta (parte / total) * 100 vira o resultado verdadeiro.

Estudar a aula: Parte 3: o relatório que transforma números em decisão

Questão 80 · aula Revisão geral e o caminho do certificado

Qual é a forma mais eficiente de revisar para o exame final?

  1. Reler as 80 aulas em ordem, de preferência na véspera.
  2. Refazer mini-provas, jogos e a fila de revisão, focando os conceitos fracos do mapa de conhecimento.
  3. Decorar as respostas das mini-provas, já que o exame usa as mesmas questões.
  4. Estudar apenas o módulo 16, porque o exame cobra só o projeto final.
Ver a resposta

Resposta: B. Refazer mini-provas, jogos e a fila de revisão, focando os conceitos fracos do mapa de conhecimento.

O exame é cumulativo e sorteado, então decoreba não funciona e releitura rende pouco. A recuperação ativa (testar-se com mini-provas, jogos e a fila de repetição espaçada), guiada pelo mapa de conhecimento, concentra o esforço exatamente onde você mais precisa.

Estudar a aula: Revisão geral e o caminho do certificado

Terminou a lista?

Quem acertou quase tudo já pode encarar o exame final do curso, com 20 questões sorteadas e aprovação a partir de 70%. Quem errou bastante ganha mais voltando às aulas dos módulos em que tropeçou: cada questão acima leva direto à aula certa.

Ir para o Curso de Lógica de Programação