Sei sulla pagina 1di 28

Algoritmos e Linguagem de Programao

Prof. Adriano Goularte

Lgica: A lgica de programao necessria para pessoas que desejam trabalhar com desenvolvimento de sistemas e programas. Ela permite definir a sequncia lgica para o desenvolvimento das aplicaes. Ento o que lgica? Lgica de programao a tcnica de encadear/estruturar pensamentos para atingir determinado objetivo.
2

EXEMPLO: Todo mamfero um animal Todo cavalo um mamfero Logo, todo cavalo um animal. Nenhum homem sabe danar Este danarino homem Logo, este danarino no sabe danar.

Sequncia Lgica Estes pensamentos podem ser descritos como uma sequncia de instrues, que devem ser seguidas para se cumprir uma determinada tarefa. Sequncia Lgica so passos executados at atingir um objetivo ou soluo de um problema.

Sequncia Lgica Exemplo A gaveta est fechada. A caneta est dentro da gaveta. Logo, precisamos primeiro abrir a gaveta para depois pegar a caneta.

Instrues Instrues so um conjunto de regras ou normas definidas para a realizao ou emprego de algo. Em informtica, o que indica a um computador uma ao elementar a executar.

Introduo Algoritmo Curiosidade


O termo algoritmo data sua origem no ano de 830 d.C., por meio de um estudioso e matemtico persa de nome Mohammed Ibn Musa Abu Djefar, conhecido por Al-Khwarizmi, o qual escreveu na ocasio um importante livro sobre lgebra. Durante o passar de vrios anos e aps ser usado repetidamente, o nome Al-Khwarizmi foi sofrendo corruptelas, chegando a Algarismo. deste mesmo radical que vem o termo Algoritmo, utilizado em computao.
7

Algoritmo Um algoritmo formalmente uma sequncia finita de passos que levam a execuo de uma tarefa. Podemos pensar em algoritmo como uma receita, uma sequncia de instrues que executam uma meta especfica. Estas tarefas no podem ser redundantes nem subjetivas na sua definio, devem ser claras e precisas.
8

Algoritmo Exemplos do mundo real: Algoritmos de operaes bsicas (adio, multiplicao, diviso e subtrao) de nmeros reais decimais. Manuais de aparelhos eletrnicos, como um videocassete, que explicam passo-apasso como gravar um evento. Chupar uma bala. Trocar uma lmpada. Etc......
9

Algoritmo
A importncia do algoritmo est no fato de termos que especificar uma sequncia de passos lgicos para que o computador possa executar uma tarefa qualquer, pois o mesmo por si s no tem vontade prpria, faz apenas o que mandamos. Com uma ferramenta algortmica, podemos conceber uma soluo para um dado problema, independendo de uma linguagem especfica e at mesmo do prprio computador.
10

Exemplos de algoritmo O uso de um telefone pblico


1. 2. 3. 4. 5. 6. Retirar o telefone do gancho Esperar o sinal Colocar o carto Discar o nmero Falar ao telefone Colocar o telefone no gancho 1. 2. 3. 4. 5. 6. 7.

Pegar frigideira, ovo, leo e sal Colocar leo na frigideira Acender o fogo Colocar a frigideira no fogo Esperar o leo esquentar Colocar o ovo Retirar quando estiver pronto
11

Como fritar um ovo

Desafio
Fazer um algoritmo para levar 3 missionrios e 3 canibais de um lado para outro de um rio, atravessando com um bote. Neste bote, podem ir no mximo dois de cada vez. Como o bote no pode atravessar o rio sozinho, sempre deve haver pelo menos uma pessoa (missionrio ou canibal) conduzindo o bote. Sabe-se que nunca pode ter mais canibais do que missionrios em nenhum dos dois lados do rio, seno os canibais comero os missionrios. Por exemplo, se um missionrio atravessa com um canibal para uma margem do rio onde h apenas outro canibal, como o nmero de canibais supera o nmero de missionrios, mesmo que ele no desa do barco os canibais o comero. O que fazer para levar os 6 de uma margem para outra? 12

Soluo 1. Passa dois canibais. 2. Volta o canibal 3. Passa dois canibais 4. Volta o canibal 5. Passa dois missionrios 6. Volta um canibal e um missionrio 7. Passa dois missionrios 8. Volta um canibal 9. Passam dois canibais 10.Volta um canibal para buscar o outro canibal.
13

14

Algoritmo - Caractersticas
Todo algoritmo deve apresentar algumas caractersticas bsicas: ter fim; no dar margem dupla interpretao (no ambguo); capacidade de receber dado(s) de entrada do mundo exterior; poder gerar informaes de sada para o mundo externo ao do ambiente do algoritmo; ser efetivo (todas as etapas especificadas no algoritmo devem ser alcanveis em um tempo finito).
15

Algoritmo - Vantagens A partir dele o programador poder implement-lo em qualquer linguagem de programao que conhea ou deseje.

Algoritmo + linguagem de programao = programa

16

Algoritmo Formas de Representao Descrio narrativa - Faz-se uso do portugus para descrever algoritmos. Grfica Faz-se o uso de grficos (fluxogramas) para representar a soluo. Pseudo-cdigo utiliza-se linguagem formal de algoritmos para representar a soluo (portugol).

17

Algoritmo Exemplo de um algoritmo para trocar uma lmpada em Descrio narrativa (Portugus): Pegar uma escada; Posicionar a escada embaixo da lmpada; Buscar uma nova lmpada; Subir na escada; Retirar a lmpada velha; Colocar a lmpada nova;
18

Algoritmo Representao grfica do algoritmo para trocar uma lmpada (fluxograma).

inicio pegar uma escada Colocar escada embaixo da lmpada Buscar uma nova lmpada Subir na escada Retirar a lmpada velha Colocar a lmpada nova fim

19

SIMBOLOGIAS BSICAS - Terminal - seta de fluxo de dados - processamento

- entrada de dados manual (teclado) - Conector (particionamento do diagrama)

- Conector (indica fluxo em outra pgina)

20

SIMBOLOGIAS BSICAS - Entrada e sada de dados - Sada de dados em vdeo

- Sada de dados em impressora

- Smbolo de deciso
21

EXERCICIO 1 : Clculo da mdia de notas escolares.

- A partir das notas dos alunos, calcular a mdia e indicar quais foram aprovados e quais foram reprovados.

22

PERGUNTAS QUE DEVEM SER FEITAS:

- As notas sero lidas a partir do teclado ou de um arquivo? - Como devo calcular a mdia? Que equao devo utilizar? - Qual o critrio de aprovao? -O resultado dever ser impresso, apresentado em vdeo ou ser enviado para um arquivo?

23

DEFINIO DO PROBLEMA: - As notas sero lidas a partir do teclado. - A mdia ser calculada com a seguinte expresso: M = (p1 + p2) / 2 - O aluno considerado aprovado se sua mdia maior ou igual a 5,0. - O resultado ser armazenado em um arquivo.

24

DESCRIO NARRATIVA INCIO digitar notas dos alunos calcular as mdias: M = (p1 + p2) / 2 se M 5, gravar no arquivo: aprovado se M < 5, gravar no arquivo: reprovado FIM
25

DESENVOLVIMENTO EM FLUXOGRAMA Incio

calcular a mdia dos alunos e apresentar os resultados

Fim

26

incio entrada com notas clculo da mdia: M = (p1 + p2)/2 no M5 sim

reprovado

aprovado

fim
27

Potrebbero piacerti anche