UFCD 0804 Algoritmos

Documentos relacionados
Programação Mestrado Integrado em Engenharia Aeronáutica 1º ano, 1º semestre. T. 04 Algoritmos e Programação Estruturada

Sessão 2 UFCD 0804 Algoritmos

Introdução à Algoritmia

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

Programação de Computadores III

Programação de Computadores IV. Introdução a Algoritmos SLIDES CEDIDOS POR Bruno Marques

Programação de Computadores:

Introdução à Programação. slides de Deise Sacol

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

Lógica de Programação

Capítulo 1 - Lógica e Algoritmos

CURSO de NIVELAMENTO INTRODUÇÃO À PROGRAMAÇÃO

Técnicas de Programação

Algoritmos Computacionais

Programação de Redes de Computadores

ALGORITMOS AULA 1. Profª Amanda Gondim

INTRODUÇÃO A PROGRAMAÇÃO

Aula 02. Algoritmos e Pseudocódigo

INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO. ANÁLISE E DESENVOLVIMENTO DE SISTEMAS/PARANGABA PROF. MS. RONNISON REGES VIDAL Ceará, 01 de fevereiro de 2017

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

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

Introdução à Programação

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

É neste ponto que entra o conceito de lógica de programação.

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

Algoritmos e Linguagem de Programação I

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

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

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

01/08/2011. Introdução Lógica Sequencia lógica Instruções Algoritmos Programas. Lógica. Lógica na programação. Instrução.

Aula 1 - Introdução Cleverton Hentz

Ciência da Computação. Prof. Dr. Leandro Alves Neves Prof. Dr. Adriano Cansian

Conceitos Básicos ENTRADA PROCESSAMENTO SAÍDA

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

Introdução à Lógica de Programação. Adaptação de Luis Otavio Alvares

CONCEITO DE COMPUTADOR. O que é um computador?

Introdução à Algoritmos. Professora: Fabíola Gonçalves.

Unidade 2: Algoritmos e programação

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

Aula 4B. Lógica e Algoritmos. Profª. Fabiany

LÓGICA DE PROGRAMAÇÃO INTRODUÇÃO À PROGRAMAÇÃO DE COMPUTADORES

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

Algoritmos e Programação

Fundamentos de Lógica e Algoritmos. Aula 2.3 Introdução a Algoritmos. Prof. Dr. Bruno Moreno

Computadores = cérebros eletrônicos?

Algoritmos e Técnicas de Programação Introdução Givanaldo Rocha de Souza

Introdução à Programação. Ceça Moraes

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

Algoritmos e Fluxogramas

Algoritmo. pegar uma escada; posicionar embaixo da lâmpada; buscar uma lâmpada nova; ligar o interruptor; se a lâmpada não acender, então:

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

Curso Profissional de Gestão e Programação de Sistemas Informáticos. Programação e Sistemas de Informação. Módulo 1. 2ª Parte Prof. Sandra Pais Soares

#Conceituação. Algoritmos. Eliezio Soares

Conceitos Básicos. Professor: Juliano Lucas Gonçalves.

Algoritmia e Programação. Algoritmos & Fluxogramas

Algoritmos e Programação

Algoritmos e Programação de Computadores Disciplina:

ALGORITMOS ALGORITMOS ALGORITMOS. Natureza dos passos. Apresentação das Estruturas de Algoritmos - Fluxograma

Lógica de Programação

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi

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

Programação para Ciências Biológicas

Introdução ao Conceito de Algoritmo e Programação Estruturada

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

Algoritmo. Conjunto finito de instruções que permitem a realização de uma tarefa. 2.1: Introdução 2. ALGORITMOS

Desenvolvimento de algoritmos Desenvolvimento de Algoritmos

Disciplina de Algoritmos e Programação

AULA 02. Lógica de Programação. Centro Educação Profissional Ezequiel Ferreira Lima CEPEF. Curso Técnico em Eletrônica.

Introdução à Computação

Aula 02 ALGORITMOS. Introdução à Computação

INTRODUÇÃO A ALGORITMOS

Algoritmos e Técnicas de Programação

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

AULA 02. OBJETIVO: Desenvolvimento e solução de Algoritmos. LÓGICA DE PROGRAMAÇÃO

Algoritmos e Programação

Ivanovitch Medeiros Dantas da Silva. Natal, 01 de setembro de 2011

INTRODUÇÃO À PROGRAMAÇÃO

Transcrição:

UFCD 0804 Algoritmos Reconhecer e desenvolver algoritmos. Introdução à Lógica de Programação Antes de se começar com uma Linguagem de Programação, temos de ser capazes de estruturar o nosso raciocínio para que quando nos colocam um problema, termos um controle sobre a lógica que atribuímos ao problema de forma a conseguir concluir a solução sem erros. 1

