Lógica de Programação

Documentos relacionados
INTRODUÇÃO À PROGRAMAÇÃO. Introdução à Algoritmos. Prof. Me. Sérgio Carlos Portari Júnior

Desenvolvimento de Algoritmos. Slides elaborados pela Prof(a). Simone do Rocio Senger de Souza ICMC/USP

GFM015 Introdução à Computação. Algoritmos. Ilmério Reis da Silva UFU/FACOM

Prof. Paulo Villa Aula 1

INTRODUÇÃO A PROGRAMAÇÃO

Aula 1: Desenvolvimento de Algoritmos

INFORMÁTICA APLICADA AULA 01 ALGORITMOS

Desenvolvimento de algoritmos Desenvolvimento de Algoritmos

Lógica de Programação

Universidade Federal de Goiás Instituto de Informática

Lógica de Programação FORBELLONE, André Luis e EBERSPACHER, Henri (PLT)

Lógica de Programação

Lógica de Programação

Desenvolvimento de Algoritmos. RAD 2119 Tecnologia de Informação Aplicada a Administração. Essa aula. Lógica e Pensamento Lógico. Lógica.

Apresentação. !! Familiarização com os métodos de construção de compiladores de linguagens e com as técnicas de compilação mais habituais.

Lógica e Linguagem de Programação Aula 01 - Introdução Exercícios Propostos - RESPOSTAS Professor: Danilo Giacobo

REGIME DE TRANSIÇÃO DA LICENCIATURA EM INFORMÁTICA

UFCD 0804 Algoritmos

Apresentação da Disciplina

Algoritmo: Definição. Algoritmo. O que é Lógica? Lógica de Programação. Mas e a Lógica de Programação?

Computação Eletrônica

Algoritmos e Programação. Ederson Luiz da Silva Ciência da Computação

Algoritmos e Linguagem de Programação I

Introdução a Computação

Algoritmos. 1 - Introdução à construção de Algoritmo pode ser definido como um conjunto finito de regras bem

Introdução a Programação

DOCUMENTO DE ADEQUAÇÃO MESTRADO EM ENGENHARIA INFORMÁTICA FACULDADE DE CIÊNCIAS E TECNOLOGIA UNIVERSIDADE NOVA DE LISBOA PEÇA B

PPM CONTEÚDO. Lógica de programação Programação para manufatura Sistemas supervisorios PROGRAMAÇÃO PARA MANUFATURA 05/03/2009

Algoritmos e Programação

Algoritmos e Técnicas. Lógica de Programação. É a técnica de encadear pensamento para atingir determinado objetivo.

- Aula 01, 02, 03 e 04 Apresentação da disciplina.

Algoritmos Lógica e Programação

Introdução a Programação de Jogos IUE1503

Algoritmos e Técnicas de Programação

Programação Básica de Computadores

Introdução à Lógica de Programação

Aula 1 - Introdução Cleverton Hentz

Introdução à Algoritmia

INTELIGÊNCIA ARTIFICIAL. Prof. Cedric Luiz de Carvalho

Seguindo Instruções. Linguagens de Programação Algoritmos. Introdução à Ciência da Computação. Prof. Edison Ishikawa

ALGORITMOS CONCEITOS PRELIMINARES. Prof. Angelo Augusto Frozza, M.Sc.

A Matemática como Serviço a Ciência da Computação. Prof. Dr. Carlos Eduardo de Barros Paes Coordenador do Curso de Ciência da Computação

LICENCIATURA EM ENGENHARIA DE REDES DE COMUNICAÇÃO E INFORMAÇÃO EQUIVALÊNCIAS ENTRE PLANOS CURRICULARES. Plano Curricular

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

Aula 08 Introdução à Algoritmos. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

Aula Bibliografia - Definições - Operadores - Criação de um algoritmo - Exercícios. Algoritmo e Programação. Prof.

Notas sobre Definições Recursivas

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

INTRODUÇÃO A LÓGICA DE PROGRAMAÇÃO

Algoritmos I Aula 2 Lógica de Programação

Fundamentos de Programação

BACHARELADO EM SISTEMAS DE INFORMAÇÃO MATEMÁTICA DISCRETA Aula 1 - Apresentação da disciplina

