Programacao

  • Uploaded by: labrincha
  • 0
  • 0
  • May 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Programacao as PDF for free.

More details

  • Words: 1,358
  • Pages: 43
Algoritmos

Objectivos

• Identificar os elementos de um algoritmo e utilizá-los correctamente na solução de um problema • Construir algoritmos • Transcrever algoritmos para uma linguagem de programação (C#)

Comunicação

Para que exista comunicação é necessário estabelecer padrões e regras que podem ser: • falados, escritos, símbolos, etc.

desenhados,

representação

de

Comunicação

A comunicação com o computador também é feita através de um conjunto de regras, originando:

Linguagens de Programação Exemplos: C#, C++, Basic, Pascal, Cobol, etc.

Lógica de Programação Para se programar é necessário possuir / usar Lógica de Programação!

Lógica de Programação

Técnica de encadear instruções para atingir determinado objectivo, permite definir a sequência lógica para o desenvolvimento.

Esta matéria é essencial para a formação de um bom programador, servindo como base para a aprendizagem de todas as linguagens de programação.

Instrução

Na linguagem comum, entende-se por instruções “um conjunto de regras ou normas definidas para a realização ou utilização de algo”. Na informática, porém, instrução é a informação que indica a um computador uma acção elementar a executar.

Instrução

Uma instrução isolada não constitui um processo, para isso é necessário um conjunto de instruções colocadas numa ordem sequencial lógica. Por exemplo, se quisermos fazer uma omelete de batatas, é necessário colocar em prática uma série de instruções: descascar as batatas, bater os ovos, fritar as batatas, etc...

Instrução

É evidente que estas instruções têm que ser executadas numa ordem adequada – não se pode descascar as batatas depois de fritá-las. Dessa forma, uma instrução isolada não tem muito sentido; para obtermos o resultado pretendido, é necessário colocar em prática o conjunto de todas as instruções, na ordem correcta.

Algoritmo

Programar é construir algoritmos!

Algoritmo

Algoritmo é a descrição de um conjunto de comandos (tarefas/instruções) ordenados que, executados, resultam numa sucessão finita de acções. Destina-se a resolver um problema: fixa um padrão de comportamento a ser seguido, uma norma de execução, para se atingir, como resultado final, a resolução de um problema.

Algoritmo

Os comandos (tarefas) não podem ser redundantes nem subjectivos na sua definição, devem ser claros e precisos. Ao contrário do que se pode pensar, o conceito de algoritmo não foi criado para satisfazer às necessidades da informática. Pelo contrário, a programação de computadores é apenas um dos campos de aplicação dos algoritmos.

Algoritmo

Na verdade, há inúmeros casos que podem exemplificar o uso (involuntário ou não) de algoritmos para a padronização do exercício de tarefas rotineiras. Exemplos: instruções para a utilização de um electrodoméstico, uma receita de culinária, as instruções de preenchimento do IRS, a regra para a determinação de máximos e mínimos de funções por derivadas sucessivas, um programa de computador, etc.

Algoritmo

Algoritmo não é a solução de um problema, pois, se assim fosse, cada problema teria um único algoritmo. Algoritmo é um caminho para a solução de um problema, e em geral, os caminhos que levam a uma solução são muitos.

Algoritmo

A aprendizagem de algoritmos não se consegue a não ser através de muitos exercícios. A Algoritmia não se aprende: Copiando Algoritmos

Algoritmo

A Algoritmia só se aprende: Construindo Algoritmos Testando Algoritmos

Algoritmo Um algoritmo correcto deve possuir as seguintes três qualidades: Cada passo no algoritmo deve corresponder a uma instrução que possa ser realizada; A ordem dos determinada;

passos

O algoritmo deve ter fim.

deve

ser

precisamente

Algoritmo Para ajudar à resolução destes problemas existem técnicas que pretendem: Facilitar o desenvolvimento de algoritmos; Facilitar o seu entendimento; Antecipar a comprovação da sua correcção; Facilitar a sua manutenção e modificação; Permitir o desenvolvimento por equipas de trabalho.

Algoritmos: Exemplo 1 • Escreva um algoritmo que descreve a sequência de passos para pôr um carro a trabalhar:

ALGORITMO Abrir a porta do condutor entrar no carro fechar a porta do condutor por o cinto de segurança introduzir a chave na ignição repete carregar no acelerador rodar a chave até o motor começar a trabalhar

11

Algoritmos: Exemplo 2 • Trocar lâmpada fundida • • • • • • • •

Posicionar escada por debaixo da lâmpada Escolher lâmpada igual à lâmpada fundida Subir a escada até atingir a lâmpada fundida Girar a lâmpada no sentido anti-horário até que ela se solte Posicionar a nova lâmpada no casquilho Girar a lâmpada no sentido horário até que ela se fixe Descer da escada Guardar a escada

12

Algoritmos: Exemplo 3 • • • • • •

Problema: Na margem esquerda de um rio estão: 1 Pastor 1 Lobo 1 Cabra 1 Couve Objectivo: Passar todos para amargem direita do rio, tendo em atenção que: • O pastor só pode atravessar um passageiro de cada vez • Um passageiro que devora o outro nunca podem estar no mesmo local sem a presença do pastor

12

Automação As instruções possuem regras e uma Sintaxe própria, como uma linguagem tipo português ou inglês. Um programa de computador é um algoritmo escrito numa forma compreensível pelo computador. Este algoritmo tem que ser transmitido ao computador e armazenado na sua memória, para, em seguida, ser executado e conduzir o computador para a solução desejada.

Formas Representação Existem diversas formas de representação de algoritmos, mas não há um consenso com relação à melhor delas. Algumas formas de representação de algoritmos tratam os problemas apenas em nível lógico, abstraindo-se de detalhes de implementação muitas vezes relacionados com alguma linguagem de programação específica. Por outro lado, existem formas de representação de algoritmos que possuem uma maior riqueza de detalhes e muitas vezes acabam por obscurecer a ideia principal, o algoritmo, dificultando seu entendimento.

Formas Representação

Das várias formas de representação de algoritmos mais conhecidas ressaltam as seguintes: O Fluxograma; O Pseudocódigo;

Fluxogramas

Para se obter uma melhor clareza dos algoritmos, costuma-se desenvolvê-los e ilustrá-los com o auxilio de um fluxograma. Algumas figuras geométricas e dizeres são utilizados para representar as diversas acções do computador, ligadas por setas, para indicar a sequência da sua execução.

Fluxogramas Um fluxograma constitui uma representação gráfica de algoritmos onde formas geométricas diferentes implicam acções (instruções, comandos) distintos. Esta representação facilita o entendimento das ideias contidas nos algoritmos e justifica sua popularidade.

Fluxogramas

Fluxogramas

Início / Fim Input / Output Processamento Decisão

Símbolos utilizados

Pseudocódigo Antes de utilizarmos uma linguagem de computador, é necessário organizar as acções a serem tomadas pela máquina de uma forma organizada e lógica, sem nos determos com as regras rígidas da Sintaxe de uma linguagem de programação. Para tal, utilizaremos uma forma de escrever as instruções conhecida como pseudocódigo.

Pseudocódigo Esta forma de representação de algoritmos é rica em detalhes, como a definição dos tipos das variáveis usadas no algoritmo e, por assemelhar-se bastante à forma em que os programas são escritos, encontra muita aceitação. Na verdade, esta representação é suficientemente geral, para permitir que a tradução de um algoritmo, nela representada, para uma linguagem de programação específica seja praticamente directa.

Pseudocódigo

Para escrever um algoritmo em pseudocódigo precisamos descrever a sequência de instruções, de maneira simples e objectiva. Assim, utilizam-se as seguintes técnicas: Usar somente um verbo por frase Imaginar que se está a desenvolver um algoritmo para pessoas que não trabalham com informática Usar frases curtas e simples Ser objectivo Procurar usar palavras que não tenham sentido dúbio

Pseudocódigo

Estruturas

Estrutura Sequencial Estrutura de Decisão Estrutura de Repetição

Estrutura Sequencial

Estrutura de Decisão

Estrutura de Repetição

Variáveis

Nos algoritmos a cada variável corresponde uma posição de memória, cujo conteúdo pode variar ao longo do tempo durante a execução de um programa.

Embora uma variável possa assumir diferentes valores, ela só pode armazenar um único valor a cada instante. Toda a variável é identificada por um nome ou identificador.

Variáveis Em resumo, o conceito de variável foi criado para facilitar a vida dos programadores, permitindo o acesso à informação existente na memória do computador por meio de um nome, em vez da utilização do endereço de uma célula de memória.

Variáveis O conceito de expressão em termos informáticos está intimamente ligado ao conceito de expressão (ou fórmula) matemática, onde um conjunto de variáveis e constantes numéricas relacionam-se por meio de operadores aritméticos compondo uma fórmula que, uma vez avaliada, resulta num valor.

Operadores Temos três tipos de operadores: Operadores Aritméticos Operadores Relacionais Operadores Lógicos

Operadores Aritméticos

Operadores Relacionais

Operadores Lógicos

Related Documents

Programacao
May 2020 8
Programacao 10maio
November 2019 13
Programacao Asp
May 2020 11
Programacao-flipelo.pdf
October 2019 19

More Documents from ""

Programacao
May 2020 8