Então o que é lógica? Lógica de programação é a técnica de encadear pensamentos para atingir determinado objectivo. Instruções Na linguagem comum, entende-se por instruções um conjunto de regras ou normas definidas para a realização ou emprego de algo. Em informática, porém, instrução é a informação que indica a um computador uma acção elementar a executar. 2

Instruções Exemplo: se quisermos fazer uma omelete com batatas, precisaremos colocar em prática uma série de instruções: descascar as batatas, bater os ovos, fritar as batatas, etc... Noções Básicas de Programação Problemas, Algoritmos e Programas Operações elementares, tipos de dados e variáveis Construção de algoritmos em linguagem informal simbólica 3

Problemas, Algoritmos e Programas Análise do problema (especificação do problema, análise de requisitos, pressupostos, etc.); Conceção do algoritmo; Tradução desse algoritmo na linguagem de programação. Problemas, Algoritmos e Programas Problemas, Algoritmos e Programas 4

Problemas, Algoritmos e Programas Linguagem de programação A programação consiste na codificação precisa desse algoritmo, segundo uma linguagem de programação específica. Exemplos: Visual Basic, C, Java, Python, C#,.NET, HTML, PHP Problemas, Algoritmos e Programas Algoritmia A formulação de algoritmos é separada em duas fases distintas na resolução do problema: A fase de formulação de algoritmos A fase da sua implementação numa linguagem ou ferramenta de programação (Visual Basic, C, Java, Python, ) 5

Algoritmo A palavra algoritmo, à primeira vista, parece-nos estranha. Embora apresente uma designação desconhecida, fazemos uso constante de algoritmos no nosso quotidiano: a maneira como uma pessoa toma banho é um algoritmo. Outros algoritmos frequentemente encontrados são: Instruções para se utilizar um aparelho electrodoméstico; Uma receita para preparo de algum prato; Guia de preenchimento para declaração do imposto de renda; Nas operações básicas (adição, multiplicação, divisão e subtracção). Algoritmo - Definição Um algoritmo é formalmente uma sequência finita de passos que levam a execução de uma tarefa, é uma sequência de instruções para atingir uma meta específica. Estas tarefas não podem ser redundantes nem subjectivas na sua definição, devem ser claras e precisas. 6

Algoritmo Definição (Cont.) Para resolver um problema através dum computador é necessário encontrar em primeiro lugar uma maneira de descrevê-lo de uma forma clara e precisa - A noção de algoritmo é central para toda a informática. A criação de algoritmos para resolver os problemas é uma das maiores dificuldades, mas também um dos desafios mais atrativos, dos iniciados em programação de computadores. Características fundamentais dum algoritmo Um algoritmo deve ter 5 características fundamentais: Entradas: um algoritmo deve ter uma ou mais entradas, isto é quantidades que lhe são fornecidas antes do algoritmo iniciar. Saídas: um algoritmo deve ter uma ou mais saídas, isto é quantidades que tem uma relação específica com as entradas. Precisão: Todos os passos do algoritmo devem ter um significado preciso, não ambíguo, especificando exactamente o que deve ser feito. 7

Características fundamentais dum algoritmo Um algoritmo deve ter 5 características fundamentais: Eficácia: Os passos devem conduzir à resolução do problema proposto. Devem ainda ser executáveis numa quantidade finita de tempo e com uma quantidade finita de esforço. Eficiência: Um algoritmo deve ser eficiente. Isto significa que todas as operações devem ser suficientemente básicas de modo que possam ser em princípio executadas com precisão em um tempo finito por um ser humano usando papel e lápis. NOTA: Pode haver mais do que um algoritmo para resolver um problema. Algoritmo O algoritmo deve ser fácil de se interpretar e fácil de codificar. Ou seja, ele deve ser o intermediário entre a linguagem falada e a linguagem de programação 8

Algoritmo Exemplo 1 Uma receita é uma descrição dum conjunto de passos ou acções que fazem a combinação dum conjunto de ingredientes com vista a obter um produto gastronómico particular. Algoritmo Exemplo 1(Cont.) Um algoritmo opera sobre um conjunto de entradas (farinha ovos, fermento, etc. no caso do bolo) de modo a gerar uma saída que seja útil (ou agradável) para o utilizador (o bolo pronto). Algoritmo (receita de bolo): 1. Bater duas claras em castelo; 2. Adicionar duas gemas; 3. Adicionar uma chávena de açúcar; 4. Adicionar duas colheres de manteiga; 5. Adicionar uma chávena de leite de coco; 6. Adicionar farinha e fermento; 7. Colocar numa forma e levar ao forno em lume brando. 8. Verificar tempo de cozedura 9. Retirar do forno 9

Algoritmo Exemplo2 Somar dois números Escreva o primeiro número no rectângulo A Escreva o segundo número no rectângulo B Some o número do rectângulo A com número do rectângulo B Coloque o resultado no rectângulo C Exercícios 1. Descreva a sequência lógica: a. Para Comer; b. Para ferver água; c. Para trocar uma lâmpada. d. Que permita efectuar a mudança do pneu furado de uma viatura. 10

