29
ALGORITMOS –AULA 1 Profª Amanda Gondim

Profª Amanda Gondim - UFERSA 01... · Fluxograma e Pseudocódigo para calcular a média aritmética de um aluno e mostrar a situação, que pode ser aprovado ou reprovado. a) Descrição

  • Upload
    vudiep

  • View
    217

  • Download
    0

Embed Size (px)

Citation preview

ALGORITMOS – AULA 1Profª Amanda Gondim

NOÇÕES DE LÓGICA

�O que é lógica?

� A lógica trata da correção do pensamento

� Ensina-nos a usar corretamente as leis do pensamento� Ensina-nos a usar corretamente as leis do pensamento

�É a arte de pensar corretamente�A forma mais complexa do pensamento é o

raciocínio�Ordem da razão (nossa razão pode funcionar

desordenadamente) ou ordem no pensamento2

EXISTE LÓGICA NO DIA-A-DIA?

�Exemplos :a) A gaveta está fechada.

A agenda está na gaveta.Preciso primeiro abrir a gaveta, para depois pegar a agenda.

b) Ana é mais velha do que JoãoJoão é mais velho do que PedroPortanto, Ana é mais velha do que Pedro.

3

ALGORITMO• Exemplo :

• Receita de bolo , onde você tem uma sériede ingredientes necessários, uma sequênciade diversos passos a serem cumpridos paraque se consiga fazer determinado tipo de

4

que se consiga fazer determinado tipo debolo (objetivo bem definido).

• Mapa para se chegar à UFERSA , quetambém possui uma sequência de passos aserem seguidos e um objetivo bem definido.

ALGORITMO�Problema de uma lâmpada queimada que deve

ser trocada, atividade bem cotidiana.

� Pegue uma escada;� Posicione -a embaixo da lâmpada ;� Posicione -a embaixo da lâmpada ;� Busque uma lâmpada nova;� Suba na escada;� Retire a lâmpada;� Coloque uma lâmpada nova;� Acenda o interruptor.

5

ALGORITMO� O objetivo de trocar a lâmpada queimada pode ser

atingido com tal algoritmo que descreve a sequência depassos a ser seguida. Porém, e se a lâmpada não estiverqueimada? podemos efetuar um teste antes de trocá-la.� ligue o interruptor� ligue o interruptor� SE a lâmpada não acender, então:

� pegue uma escada� posicione-a embaixo da lâmpada� busque uma lâmpada nova

� suba na escada� retire a lâmpada� coloque uma lâmpada nova

� Ligue o interruptor.6

ALGORITMO� E se a lâmpada nova não funcionar? O objetivo portanto

não foi atingido. Devemos então trocar a lâmpadadiversas vezes, até que funcione.� ligue o interruptor;� SE a lâmpada não acender, então:

O fluxo sequencial deexecução foi alterado de� SE a lâmpada não acender, então:

� pegue uma escada;� posicione-a embaixo da lâmpada;� busque uma lâmpada nova;� suba na escada;� retire a lâmpada;� coloque uma lâmpada nova.� ENQUANTO a lâmpada não acender:

� retire a lâmpada;� coloque outra lâmpada.

7

execução foi alterado deforma que após a ação“coloque outra lâmpada”o teste “se a lâmpada nãoacender” volte a serexecutado o número devezes necessário para seatingir o objetivo. (fluxorepetitivo)

ALGORITMOS NÃO COMPUTACIONAIS

Exemplo: Fazer um Sanduíche

1. Pegar o pão2. Cortar o pão ao meio3. Pegar a maionese

8

3. Pegar a maionese4. Passar a maionese no pão5. Pegar e cortar alface e tomate6. Colocar alface e tomate no pão7. Pegar o Hambúrguer8. Fritar o Hambúrguer9. Colocar o Hambúrguer no pão

ALGORITMOS NÃO COMPUTACIONAIS

�Você pode estar pensando: “Mas eu realizoessas atividades de maneira diferente!”

�Esse pensamento é correto, pois às vezes um�Esse pensamento é correto, pois às vezes umproblema pode ser resolvido de diversasmaneiras, porém, gerando a mesma resposta,ou seja, podem existir vários algoritmos parasolucionar o mesmo problema.

9

PORTUGUÊS ESTRUTURADO

(PORTUGOL)

�Para que o algoritmo possa ser executado poruma máquina é importante que as instruçõessejam corretas e sem ambiguidades.

�Portanto, a forma especial de linguagem queutilizaremos é bem mais restrita que oPortuguês e com significados bem definidospara todos os termos utilizados nasinstruções.

10

PORTUGUÊS ESTRUTURADO

(PORTUGOL)�O português estruturado é, na verdade, uma

simplificação extrema do Português, limitada aumas poucas palavras e estruturas que têm umsignificado muito bem definido.

11

ALGORITMOS COMPUTACIONAIS

