Baixe o app para aproveitar ainda mais
Prévia do material em texto
LÓGICA DE PROGRAMAÇÃO Igor Peterson O. Santos E-mail: igorpeterson@gmail.com VAMOS TREINAR NOSSO RACIOCÍNIO LÓGICO? Gaveta bagunçada • Sua gaveta de meias contém 10 pares de meias brancas e 10 pares de meias pretas. Suponha que você só possa pegar uma meia de cada vez e que você não possa ver a cor desta meia até que a retire da gaveta, quantas meias você terá que pegar até obter, no mínimo, um par de meias da mesma cor? Gaveta bagunçada • Resposta... • 3 meias. Na pior das hipóteses, você terá obtido, nas primeiras duas vezes, uma meia preta e outra branca. Na terceira é certo que você retirará uma meia que forme par com uma das anteriores. A Pesca • Três pessoas vão pescar: 2 pais e 2 filhos. Como isso é possível? A Pesca • Resposta... • As 3 pessoas são: o avô, o pai e o filho. Competidores Mentirosos • Isaac e Alberto contavam, muito empolgados, o resultado da Terceira Feira Anual Internacional de Ciências, realizada na Suécia. Na feira, havia 3 competidores: Luís, René e João. Isaac disse que Luís havia sido o vencedor, com René ficando em segundo lugar. Já Alberto, disse que João ganhou, com Luís em segundo. • Na verdade, nenhum dos dois contou inteiramente a verdade sobre os resultados da feira de ciências. O que ocorreu foi que cada um deu uma afirmação verdadeira e outra falsa sobre a classificação. Diga: Qual foi a verdadeira classificação dos competidores? Competidores Mentirosos • Resposta... • 1º João; 2° René; 3º Luís. Três garrafas de água • Existem três garrafas: a grande, com capacidade para 8 litros; a média, para 5 litros; a pequena, para 3 litros. A de 8 litros está cheia de água e as outras duas vazias. Como fazer para deixar quatro litros na grande e quatro litros na média apenas movimentando a água entre as garrafas? Três garrafas de água • Resposta... VAMOS AO ASSUNTO? LÓGICA DE PROGRAMAÇÃO Igor Peterson O. Santos Email: igorpeterson@gmail.com Agenda • Plano de ensino e Aprendizagem • Breve introdução à lógica de programação • Fluxograma Lógica de Programação • A lógica de programação tem o objetivo de estabelecer uma sequência lógica de passos que devem ser executados por um computador. • Um computador só entende o que deve fazer se receber instruções claras, bem definidas e em uma ordem correta. • A programação não pode ser feita utilizando a linguagem humana, ela utiliza a linguagem de máquina. Lógica • A lógica existe para ordenar o pensamento. • Ela é necessária no dia-a-dia das pessoas • Exemplos: • Nasci no Brasil. • Todos que nascem no Brasil são brasileiros. • Logo, sou brasileiro. • O dinheiro está no cofre. • O cofre está fechado. • Logo, preciso primeiro abrir o cofre, para depois pegar o dinheiro. Elaboração de um programa Problema Análise AlgoritmoPrograma Algoritmos • Ao formularmos um algoritmo, temos que ter em mente qual o nosso objetivo, quais as entradas que vamos precisar e quais as saídas que deveremos prover. Lógica de Programação e Sequência Lógica • LÓGICA DE PROGRAMAÇÃO: • Técnica de encadear pensamentos para atingir determinado objetivo • Necessária para desenvolver programas e sistemas, pois permite definir a sequência lógica para a solução de um problema • SEQUÊNCIA LÓGICA: 1. 2. 3. • Passos executados até se atingir o objetivo ou solução de um problema • Podem ser descritos como uma sequência de instruções, que devem ser seguidas para se cumprir uma determinada tarefa Instrução • Cada um dos passos, cada uma das ações a tomar (obedecendo a sequência lógica) para ir resolvendo o problema, ou para ir executando a tarefa • Em informática, é a informação que indica a um computador uma operação elementar a executar • Ex.: “somar”, “subtrair”, “comparar se é maior”, etc • Uma só instrução não resolve problemas reais • Executar um conjunto de instruções • Executar em uma sequência lógica Algoritmos • Sequência finita de passos que levam à execução de uma tarefa • Claro e preciso. Ex. “somar dois números”: • Escrever primeiro número no retângulo A • Escrever segundo número no retângulo B • Somar o número do retângulo A com o número do retângulo B e escrever o resultado no retângulo C A B C + = Algoritmos • Um algoritmo é uma sequência de passos para atingir um objetivo. Exemplo de algoritmo • EXEMPLO: para “fazer omelete” • Instruções: “quebrar ovos”, “bater ovos”, “pôr sal”, “ligar fogão”, “pôr óleo na frigideira”, “pôr frigideira no fogo”, “fritar ovos batidos”, etc... • Quanto às instruções isoladas: • Só “quebrar ovos”, ou só “pôr óleo na frigideira”, não é suficiente para cumprir a tarefa “fazer omelete” • Quanto à seqüência lógica: • Se executarmos “fritar ovos batidos” antes de “bater ovos”, ou pior, antes de “quebrar ovos”, não iremos cumprir a tarefa “fazer omelete” Exemplo de algoritmo Quando uma dona de casa prepara um bolo, segue uma receita, que nada mais é do que um algoritmo em que cada instrução é um passo a ser seguido para que o prato fique pronto com sucesso: 1. Bata 4 claras em neve 2. Adicione 2 xícaras de açúcar 3. Adicione 2 colheres de farinha de trigo, 4 gemas, uma colher de fermento e duas colheres de chocolate 4. Bata por 3 minutos 5. Unte uma assadeira com margarina 6. Coloque o bolo para assar por 20minutos a 200 graus C Exemplo de algoritmo Um motorista que necessita efetuar a troca de um pneu furado segue uma rotina para realizar essa tarefa: 1. Verifica qual pneu está furado 2. Solta os parafusos deste pneu 3. Posiciona o macaco e levanta o carro 4. Retira os parafusos 5. Pega o estepe 6. Substitui o pneu furado 7. Recoloca os parafusos 8. Desce o carro 9. Termina de apertar os parafusos 10. Guarda o macaco e o pneu furado Numere as sequências abaixo de acordo com a ordem de execução Algoritmo para verificar se passou por média. • ( ) calcular média • ( ) pegar as notas das provas • ( ) estudar para prova final • ( ) verificar se passou por média Numere as sequências abaixo de acordo com a ordem de execução Algoritmo para verificar se passou por média. • (3) calcular média • (2) pegar as notas das provas • (1) estudar para prova final • (4) verificar se passou por média Numere as sequências abaixo de acordo com a ordem de execução Algoritmo para comer em um restaurante. • ( ) Assinar boleto do cartão de crédito • ( ) Sair do restaurante • ( ) Comer • ( ) Entregar cartão de crédito • ( ) Pedir a conta • ( ) Pedir a refeição • ( ) Entrar no restaurante Numere as sequências abaixo de acordo com a ordem de execução Algoritmo para verificar se passou por média. • (6) Assinar boleto do cartão de crédito • (7) Sair do restaurante • (3) Comer • (5) Entregar cartão de crédito • (4) Pedir a conta • (2) Pedir a refeição • (1) Entrar no restaurante Linguagem de Programação • Um programa de computador deve sempre ser escrito em uma linguagem de programação. • Ex: Java, C, C++, C#, PHP, JavaScript, Assembly, etc. • A escrita de um algoritmo em uma linguagem de programação é chamada de implementação. A importância dos Algoritmos • Algoritmos são importantes porque permitem representar os passos para chegar a um objetivo de forma independente da linguagem de programação utilizada. • É possível focar apenas na resolução do problema, deixando de lado os aspectos computacionais. • Os algoritmos devem ser bastante detalhados a fim de que possam ser traduzidos para uma linguagem de programação.Pseudocódigo • Um algoritmo deve ser escrito de forma que permita fácil interpretação e codificação. • Facilita descrever o algoritmo antes de passá-lo para uma linguagem de programação • Intermediário: entre a linguagem natural e uma linguagem de programação Pseudocódigo • Descrição do algoritmo, menos rigorosa que na linguagem de programação (código fonte) • Fácil de entender e fácil de codificar depois • Independente da linguagem de programação • Simples e objetivo Pseudocódigo • Exemplo de cálculo de média escolar, para verificar se o aluno passou de ano. Fluxograma • Possibilita representar um algoritmo graficamente; • É uma forma universal de representação, que se utiliza de figuras geométricas para ilustrar passos a serem seguidos para a resolução de problemas. Fluxograma • Exemplo de cálculo de média escolar, para verificar se o aluno passou de ano.
Compartilhar