TÉCNICO EM MANUTENÇÃO E SUPORTE EM INFORMÁTICA FORMA SUBSEQUENTE. Professora: Isabela C. Damke

3.1 - O que é um diagrama de bloco? Simbologia... 11

Resolução de Problemas. Universidade Católica de Pelotas Engenharia da Computação Disciplina: Inteligência Artificial

Fundamentos de Programação

1º PERÍODO Carga horária Teórica Prática Total

5. Expressões aritméticas

BCC 701 Programação de Computadores I

Programação Estruturada Aula - Introdução a Linguagem de Programação

CONCEITOS DE ALGORITMOS

A palavra ALGORITMO teve origem com um Matemático Persa, al. Khawarizmi. O seu trabalho mais famoso foi Al-jabr walmuquabalah,

ALGORITMOS AULA 1. Profª Amanda Gondim

Pseudocódigo e Visualg

Capítulo 1 - Lógica e Algoritmos

Microcontroladores. Programação: fluxogramas, pseudocódigos e lógica. Prof. Daniel

LÓGICA COMPUTACIONAL. Prof. André Aparecido da Silva Disponível em:

Algoritmos e Programação. Noções de Lógica e Algoritmos Tarcio Carvalho

Funcionamento do computador. Conceito e definição de algoritmos. Prof. Alex Camargo

Paradigma Simbólico. Sistemas de Informação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 2)

Fundamentos de Programação

Estruturas de Dados Apresentação

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

Fig.1: Ilustração de Lógica Fonte: Internet

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

Introdução à Computação

Matriz Curricular Curso de Licenciatura em Computação Habilitação: Licenciatura em Computação

Transcrição:

Lógica de Programação Universidade dos Açores Departamento de Matemática www.uac.pt/~hguerra!! do Gr. logiké, arte de raciocinar!! s. f., ciência que tem por objecto o estudo dos métodos e princípios que permitem distinguir raciocínios válidos de outros não válidos; ligação de ideias; coerência; parte da Filosofia que estuda as leis do raciocínio; continuidade no raciocínio. 2008/09 Algoritmos 2

!! Coerência!! Racionalidade!! É a arte de bem pensar 2008/09 Algoritmos 3!! Uso correcto!! das leis do pensamento, da ordem e da razão!! de processos de raciocínio e de simbologias formais que conduz ao desenvolvimento de técnicas para a produção de soluções 2008/09 Algoritmos 4

!! do Lat. ratiociniu, cálculo!! s. m., acto ou faculdade de raciocinar;!! uso da razão;!! encadeamento de argumentos ou juízos para chegar a uma demonstração;!! juízo;!! ponderação. 2008/09 Algoritmos 5!! É algo abstracto e intangível!! Pode-se representar de diferentes formas (verbais, escritas)!! Na lógica da programação pode-se representar em diferentes linguagens de programação 2008/09 Algoritmos 6

!! Representação do raciocínio da lógica de programação!! É uma sequencia de passos (instruções) não ambíguos que especificam exactamente o que deve ser feito 2008/09 Algoritmos 7!! É uma sequencia de instruções não ambíguas que podem ser executadas automaticamente em tempo finito!! É um algoritmo escrito numa linguagem de programação!! Está sempre associado a um determinado objectivo!! Constitui a solução do problema!! A execução do programa (algoritmo) garante que o seu objectivo é atingido 2008/09 Algoritmos 8

!! do Lat.! algorithmos < Ár. Alkharizmi!! s. m., Mat.,!! forma da geração dos números;!! processo de cálculo em que um certo número de regras formais resolvem, na generalidade e sem excepções, problemas da mesma natureza;!! qualquer procedimento que permita mecanizar a obtenção de resultados de tipo determinado, podendo um resultado ser obtido por mais do que um algoritmo;!! S.m., Inform., conjunto de etapas bem definidas necessárias para chegar à resolução de um problema. 2008/09 Algoritmos 9!! Rigoroso!! Eficaz!! Termina 2008/09 Algoritmos 10