�Um programa é um conjunto de milhares deinstruções que indicam ao computador, passoa passo, o que ele tem que fazer.

�Logo, um programa nada mais é do que umalgoritmo computacional descrito em umalinguagem de programação .

12

MÉTODO PARA CONSTRUÇÃO DE

ALGORITMOS

�Para construção de qualquer algoritmo, énecessário seguir estes passos:

� Compreender completamente o problema a ser resolvido,destacando os pontos mais importantes e os objetos que odestacando os pontos mais importantes e os objetos que ocompõem.

� Definir os dados de entrada, ou seja, quais dados serãofornecidos.

13

MÉTODO PARA CONSTRUÇÃO DE

ALGORITMOS� Definir o processamento, ou seja, quais cálculos serão

efetuados. O processamento é responsável pela transformaçãodos dados de entrada em dados de saída.

� Definir os dados de saída.

� Construir o algoritmo.

� Testar o algoritmo realizando simulações.

14

TIPOS DE ALGORITMOS

�Os três tipos mais utilizados de algoritmossão:

� Descrição Narrativa

� Fluxograma

� Pseudocódigo ou Portugol ou Português Estruturado

15

DESCRIÇÃO NARRATIVA

�Consiste em analisar o enunciado doproblema e escrever, utilizando umalinguagem natural (por exemplo, a línguaportuguesa), os passos a serem seguidospara sua resolução.para sua resolução.

�Vantagem : Não é necessário aprendernenhum conceito novo, pois é a linguagemnatural.

16

DESCRIÇÃO NARRATIVA

� Exemplo: Somar três números

1. Recebe os três números2. Somar os três números2. Somar os três números3. Mostrar o resultado obtido

17

FLUXOGRAMA� Utiliza símbolos gráficos predefinidos para a resolução do

problema.

Algoritm

os

18

FLUXOGRAMA

� Exemplo: Somar três números

19

PORTUGUÊS ESTRUTURADO

� Consiste em analisar o enunciado doproblema e escrever, por meio de regraspredefinidas, os passos a serem seguidospara sua resolução.

� Vantagem : A passagem do algoritmo paraqualquer linguagem de programação équase imediata, bastando conhecer aspalavras reservadas dessa linguagem queserão utilizadas. 20

PORTUGUÊS ESTRUTURADO

� A estrutura geral de um algoritmo é:

Algoritmo "<nome do algoritmo>"var

21

var< declaração de variáveis>

inicio< lista de comandos>

fimalgoritmo

PORTUGUÊS ESTRUTURADO� Exemplo: Somar três números

ALGORITMO Somavar

A, B, C, D: inteiroinicio

22

escreva (“Digite o valor de A: ”)leia (A)escreva (“Digite o valor de B: ”)leia (B)escreva (“Digite o valor de C: ”)leia (C)D <- A + B + Cescreva (“D= ”, D)

fimalgoritmo

EXERCÍCIOS

1. Faça um algoritmo para mostrar o resultadoda multiplicação de dois números (DescriçãoNarrativa, Fluxograma e Pseudocódigo):

Descrição Narrativa:a) Descrição Narrativa:1. Receber os números que serão multiplicados2. Multiplicar os números3. Mostrar o resultado obtido na multiplicação

23

EXERCÍCIOSb) Fluxograma:

24

EXERCÍCIOSc) Pseudocódigo

ALGORITMO Multiplicacaovar

M, N1, N2: inteiroinicio

25

inicioescreva (“Digite o valor de N1: ”)leia (N1)escreva (“Digite o valor de N2: ”)leia (N2)M <- N1 * N2escreva (“M = ”, M)

fimalgoritmo

EXERCÍCIOS2. Faça um algoritmo para mostrar o resultado da divisão de

dois números (Descrição Narrativa, Fluxograma e Pseudocódigo)

26

EXERCÍCIOS

3. Faça um algoritmo em Descrição Narrativa,Fluxograma e Pseudocódigo para calcular amédia aritmética de um aluno e mostrar asituação, que pode ser aprovado oureprovado.reprovado.

a) Descrição Narrativa

1. Receber as duas notas2. Calcular a média aritmética3. Mostrar a média aritmética4. Se a média for maior ou igual a 7, então a

situação do aluno é aprovado; caso contrário, asituação é reprovado.

27

EXERCÍCIOSb) Fluxograma

28

EXERCÍCIOSc) Pseudocódigo

ALGORITMO Mediavar

M, N1, N2: realinicio

escreva (“Digite o valor de N1: ”)leia (N1)

29

leia (N1)escreva (“Digite o valor de N2: ”)leia (N2)M <- (N1 + N2) / 2escreva (“M = ”, M)se (M >= 7) entao

escreva(“ O aluno esta Aprovado ")senao

escreva(“ O aluno esta Reprovado ")fimsefimalgoritmo