Você está na página 1de 20

ALGORITMOS

Algoritmos

Fundamentao Lgica Prof. Mateus Novaes

FUNDAMENTAO LGICA

Sumrio
Soluo de problemas Formalizao da soluo Construo de algoritmos Representao de algoritmos

Algoritmos

FUNDAMENTAO LGICA

Soluo de problemas

Algoritmo
Algoritmos

Sequncia de etapas que visam atingir um objetivo especfico (Solucionar um problema)

Programa

Conjunto de comandos que traduzem para o computador o que um algoritmo determinou que deva ser realizado.

Linguagens de programao

Ferramenta utilizada para criar software (programas)

Programar o ato de traduzir os comandos do algoritmo para os da linguagem de programao.

FUNDAMENTAO LGICA

Soluo de problemas

Alguns problemas encontrados no desenvolvimento de algoritmos


Dificuldade na interpretao de enunciados Dificuldade na resoluo de problemas Dificuldade em abstrair e formalizar informaes

Algoritmos

Soluo para os problemas acima: PRATICAR

FUNDAMENTAO LGICA

Soluo de problemas

Exerccios
Algoritmos

Receita para preparar um bolo

Troca de um pneu

FUNDAMENTAO LGICA

Soluo de problemas

Exerccios
Algoritmos

Determinar a sequncia de passos que se faz para vestir um traje completo, composto de: cueca, meia, cala, camisa, blusa, sapato, gravata e chapu. (S se pode colocar uma pea de cada vez) Dizer a sequncia de passos necessria para descobrir-se a posio de um nome em uma lista de chamada ordenada alfabeticamente;

FUNDAMENTAO LGICA

Soluo de problemas

Exerccios
Algoritmos

Um canoeiro deseja levar seus trs pertences de um lado do rio para o outro, porm a canoa s consegue transportar o canoeiro e um pertence de cada vez. Os pertences em questo so: uma cabra, um mao de couve e um lobo. Considere que: Se a cabra ficar sozinha com a couve, sem o canoeiro por perto, ela come a couve; Se o lobo ficar com a cabra, sem o canoeiro por perto, ele como a cabra.

FUNDAMENTAO LGICA

Soluo de problemas

Exerccios
Algoritmos

Indicar como duas jarras, que possuem 3 e 4 litros respectivamente, devem ser manipuladas, de modo que, ao final da manipulao, qualquer uma das jarras contenha exatamente dois litros de gua As jarras podem ser manipuladas das seguintes formas: Encher completamente uma jarra, utilizando a torneira; Passar a gua de uma jarra para outra; Esvaziar completamente uma jarra, jogando a gua que estiver dentro dela no ralo.

FUNDAMENTAO LGICA

Formalizao da soluo

Padronizar soluo
Algoritmos

necessria a padronizao da soluo para aproxim-la da lgica de programao Lgica de programao Uso correto das leis do pensamento, da ordem da razo e de processos de raciocnio e simbolizao formais na programao de computadores (Forbellone; Eberspacher, 2000)

FUNDAMENTAO LGICA

Formalizao da soluo

Representaes de algoritmos
Algoritmos

Fluxograma (diagrama de blocos) um tipo de algoritmo que utiliza smbolos grficos para representar aes ou instrues Pseudocdigo (pseudolinguagem ou portugol) um tipo de algoritmo que utiliza uma linguagem flexvel, intermediria entre a linguagem natural e a linguagem de programao

Estruturas bsicas para construo de algoritmos


Sequencial Deciso Repetio

FUNDAMENTAO LGICA

Formalizao da soluo

Representaes de algoritmos
Algoritmos

Fluxograma (diagrama de blocos) Estrutura sequencial

FUNDAMENTAO LGICA

Formalizao da soluo

Representaes de algoritmos
Algoritmos

Fluxograma (diagrama de blocos) Estrutura de deciso

FUNDAMENTAO LGICA

Formalizao da soluo

Representaes de algoritmos
Algoritmos

Fluxograma (diagrama de blocos) Estrutura de repetio

FUNDAMENTAO LGICA

Formalizao da soluo

Representaes de algoritmos
Algoritmos

Pseudocdigo (pseudolinguagem ou portugol) Estrutura sequencial

Operao 1 Operao 2 Operao 3 . . . Operao n

FUNDAMENTAO LGICA

Formalizao da soluo

Representaes de algoritmos
Algoritmos

Pseudocdigo (pseudolinguagem ou portugol) Estrutura de deciso

Se condicao entao Operacao 1 Senao Operacao 2 Fimse

FUNDAMENTAO LGICA

Formalizao da soluo

Representaes de algoritmos
Algoritmos

Pseudocdigo (pseudolinguagem ou portugol) Estrutura de repetio

Para i <- 1 at 10 faa Operao 1 Operao 2 . . . Operao n Fim-Para

FUNDAMENTAO LGICA

Formalizao da soluo

Incio e final de programa


Algoritmos

Pseudocdigo algoritmo primeiro_programa inicio fim-algoritmo

Fluxograma

incio
fim

FUNDAMENTAO LGICA

Formalizao da soluo

Comando de sada de dados


Algoritmos

Pseudocdigo escreva (Disciplina de algoritmos)

Fluxograma
Disciplina de algoritmos

FUNDAMENTAO LGICA

Formalizao da soluo

Comando de entrada de dados


Algoritmos

Pseudocdigo leia (NOME)

Fluxograma

NOME

FUNDAMENTAO LGICA

Representao de algoritmos
Algoritmos