algoritimo
description
Transcript of algoritimo
-
1Programao Estruturada
Professor Luis Ncolas de Amorim [email protected]
http://professor.ifsertao-pe.edu.br/nicolas.trigo/
Programao Estruturada 2
EMENTA
-
2Programao Estruturada 3
CONTEDO Introduo ao Algoritmo
Tipos de Algoritmos
Mtodo para construo de algoritmos
Programao Estruturada 4
CONCEITO DE ALGORITMO
Desde o incio da existncia do homem, ele tem procurado criar mquinas que o auxiliem em seus trabalhos, diminuindo esforos e economizando tempo. Dentre essas mquinas, o computador tem se mostrado uma das mais versteis, rpidas e seguras.
O computador capaz de auxiliar em qualquer coisa que lhe seja solicitada, mas no tem iniciativa, por isso precisa receber instrues nos mnimos detalhes.
-
3Programao Estruturada 5
CONCEITO DE ALGORITMO
A finalidade bsica de um computador receber, manipular, armazenar e fornecer dados.
Programao Estruturada 6
CONCEITO DE ALGORITMO Algoritmo uma seqncia de passos que visa atingir um objetivo
bem definido. (FORBELLONE)
Algoritmo a descrio de uma seqncia de passos que deve ser seguida para a realizao de uma tarefa. (ASCENCIO)
Algoritmo um procedimento passo a passo para a soluo de um problema. Tambm pode ser uma seqncia detalhada de aes a serem executadas para realizar alguma tarefa. (MEDINA)
Ao um acontecimento que, a partir de um estado inicial, aps um perodo de tempo finito, produz um estado final previsvel e bem definido. Portanto, algoritmo a descrio de um conjunto de comandos que, obedecidos, resultam numa sucesso finita de aes. (FARRER)
-
4Programao Estruturada 7
PADRO DE COMPORTAMENTO Observe a seqncia de nmeros a seguir e descubra o
valor de X: 1, 6, 11, 16, 21, 26, X, ...
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, X, ...
2, 10, 12, 16, 17, 18, 19, X, ...
Inicia com 1 e a partir do 2 nmero, captura o valor anterior e soma 5.
Seqncia de Fibonacci, que obedece a seguinte regra: inicialmente fornecido os nmeros 0 e 1, e para gerar o prximo nmero soma-se os
dois nmeros anteriores.
Nmero comea com a letra D: 2, 10, 12, 16, 17, 18, 19, 200.
Programao Estruturada 8
TIPOS DE ALGORITMOS
Descrio NarrativaA escrita em linguagem natural.
Vantagem: No necessrio aprender uma forma de escrita.
Desvantagem: Difcil transcrio para algo compreensvel para o computador.
-
5Programao Estruturada 9
Descrio NarrativaPodemos observar que executamos vrios algoritmos todos os dias, tendo como exemplo:
FAZER UM SANDUCHE DE QUEIJO1. Pegar a faca2. Pegar o po3. Cortar o po4. Colocar a faca na mesa5. Pegar a fatia de queijo6. Abrir o po7. Colocar a fatia de queijo no po
TIPOS DE ALGORITMOS
Programao Estruturada 10
Descrio NarrativaOutro Exemplo:
MULTIPLICAO DE DOIS NMEROS1. Pega o primeiro nmero2. Pega o segundo nmero3. Aplica o sinal de multiplicao entre eles4. Executa a multiplicao5. Captura o resultado da multiplicao6. Mostra o resultado da multiplicao
TIPOS DE ALGORITMOS
-
6Programao Estruturada 11
EXERCCIO DE FIXAO Um homem precisa atravessar um rio com um barco
que possui capacidade de carregar apenas ele mesmo e mais uma das trs cargas que so: um lobo, um bode e um mao de alfafas.
Observe as leis naturais: o lobo carnvoro e o bode herbvoro.
O que o homem deve fazer para conseguir atravessar o rio sem perder suas cargas.
Programao Estruturada 12
TIPOS DE ALGORITMOS
FluxogramaA escrita montada em smbolos grficos.
Vantagem: Smbolos grficos torna-se mais compreensveis do que elementos textuais.
Desvantagem: Alm de aprender a simbologia do fluxograma, dificulta a transcrio para algo compreensvel para o computador.
-
7Programao Estruturada 13
TIPOS DE ALGORITMOS
FluxogramaDESCRIO NARRATIVAPasso 1: Receber os dois nmeros que sero multiplicados.Passo 2: Multiplicar os nmeros.Passo 3: Mostrar o resultado obtido na multiplicao.
FLUXOGRAMA
Programao Estruturada 14
TIPOS DE ALGORITMOS
PseudocdigoA escrita dotada regras predefinidas, de instrues.
Vantagem: fcil a transcrio para algo compreensvel para o computador.
Desvantagem: necessrio aprender as regras do pseudocdigo.
-
8Programao Estruturada 15
TIPOS DE ALGORITMOS
Pseudocdigo
INCIOVARIVEL
Num1, Num2, M: INTEIROESCREVA (Digite dois nmeros: )LEIA (Num1, Num2)M Num1 * Num2ESCREVA (Multiplicao: , M)
FIM
Programao Estruturada 16
MTODO PARA CONSTRUO DE ALGORITMOS
Para a construo de qualquer tipo de algoritmo so necessrios os seguintes passos:
1. Ler atentamente o anunciado, identificando as partes importantes;
2. Definir os dados de entrada, que so os dados fornecidos;3. Definir o processamento, atravs de clculos e restries
utilizando os dados de entrada;4. Definir os dados de sada, que so gerados a partir do
processamento;5. Construir o algoritmo utilizando um dos tipos de algoritmos;6. Testar o algoritmo realizando simulaes.
-
9Programao Estruturada 17
MAIS EXERCCIOS DE FIXAO Criar uma seqncia de passos (algoritmo) de como fritar um
ovo.
Criar uma seqncia de passos (algoritmo) de como trocar um pneu de um carro.
Criar uma seqncia de passos (algoritmo) de como fazer um bolo comum.
Elabore uma seqncia de passos que mova trs discos de uma torre de Hani, que consiste em trs hastes (a - b - c), uma das quais serve de suporte para trs discos de tamanhos diferentes (1 - 2 - 3), os menores sobre os maiores. Pode-se mover um disco de cada vez para qualquer haste, contanto que nunca seja colocado um disco maior sobre um menor e nunca pode deixar qualquer disco fora das hastes. O objetivo transferir os trs discos que se encontram na haste 'A' para a haste 'C.
Programao Estruturada 18
REFERNCIAS BIBLIOGRFICAS ASCENCIO, Ana Fernanda Gomes; CAMPOS, Edilene
Aparecida Veneruchi de. Fundamentos de Programao de Computadores: Algoritmos, Pascal e C/C++. So Paulo: Pearson Prentice Hall, 2002.
FARRER, Harry; BECKER, Cristiano Gonalves; FARIA, Eduardo Chaves; et. al. Programao Estruturada de Computadores: Algoritmos Estruturados. 3. ed. Rio de Janeiro: LTC Livros Tcnicos e Cientficos Editora S.A., 1999.
FORBELLONE, Andr Luiz Villar; EBERSPCHER, Henri Frederico. Lgica de Programao: A construo de algoritmos e estruturas de dados. 3. ed. So Paulo: Pearson Prentice Hall, 2005.
MEDINA, Marco; FERTIG, Cristina. Algoritmos e Programao: Teoria e Prtica. So Paulo: NovatecEditora, 2006.