Prévia do material em texto
Pensamento lógico e capacidade de abstração são habilidades úteis na elaboração de programas de computador. Tais habilidades podem ser desenvolvidas e melhoradas através da resolução de exercícios que necessitam apenas de raciocínio e bom senso. 1. Dois amigos, que não se viam há muitos anos, se encontram na rua. Depois de uma pequena conversa, um deles descobre que o outro é professor de Matemática e propõe- lhe um desafio: “Hoje meus três filhos celebram seus aniversários e eu gostaria que você determinasse as idades deles”. O professor aceita o desafio e pede mais informações sobre os filhos. “A primeira informação é que o produto de suas idades é 36”. Ainda sem elementos suficientes, o matemático pede mais informações. “A soma das idades dos meus três filhos é igual ao número de janelas daquele edifício”. Ainda sem ser capaz de resolver o problema, o matemático pede mais informação. “O meu filho mais velho tem olhos azuis”. Com esta informação o matemático diz: “Já sei quais são as idades”. E você? 2. O problema das Torres de Hanói é objeto de estudo de disciplinas avançadas da área de Computação. Concebido em 1883 pelo matemático francês Édouard Lucas, consiste de um quebra-cabeças composto por um conjunto de discos de diferentes diâmetros que devem ser movidos entre 3 torres até que todos os discos estejam em uma torre diferente da torre original. Os movimentos devem obedecer 2 regras: • Mover apenas um disco por vez. • Um disco de diâmetro maior não pode ser colocado sobre um disco de diâmetro menor. Segundo a lenda, o jogo foi inspirado numa versão “real” existente em um mosteiro em Hanói. Neste mosteiro, monges ocupam-se da tarefa de mover 64 discos de ouro entre 3 torres de marfim. Quando eles conseguirem mover todos os discos para a torre de destino o universo deixará de existir. a) Suponha que você conta com um agente (computador) que irá auxiliá-lo na execução da tarefa de resolver o problema com 5 discos. Utilizando apenas o comando MOVER(origem, destino) estabeleça uma seqüência de operações para resolver o problemas das Torres de Hanói com 5 discos. Lab 1. Introdução à programação de computadores A B C Programação de Computadores I – 2020 Prof. Marcos A. Pereira UNESP/FEG/DMA b) Para um jogo com n discos, o menor número de movimentos M possível é calculado pela fórmula: M = 2n – 1 Qual é o menor número possível de movimentos necessários para resolver o problema dos monges? Se os movimentos forem realizados à razão de um por segundo, quanto tempo levará para resolver o problema com 64 discos? 3. Algumas dicas para facilitar a organização do seu trabalho: a) Abra uma janela do navegador no endereço: https://drive.google.com e informe suas credenciais de login (as mesmas utilizadas para acesso ao SISGRAD). b) (Este passo só precisa ser executado na primeira vez) No painel à esquerda, clique Novo > Pasta, digite “PC-I” e clique no botão Criar. c) Dê um duplo clique na pasta PC-I para abri-la. d) Abra o programa CETUS e realize as atividades previstas. d) Quando solicitado, salve o arquivo-fonte na Área de Trabalho, no seguinte formato: Lab 1, exercício 2, item b ! lab1_2b.c f) Sempre salve com a extensão .c. Nunca use espaços em branco no nome do arquivo. h) Ao final das atividades, arraste seus arquivos da Área de Trabalho para a janela da pasta PC-I no Google Drive. 4. O CETUS a) Identifique os principais elementos do ambiente integrado de desenvolvimento CETUS. b) Crie um novo arquivo. c) Na área de edição digite os comandos mostrados na figura abaixo: https://drive.google.com d) Salve o programa com o nome lab1.c. e) Compile e execute. f) Modifique o programa, removendo os símbolos \n do final das expressões entre aspas. Compile e execute novamente. O que aconteceu? g) Modifique o programa, incluindo os símbolos \n entre cada palavra das expressões entre aspas. Compile e execute novamente. O que aconteceu? h) Usando a função printf(), escreva comandos para exibir seu nome e o nome do seu curso.