Prévia do material em texto
<p>Introdução à Ciência da Computação</p><p>Lista 3 Resolvida – Introdução à Lógica de programação</p><p>Beatriz Cardoso Barbosa</p><p>Prof. Dr. Rogério Galante Negri</p><p>1. Apresente um algoritmo que resolva o problema “Monge vs. Canibais”</p><p>(Slide 16 da Aula 4).</p><p>R:</p><p>Dois canibais atravessam o rio.</p><p>- Margem esquerda: 3M 1C</p><p>- Margem direita: 2C</p><p>Um canibal retorna.</p><p>- Margem esquerda: 3M 2C</p><p>- Margem direita: 1C</p><p>Dois canibais atravessam novamente.</p><p>- Margem esquerda: 3M</p><p>- Margem direita: 3C</p><p>Um canibal retorna.</p><p>- Margem esquerda: 3M 1C</p><p>- Margem direita: 2C</p><p>Dois monges atravessam o rio.</p><p>- Margem esquerda: 1M 1C</p><p>- Margem direita: 2M 2C</p><p>Um canibal e um monge retornam.</p><p>- Margem esquerda: 2M 2C</p><p>- Margem direita: 1M 1C</p><p>Dois monges atravessam o rio.</p><p>- Margem esquerda: 2C</p><p>- Margem direita: 3M 1C</p><p>Um canibal retorna.</p><p>- Margem esquerda: 3C</p><p>- Margem direita: 3M</p><p>Dois canibais atravessam o rio.</p><p>- Margem esquerda: 1C</p><p>- Margem direita: 3M 2C</p><p>Um canibal retorna.</p><p>- Margem esquerda: 2C</p><p>- Margem direita: 3M 1C</p><p>Dois canibais atravessam o rio.</p><p>- Margem esquerda: vazio</p><p>- Margem direita: 3M 3C</p><p>2. Apresente um algoritmo que resolva o problema “Torre de Hanoi” (Slide</p><p>17 da Aula 4).</p><p>R:</p><p>Aste A: Az1, Vd1, Vm1</p><p>Aste C: Az2, Vd2, Vm2</p><p>Mover o Vd1 para aste B</p><p>Mover Vm1 e Vm2 para aste B</p><p>Mover Vd2 para aste A</p><p>Mover Vm1 e Vm2 para aste C</p><p>Mover Vd1 para aste A</p><p>Mover Vd1 e Vd2 para aste B</p><p>Mover Vm1 e Vm2 para aste B</p><p>Mover Az1 para aste C</p><p>Mover Vm1 e Vm2 para aste A</p><p>3. Apresente um algoritmo que resolva o problema “Calculadora Que-</p><p>brada” (Slide 18 da Aula 4).</p><p>R:</p><p>12 × 4 = 12 + 12 + 12 + 12</p><p>23 × 11 = 23 + 23 + 23 + 23 +.....</p><p>10 ÷ 2 = 10 - 5</p><p>175 ÷ 7 = 7 + 7 = 14 + 7 = 21 + 7 = n° + 7 = ..... até 175</p><p>4. No torneio de atletismo, José, Pedro e Eduardo participaram das provas</p><p>de 100 metros rasos, salto em distância e arremesso de dardos. Cada um</p><p>deles conseguiu um primeiro, um segundo e um terceiro lugar. Descubra</p><p>o que cada um conquistou, sabendo que:</p><p>• Pedro venceu José no salto à distância;</p><p>• Eduardo chegou atrás de Pedro no arremesso de dardo;</p><p>• José não chegou em primeiro nos 100 metros rasos.</p><p>R:</p><p>Arremesso</p><p>Salto</p><p>Corrida</p><p>José</p><p>Pedro</p><p>Eduardo</p><p>Pedro</p><p>Eduardo</p><p>José</p><p>Eduardo</p><p>José</p><p>Pedro</p><p>5. João tem três barris. No barril A, que está vazio, cabem 8 litros. No</p><p>barril B há 5 litros e no barril C 3 litros. O que João deve fazer para</p><p>deixar os barris A e B com 4 litros cada e o barril C vazio?</p><p>R:</p><p>Pegar 3L do C em colocar em A, pegar 1L do B e colocar no A</p><p>6. Elabore um algoritmo que mostre os passos necessários para trocar</p><p>um pneu de carro que está furado. Considere o seguinte conjunto de</p><p>situações:</p><p>• Trocar o pneu traseiro esquerdo;</p><p>• Trocar o pneu traseiro esquerdo, mas antes verificar se o estepe</p><p>está em condições de uso;</p><p>• Verificar se existe algum pneu furado, se houver, verificar o estepe</p><p>e então trocar o pneu correto.</p><p>Para cada algoritmo, faça um melhoramento do anterior, introduzindo</p><p>novas ações e alterando o fluxo de execução de forma compatível com</p><p>as situações apresentadas.</p><p>R:</p><p>1 - Verifique se existe um pneu furado</p><p>Se existir passo 2</p><p>Se não existir passo 2.1</p><p>2 - verifique se o estepe está em condições</p><p>Se estiver passo 3</p><p>Se não estiver passo 3.1</p><p>3 - levante o carro com o macaco-prego</p><p>4 - Remova os parafusos do pneu</p><p>5 - Retire o pneu furado e o substitua pelo estepe</p><p>6 - Aperte os parafusos do estepe</p><p>7 - Abaixe o carro e retire o macaco</p><p>3.1 - Procure assistência ou um novo estepe e passe para o passo 4</p><p>2.1 - Não há pneus furados, Fim</p><p>8 - Verifique se o resto dos pneus está em condições</p><p>Se estiver passo 9</p><p>Se não estiver passo 9.1</p><p>9 - Fim</p><p>9.1 - Repita o processo a partir do passo 2</p>