Exercício a) Inicio Pegar no garfo Colocar comida no garfo Levar o garfo à boca Abrir a boca Meter a comida dentro da boca Fechar a boca Mastigar a comida Engolir Fim Enunciado Exercício b) Inicio Pegar no recipiente Colocar água no recipiente Levar recipiente à placa Ligar a placa Deixar ferver Desligar a placa Retirar o recipiente da placa Fim Enunciado 11

Exercício c) Algoritmo simples Início Colocar escada Pegar na lâmpada nova Subir a escada Retirar lâmpada fundida Colocação da lâmpada nova Verificar se luz acende Arrumar escada Fim Exercício c) Definir as operações elementares Algoritmo mais complexo dar passos subir/descer degraus pegar/largar objectos rodar objectos sentido directo/indirecto capacidade de decisão 12

Exercício c) 1. [Preparar acessos à lâmpada fundida] 1.1 Repetir enquanto não chegar à escada 1.1.1 Dar passos 1.2 Pegar objecto (escada) 1.3 Repetir enquanto não chegar debaixo lâmpada fundida 1.3.1 Dar passos 2. [Retirar lâmpada fundida] 2.1 Repetir enquanto não chegar à lâmpada fundida 2.1.1 Subir degraus 2.2 Repetir enquanto não soltar a lâmpada fundida 2.2.1 Rodar objecto(l.f.) no sentido indirecto 2.3 Repetir enquanto não chegar ao chão 2.3.1 descer degraus 3.[Escolher lâmpada nova] 3.1 Repetir enquanto não chegar junto gaveta das lâmpadas novas 1.3.1 Dar passos 3.2 Repetir enquanto houver lâmpadas novas ou potência L.N. diferente de potência L.F. 3.2.1 Pegar objecto (L.N.) 3.2.2 Se potência L.N. = Potência L.F. 3.2.2.1 Então largar a L.F. 3.2.2.2 Senão largar a L.N. 4. [Colocação da lâmpada nova] 4.1 Repetir enquanto não chegar à escada 4.1.1 Dar passos 4.2 Repetir enquanto não chegar ao casquilho 4.2.1 Subir degraus 4.3 Repetir enquanto não firmar a lâmpada nova 4.3.1 Rodar objecto(l.n.) no sentido directo 4.4 Repetir enquanto não chegar ao chão 4.4.1 descer degraus 5. [Arrumar escada] 5.1 Pegar objecto(escada) 5.2 Repetir enquanto não chegar ao sítio da escada 5.2.1 Dar passos 5.3 Largar objecto (escada) 6. [FIM] Enunciado Exercício d) 1º (graficamente): 13

Exercício d) 2º Definir as operações elementares: dar passos abrir ou fechar pegar ou largar rodar deslocar no sentido... capacidade de decisão Exercício d) 3º Narrativa Identada: [Substituição pneu furado] 1. [Buscar macaco, chave e pneu sobresselente] 1.1 Repetir até chegar ao carro 1.1.1 Dar passos 1.2 Abrir a mala 1.3 Pegar macaco, chave e pneu bom 1.4 Repetir até chegar ao pneu furado 1.4.1 Dar passos 2. [Colocar o macaco em posição correcta e elevar o carro] 2.1 Largar o pneu e a chave 2.2 Encaixar macaco 2.2.1 Deslocar o macaco no sentido do carro até encaixar 2.3 Elevar o carro 2.3.1 Repetir até carro elevado 2.3.1.1 Rodar manivela no sentido horário 3.[Retirar o pneu furado e substituí-lo] 3.1 Pegar na chave 3.2 Repetir quatro vezes 3.2.1 Deslocar a chave até encaixar na porca 3.2.2 Repetir até porca cair 3.2.2.1 Rodar sentido anti-horário 3.3 Largar chave 3.4 Pegar no pneu furado 3.5 Deslocá-lo sentido contrário ao carro 3.6 Largar pneu furado 3.7 Pegar no pneu bom 3.8 Deslocar pneu no sentido do carro 3.9 Encaixar pneu 3.10 Pegar na chave 3.11 Repetir quatro vezes 3.11.1 Pegar na porca 3.11.2 Encaixar porca 3.11.3 Pegar chave 3.11.4 Repetir até ficar apertado 3.11.4.1 Rodar no sentido horário 3.12 Largar chave 4. [Guardar o macaco, chave e o pneu furado] 4.1 Baixar o carro 4.1.1 Rodar manivela no sentido contrário ao horário 4.2 Desencaixar macaco 4.3 Pegar pneu furado+macaco+chave 4.4 Repetir até à mala 4.4.1 Dar passos 4.5 Largar chave+macaco+pneu furado 4.6 Fechar mala [FIM] 14