UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: Bacharelado em Ciências e Tecnologia INFORMÁTICA APLICADA AULA 01 ALGORITMOS Profª ª Danielle Casillo
O que é lógica? NOÇÕES DE LÓGICA A lógica trata da correção do pensamento Por que pensamos assim? Por que não pensamos de outro jeito? Ensina-nos a usar corretamente as leis do pensamento É a arte de pensar corretamente A forma mais complexa do pensamento é o raciocínio Ordem da razão (nossa razão pode funcionar desordenadamente) ou ordem no pensamento 2
Exemplo: NOÇÕES DE LÓGICA Todo mamífero é animal. Todo cavalo é mamífero. Portanto, todo cavalo é animal. Brasil é país do planeta Terra. Todos os Brasileiros são do Brasil. Portanto, todos os Brasileiros são terráqueos. 3
EXISTE LÓGICA NO DIA-A-DIA? DIA? Sempre que pensamos. Quando falamos, pois a palavra falada é a representação do pensamento. Quando escrevemos, pois a palavra escrita é a representação da palavra falada ou mesmo do nosso pensamento. Daí a importância da lógica em nossa vida, pois quando pensamos, escrevemos ou falamos corretamente precisamos colocar Ordem no Pensamento. 4
Exemplos: Aula 01 - Algoritmos EXISTE LÓGICA NO DIA-A-DIA? DIA? a) A gaveta está fechada. A agenda está na gaveta. Preciso primeiro abrir a gaveta, para depois pegar a agenda. b) Ana é mais velha do que João João é mais velho do que Pedro Portanto, Ana é mais velha do que Pedro. 5
O QUE É ALGORITMO Algoritmo é uma sequência de passos (ações) que visam atingir um objetivo bem definido. [Forbellone, 1999]. Algoritmo é a descrição de uma sequência de passos que deve ser seguida para a realização de uma tarefa. [Ascencio, 1999]. Algoritmo são regras formais para a obtenção de um resultado ou da solução de um problema, englobando fórmulas de expressões aritméticas. [Manzano, 1997]. 6
Exemplo: O QUE É ALGORITMO Receita de bolo, onde você tem uma série de ingredientes necessários, uma sequência de diversos passos a serem cumpridos para que se consiga fazer determinado tipo de bolo (objetivo bem definido). Mapa para se chegar à escola, que também possui uma sequência de passos a serem seguidos e um objetivo bem definido. 7
O QUE É UMA AÇÃO? Ação é um acontecimento que a partir de um estado inicial, após um período de tempo finito, produz um estado final previsível e bem definido. O QUE É UM ESTADO? Estado é a situação atual de dado objeto. 8
REDEFININDO ALGORITMO Algoritmo é a descrição de um conjunto de ações que, obedecidas, resultam numa sucessão finita de passos, atingindo o objetivo. Algoritmo destina-se a resolver um problema: fixa um padrão de comportamento a ser seguido, uma norma de execução a ser trilhada, com vistas a alcançar, como resultado final, a solução de um problema. 9
ALGORITMO Imagine a sequência de números: 1, 6, 11, 16, 21, 26... Qual seria o sétimo elemento da série? Para isto, precisamos definir qual a sua regra de formação, ou seja, o seu padrão de comportamento. (temos uma constante entre cada número, sendo o sétimo elemento o número 31). 10
ALGORITMO Problema de uma lâmpada queimada que deve ser trocada, atividade bem cotidiana Pegue uma escada; Posicione-a embaixo da lâmpada; Busque uma lâmpada nova; Suba na escada; Retire a lâmpada; Coloque uma lâmpada nova. 11
ALGORITMO O objetivo de trocar a lâmpada queimada pode ser atingido com tal algoritmo que descreve a sequência de passos a ser seguida. Porém, e se a lâmpada não estiver queimada? podemos efetuar um teste antes de trocá-la. pegue uma escada; posicione-a embaixo da lâmpada; busque uma lâmpada nova; ligue o interruptor; SE a lâmpada não acender, então: suba na escada; retire a lâmpada; coloque uma lâmpada nova. O que aconteceu neste algoritmo foi a inclusão de um teste seletivo que determina quais ações serão executadas, dependendo de uma condição. 12
ALGORITMO Otimização do algoritmo anterior o algoritmo anterior permite que se pegue a escada e uma lâmpada nova sem saber se serão necessárias. ligue o interruptor; SE a lâmpada não acender, então: pegue uma escada; posicione posicione-a embaixo da lâmpada; busque uma lâmpada nova; suba na escada; Retire a lâmpada; coloque uma lâmpada nova. 13
ALGORITMO E se a lâmpada nova não funcionar? O objetivo portanto não foi atingido. Devemos então trocar a lâmpada diversas vezes, até que funcione. ligue o interruptor; SE a lâmpada não acender, então: pegue uma escada; posicione-a embaixo da lâmpada; busque uma lâmpada nova; suba na escada; retire a lâmpada; coloque uma lâmpada nova. ENQUANTO a lâmpada não acender: O fluxo sequencial de execução foi alterado de forma que após a ação coloque outra lâmpada o teste se a lâmpada não acender volte a ser executado o número de vezes necessário para se atingir o objetivo. (fluxo repetitivo) retire a lâmpada; 14 coloque outra lâmpada.
1. Um PROBLEMAS DE LÓGICA Um homem precisa atravessar um rio com um barco que possui capacidade para carregar apenas ele mesmo e mais uma de suas três cargas, que são: um lobo, uma ovelha e uma caixa de alfafa. Indique as ações necessárias para que o homem consiga atravessar o rio sem perder as cargas. Observações: O lobo não pode ficar sozinho com a ovelha, senão ele a come. A ovelha não pode ficar sozinha com a alfafa, senão a come. 15
PROBLEMAS DE LÓGICA 2. Três jesuítas e três canibais precisam atravessar um rio; para tal dispõem de um barco com capacidade para duas pessoas. Por medidas de segurança, não se deve permitir que em alguma margem do rio a quantidade de jesuítas seja inferior à de canibais (senão o canibal come o jesuíta). Elabore um algoritmo indicando as ações que concretizam a travessia com segurança. 16
PROBLEMAS DE LÓGICA 3. Uma família de 5 pessoas precisa atravessar uma ponte. Cada um atravessa a ponte em um período de tempo diferente. O homem alto atravessa em 1 segundo. O homem baixo atravessa em 3 segundos. A mulher atravessa em 6 segundos. O gordo atravessa em 8 segundos e o velho atravessa em 12 segundos. É noite e eles possuem apenas uma lanterna, sendo que a lanterna permanece acesa durante 30 segundos. Somente podem atravessar a ponte no máximo 2 pessoas por vez e não é permitido a travessia para qualquer um dos lados sem que alguém carregue a lanterna. O tempo gasto para atravessar será o tempo gasto pela pessoa mais lenta. (Ex: se o alto (1s) e o velho (12 12s) atravessarem juntos, o tempo da travessia será de 12s) s). Qualquer integrante da família pode ir e voltar quantas vezes for necessário. Atravesse todos os integrantes da família antes que a lanterna apague. 17
PROBLEMAS DE LÓGICA 4. TORRE DE HANOI. Mova três discos da base b para a base a. Pode-se mover um disco de cada vez para qualquer base, contanto que nunca seja colocado um disco maior sobre um menor. 1 2 3 (a) (b) (c) 18
PROBLEMAS DE LÓGICA 5. Três casais vivem em uma mesma cidade. Com base nas informações, descobrir o nome de cada marido, sua profissão e o nome de sua esposa. O médico é casado com Maria Paulo é advogado Patrícia não é casada com Paulo Carlos não é médico. 19
Carlos Luis Paulo Lúcia Patrícia Maria PROBLEMAS DE LÓGICA Medico Engenheiro Advogado Lúcia Patrícia Maria Como usar a tabela: Marcar com um V todas as afirmações e marcar um F as casas restantes da mesma linha e coluna onde marcou a afirmação. O médico é casado com Maria Paulo é advogado 20
PROBLEMAS DE LÓGICA Marido Esposa Profissão Carlos Patrícia Engenheiro Luis Maria Médico Paulo Lúcia Advogado 21