!! Sim.!! Permite que nos concentremos na (lógica da construção da) solução, abstraindo-nos de detalhes computacionais que podem ser acrescentados mais tarde!! Podem ser reutilizáveis em diferentes linguagens de programação 2008/09 Algoritmos 11!! Problema: Uma lâmpada de um candeeiro de tecto não acende 2008/09 Algoritmos 12

!! Estuda metodologias de desenvolvimento de programas!! Estuda a arquitectura dos programas!! Utiliza técnicas desenvolvidas em vários domínios da Informática (Inteligência Artificial, Bases de Dados, Interacção gráfica, )!! Abordada seguindo diferentes paradigmas (imperativo, com objectos, funcional, lógico, )!! Desenvolvimento de aplicações concretas!! Desenvolvimento de sistemas operativos É um mundo em constante evolução 2008/09 Algoritmos 13 Arquitectura de programas Imperativo I. A. funcional Bases de dados Técnicas PROGRAMAÇÃO Paradigmas Com objectos Interfaces gráficas Lógico Sistemas operativos Arquitectura de computadores 2008/09 Algoritmos 14

Matemática discreta Álgebra Arquitectura de computadores Especificações Estruturas de informação Abstrações Controle Processadores de linguagens Processo computacional Programa Linguagem Estudo de linguagens formais Complexidade computacional Algoritmo Computabilidade Fundamentos Teoria da Computação 2008/09 Algoritmos 15 Nos cerca de 50 anos de vida da Informática, largas centenas de linguagens de programação foram desenvolvidas. Algumas, frutos de modas e caprichos, tiveram uma vida muito curta, outras sobreviveram dezenas de anos. Seja qual for a evolução futura das linguagens de programação, os conceitos subjacentes às linguagens persistem. Daí a sua grande importância neste mundo em constante evolução que é a Programação. [J. P. Martins e M R. Cravo, Programação em scheme, IST Press, 2004] 2008/09 Algoritmos 16

!! Um homem precisa atravessar um rio com um barco que possui capacidade para apenas uma pessoa e um lobo, ou uma cabra ou um repolho. O que é que o homem tem de fazer para atravessar o rio sem perder o lobo, a cabra e o repolho, atendendo a que o lobo e a cabra não podem ficar sozinhos numa das margens, nem a cabra e o repolho. Escreva um algoritmo que mostre todas as acções necessárias para efectuar uma travessia segura. 2008/09 Algoritmos 17!! Três jesuítas e três canibais pretendem atravessar um rio. Para tal, dispõem de um barco com capacidade para duas pessoas. Por segurança, não se deve permitir que numa das margens o número de Jesuítas seja inferior ao número de canibais. Elabore um algoritmo que mostre as acções que concretizam uma travessia segura. 2008/09 Algoritmos 18

!! Elabore um algoritmo que mostre os passos necessários para trocar um pneu de um carro nas seguintes situações: (i) (ii) Troca do pneu esquerdo traseiro; Troca do pneu esquerdo traseiro, verificando antes se o pneu de reserva está em condições de ser usado (iii) Verificar se existe algum pneu furado; se houver, verificar o pneu de reserva e trocar o pneu correcto. 2008/09 Algoritmos 19!! O puzzle da Torre de Hanói é constituído por três postes verticais, nos quais podem ser colocados discos de diâmetros diferentes furados no centro, variando o número de discos de puzzle para puzzle. O puzzle inicia-se com todos os discos no poste da esquerda e a finalidade é movimentar todos os discos para o poste da direita de acordo com as seguintes regras (1) apenas se pode movimentar um disco de cada vez (2) em cada poste, apenas se pode movimentar o disco de cima (3) nunca se pode colocar um disco sobre outro disco de diâmetro menor 2008/09 Algoritmos 20

!! Considere uma calculadora comum com quatro operações (soma, subtracção, multiplicação e divisão) mas que tem inoperacionais as teclas de multiplicação e divisão.!! Escreva algoritmos que resolvam as seguintes expressões matemáticas, usando apenas as operações de soma e subtracção!! 12 x 4!! 23 x 11!! 10 / 2!! 175 / 7!! 2^8 2008/09 Algoritmos 21!! Resolva o problema das Torres de Hanói com 3 discos 2008/09 Algoritmos 22

!! Resolva o problema das Torres de Hanói com 4 discos 2008/09 Algoritmos 23