Introdução a Algoritmos

Slides:



Advertisements
Apresentações semelhantes
Algoritmo e Programação
Advertisements

Programação em Java Prof. Maurício Braga
Marco Antonio Montebello Júnior
Estruturas de Controle
Programação em Java Prof. Maurício Braga
Data: 10 a 12 de fevereiro de 2009 e
Estruturas de Repetição
Teoria da Computação VERIFICAÇÃO DE EQUIVALÊNCIA FORTE DE PROGRAMAS
Estrutura Condicional
Paradigmas de Linguagens Conceitos Básicos
LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS INSTRUÇÕES DE CONTROLE – PARTE I Prof. Thiago Pereira Rique
Algoritmos.
ALGORÍTMOS E ESTRUTURA DE DADOS SLIDE - 2
Estruturas de repetição
Introdução à Lógica de Programação (cont.)
THOBER CORADI DETOFENO, MSC. Aula 06
Estruturas de Controle
Linguagem PHP Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
Rodrigo de Toledo (original: Claudio Esperança)
Lógica de Programação/ Algoritmos 2013
Comandos condicionais
Lógica de Programação Módulo II
Classes e objetos P. O. O. Prof. Grace.
INTRODUÇÃO À PROGRAMAÇÃO
Algoritmos e Estruturas de Dados I Construção de Algoritmos
Processamento da Informação BC-05045
Algoritmos.
Semana 03: Comandos de desvio de fluxo. Expressões lógicas.
Professor: Juliano Lucas Gonçalves
Introdução à Programação
PROGRAMAÇÃO I UNIDADE 1.
Capítulo 3 Estruturas de Controle
INTRODUÇÃO – LOGICA E ALGORITMOS
Estrutura de dados, pseudocódigo
Universidade Federal de Alagoas – UFAL Centro de Tecnologia – CTEC
ENGENHARIA DE AUTOMAÇÃO INDUSTRIAL
LINGUAGENS DE PROGRAMAÇÃO PROF. DANIELA PIRES
Introdução a Programação
LINGUAGENS DE PROGRAMAÇÃO PROF. DANIELA PIRES
Semana 03 Comandos de desvio de fluxo. Expressões lógicas.
É u m e l e m e n t o f u n d a m e n t a l
Operadores Relacionais, Lógicos e comandos de condição
Estrutura de Decisão e Repetição
1 2 Observa ilustração. Cria um texto. Observa ilustração.
Instituto Federal de Santa Catarina
Conceitos básicos em grafos
Aula 6 - Estruturas de Controle
Linguagem e Ambiente Scratch
Estrutura de decisão Neste tipo de estrutura o fluxo de instruções a ser seguido é escolhido em função do resultado da avaliação de uma ou mais condições.
Estrutura de Decisão Multipla
Como Programar? Dicas para começar a programar bem
2. Lógica de Programação Definição de Lógica Definição de Algoritmo
Faculdade Talentos Humanos - FACTHUS - Algoritmo I - Rogério Rodrigues
BC-0505 Processamento da Informação
Conceitos Básicos Luis Antonio Tavares
Fábio de Oliveira Borges
ESTRUTURAS DE CONTROLE
Algoritmos Estruturados
Programação de PIC em C Exposição das funções básicas para
Algoritmos e Estrutura de Dados I
Algoritmo e Programação
Linguagens de Programação
Construção de Algoritmos Professor: Aquiles Burlamaqui Construção de Algoritmos Aquiles Burlamaqui UERN
Revisão LPG-I – Revisão de ICC Prof. Flavio Marcello
Fundamentos de linguagens de programação
Etapas : Algoritmo é uma sequência lógica de instruções que podem ser executadas. É importante destacar que qualquer tarefa que siga um certo padrão.
Algoritmo É uma descrição seqüencial ordenada dos passos que devem ser executados de forma lógica e clara, com a finalidade de facilitar a resolução de.
1 Estruturas de Controle Algoritmos Algoritmos –Série de ações em uma ordem específica As ações executadas Ordem na qual as ações são executadas.
Linguagem de Programação Prof. Fabricio Roulin Bittencout
Representação de Algoritmos Marcos Antonio Estremote
Transcrição da apresentação:

Introdução a Algoritmos Computação I Profa. Ms. Viviane Guimarães Ribeiro Prof. Rodrigo de Maio Almeida

Conceito de Algoritmo Á especificação de seqüência ordenada de passos que deve ser seguida para a realização de um tarefa, garantindo a sua repetibilidade, dá-se o nome de algoritmo. Para que um computador possa desempenhar uma tarefa é necessário que esta seja detalha passo a passo, numa forma compreensível pela máquina, utilizando aquilo que se chama de programa. Neste sentido, um programa nada mais é que um algoritmo escrito numa forma compreensível pelo computador.

Formas de representação Dentre as formas de representação de algoritmos mais conhecidas sobressaltam: Descrição Narrativa; Fluxograma Convencional; Pseudocódigo (Portugol).

Descrição Narrativa Nesta forma de representação os algoritmos são expressos diretamente em linguagem natural. Exemplos: Receita de bolo; Troca de um pneu furado; Cálculo da média de um aluno....

Descrição Narrativa Afrouxar ligeiramente as porcas; Suspender o carro; Retirar as porcas e o pneu; Colocar o pneu reserva; Apertar as porcas; Abaixar o carro; Dar o aperto final nas porcas. OBS: instruções sujeitas a diferentes interpretações.

Descrição Narrativa Escreva a Descrição Narrativa para cada situação abaixo: 1-José acorda atrasado; ao sair apressado com seu carro provoca um acidente, chocando-se com um ônibus. Há um problema importante para ser tratado em sua seção, naquela manhã. José precisa avisar seu chefe sobre o acontecido. 2- Maria precisa ensinar sua filhinha a tomar banho sozinha.

Descrição Narrativa 3- O professor de matemática precisa calcular a média de um aluno. Para tanto ele precisa levar em consideração 4 notas do aluno. 4- Carlos precisa calcular a área de uma sala. Sabe-se que a sala é retangular.

Fluxograma Convencional É uma representação gráfica de algoritmos onde formas geométricas diferentes implicam ações (instruções, comandos) distintas. Tal propriedade facilita o entendimento das idéias contidas nos algoritmos e justifica sua popularidade.

Fluxograma Convencional Esta forma é menos imprecisa que a Descrição Narrativa e, no entanto, não se preocupa com detalhes de implementação do programa, como o tipo de variáveis usadas.

Fluxograma Convencional Principais formas geométricas usadas em fluxogramas: Início e fim do fluxograma Operação de entrada de dados

Fluxograma Convencional Operação de saída de dados Operação de atribuição Operação de decisão

Fluxograma Convencional

Pseudocódigo Esta forma de representação de algoritmos é mais rica em detalhes, como a definição dos tipos das variáveis usadas. Na verdade, esta representação é suficiente para permitir que a tradução de um algoritmo nela representado para uma linguagem de programação específica seja praticamente direta.

Pseudocódigo Forma geral: Algoritmo <nome do algoritmo> <declaração de variáveis> <subalgoritmos> Início <corpo do algoritmo> Fim.

Pseudocódigo Algoritmo Media; Var N1, N2, M : real; Início Escreva (“Entre com 2 númros: ”); Leia (N1, N2); M (N1+N2)/2; Se (M >= 7) Então Escreva (“Aprovado”); Senão Escreva (“Reprovado”); Fim_se Fim

Estrutura Seqüencial Na estrutura seqüencial os comandos de um algoritmo são executados numa seqüência pré-estabelecida. Cada comando é executado somente após o término do comando anterior. Em termos de fluxograma, a estrutura seqüencial é caracterizada por um único fluxo de execução no diagrama. Ex:

Estrutura Seqüencial <Comando 1> <Comando 2>

Estrutura Seqüencial Em pseudocódigos, a estrutura seqüencial caracteriza-se por um conjunto de comandos dispostos ordenadamente. ... <Comando 1> <Comando 2> <Comando 3>

Estrutura de Decisão Neste tipo de estrutura o fluxo de instruções a ser seguido é escolhido em função do resultado da avaliação de uma ou mais condições. Uma condição é uma expressão lógica. A classificação das estruturas de decisão é feita de acordo com o número de condições que devem ser testadas para que se decida qual o caminho a ser seguido. Têm-se 2 tipos de estrutura de decisão: Se; Escolha.

Estrutura de Decisão - Se Nesta estrutura uma única condição (expressão lógica) é avaliada. Se o resultado desta avaliação for verdadeiro (.V.), então um determinado conjunto de instruções (comandos compostos) é executado. Caso contrário, ou seja, quando o resultado da avaliação for falso (.F.), um comando diferente é executado.

Estrutura de Decisão - Se

Estrutura de Decisão - Se Se <condição> Então <Comando 1> Senão <Comando 2> Fim_se

Estrutura de Decisão - Escolha Este tipo de estrutura é uma generalização da estrutura Se, onde somente uma condição era avaliada e dois caminhos podiam ser seguidos. Na estrutura de decisão do tipo Escolha pode haver uma ou mais condições a serem testadas e um comando composto diferente associado a cada uma destas.

Estrutura de Decisão - Escolha

Estrutura de Decisão - Escolha Escolha (variável) Caso <valor_1> <Comando 1> Caso <valor_2> <Comando 2> ..... Caso <valor_n> <Comando n> Senão <Comando n + 1> Fim_escolha

Estrutura de Repetição São muito comuns as situações em que se deseja repetir um determinado trecho de um programa um certo número de vezes. Por exemplo, pode-se citar o caso em que se deseja realizar um mesmo processamento para conjuntos de dados diferentes. A classificação das estruturas de repetição é feita de acordo com o conhecimento prévio do número de vezes que o conjunto de comandos será executado.

Estrutura de Repetição A estrutura de repetição divide-se em: Laços contados: quando se conhece previamente quantas vezes o comando no interior da construção será executado; Laços condicionais: quando não se conhece de antemão o número de vezes que o conjunto de comandos no interior do laço será repetido, pelo fato de o mesmo estar amarrado a uma condição sujeita a modificações pelas instruções do interior do laço.

Estrutura de Repetição Laços Contados Este tipo de laço nada mais é que uma estrutura dotada de mecanismos para contar o número de vezes que o corpo do laço é executado. Para <var> de <início> até <fim> incr de <inc> faça <comando> Fim_para

Estrutura de Repetição <Var> = <inicio>, <fim>, <inc> Comando

Estrutura de Repetição Laços Condicionais São aqueles cujo conjunto de comandos em seu interior é executado até que uma determinada condição seja satisfeita. Divide-se em: Enquanto; Repita.

Estrutura de Repetição Laços Condicionais - Enquanto Ao início da construção Enquanto a condição é testada. Se seu resultado for falso, então o comando composto no seu interior não é executado e a execução prossegue normalmente pela instrução seguinte ao Fim_enquanto. Se a condição for verdadeira o comando no interior da estrutura é executado e ao seu termino retorna-se ao teste da condição. Assim, o processo acima será repetido enquanto a condição testada for verdadeira.

Estrutura de Repetição <Condição> .V. Comando .F.

Estrutura de Repetição Enquanto <condição> faça <comando> Fim_enquanto Uma vez dentro do corpo do laço, a execução somente abandonará o mesmo quando a condição for falsa.

Estrutura de Repetição Laços Condicionais - Repita O comando é executado uma vez. A seguir, a condição é testada: se ela for falsa, o comando composto é executado novamente e este processo é repetido até que a condição seja verdadeira, quando então a execução prossegue pelo comando imediatamente seguinte ao final da construção.

Estrutura de Repetição Comando <Condição> .F. .V.

Estrutura de Repetição Repita <comando> até que <condição> Esta construção difere da construção Enquanto pelo fato de o comando composto ser executado uma ou mais vezes (pelo menos uma vez), ao passo que na construção Enquanto o comando é executado zero ou mais vezes (possivelmente nenhuma).