O documento discute métodos para construção de algoritmos, incluindo: (1) ler o problema atentamente e destacar pontos importantes, (2) definir dados de entrada e saída, e (3) definir o processamento e variáveis necessárias. Também apresenta formas de representar algoritmos como pseudocódigo e fluxograma.
Apresentação criada em 2017.2 para as aulas de Lógica de Programação e Algoritmos; e Programação de Computadores.
Apresenta os operadores lógicos, relacionais.
Descritiva Narrativa (Lógica de Programação)Gercélia Ramos
Existem diversas formas de se representar um algoritmo, neste slide estaremos falando sobre a Descritiva Narrativa onde descrevemos o passo-a-passo de um algoritmo.[Aula para curso técnico]
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)Gercélia Ramos
Neste slide estaremos falando sobre Estrutura de Repetição em Pseudocódigo ou Portugol utilizando características e regras da programação na ferramenta Visualg.[Aula para curso técnico]
Apresentação criada em 2017.2 para as aulas de Lógica de Programação e Algoritmos; e Programação de Computadores.
Apresenta os operadores lógicos, relacionais.
Descritiva Narrativa (Lógica de Programação)Gercélia Ramos
Existem diversas formas de se representar um algoritmo, neste slide estaremos falando sobre a Descritiva Narrativa onde descrevemos o passo-a-passo de um algoritmo.[Aula para curso técnico]
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)Gercélia Ramos
Neste slide estaremos falando sobre Estrutura de Repetição em Pseudocódigo ou Portugol utilizando características e regras da programação na ferramenta Visualg.[Aula para curso técnico]
1. Programação I
Tema 1V: Métodos de Construção de
Algoritmos
Docente: Eugénio Xavier Domingos
Caetano
2. Método para Construção de
Algoritmos
Os passos necessários para a
construção de um algoritmo são:
◦ ler atentamente o enunciado do
problema, compreendendo-o e
destacando os pontos mais importantes;
◦ definir os dados de entrada, ou seja,
quais dados serão fornecidos;
◦ definir os dados de saída, ou seja, quais
dados serão gerados depois do
processamento;
3. ◦ definir o processamento, ou seja, quais
cálculos serão efetuados e quais as
restrições para esses cálculos.
O processamento éresponsável pela obtenção
dos dados de saída com base nos dados de
entrada;
◦ definir as variáveis necessárias para
armazenar as entradas e efetuar o
processamento;
◦ elaborar o algoritmo;
◦ testar o algoritmo realizando simulações.
4. Formas de Representação de
um Algoritmo
Pseudocódigo – forma textual.
Fluxograma – forma gráfica.
5. Pseudocódigo
Com base nos conceitos vistos
podemos aprofundar nosso estudo
sobre os métodos de representação
de algoritmos, iniciaremos pelo
pseudocódigo.
Pseudocódigo é uma técnica textual
de representação de um algoritmo.
Também é conhecida como
Português Estruturado ou Portugol.
6. Nele os verbos (ações) disponíveis para
utilização são limitados e empregados
no imperativo, deve-se evitar as
expressões excessivamente longas,
estas restrições visam eliminar a
possibilidade de ambiguidade.
A técnica é baseada em uma PDL
(Program Design Language), que é uma
linguagem genérica na qual é possível
representar um algoritmo de forma
semelhante à das linguagens de
programação.
7. Pseudocódigo – Estrutura
A estrutura de um algoritmo em
pseudocódigo pode variar um pouco de
acordo com o autor ou com base na
linguagem de programação que será
utilizada posteriormente, mas essas
variações ocorrem apenas na sintaxe,
pois a semântica deve ser exatamente a
mesma.
A estrutura que empregaremos para a
construção de nossos pseudocódigos
será a seguinte:
8. algoritmo “nome”
◦ //Tem como objetivo identificar o
//algoritmo, deve-se utilizar um nome o
mais significativo //possível, para facilitar
a identificação
var
◦ // Seção de Declarações -Neste ponto
são informadas //quais variáveis, e seus
respectivos tipos, serão // utilizadas no
algoritmo
9. inicio
◦ // Seção de Comandos -Aqui seráescrita
a seqüência de comandos que deve ser
executada para solucionar o problema em
questão
Fimalgoritmo
◦ //marca o final do algoritmo
10. Dados
São as informações a serem
processadas por um computador.
Consideremos 3 tipos de dados:
◦ numéricos(inteiros e reais),
◦ caracteres
◦ e lógicos.
Tipos primitivos de dados:
◦ Inteiro: toda e qualquer informação numérica
que pertença ao conjunto dos números
inteiros (negativa, nula ou positiva).
Exemplos: 39, 0, -56 entre outros.
11. ◦ Real: toda e qualquer informação numérica
que pertença ao conjunto dos números reais
(negativa, nula ou positiva, inteiro ou
fracionário).
Exemplos:- 4, 3, 0, 35, 1,23
◦ Caractere: São caracterizadas como tipos
caracteres, as sequências contendo letras,
números e símbolos especiais.
Uma sequência de caracteres deve ser indicada
entre aspas (““).
Este tipo de dado é também conhecido como
alfanumérico, string, literal ou texto.
Exemplos: “Rua Alfa, 52 Apto 1”
12. ◦ Lógico: São caracterizados como tipos
lógicos, os dados com valores verdadeiro
e falso, sendo que este tipo de dado
poderá representar apenas um dos dois
valores.
Ele é chamado por alguns de tipo boleano,
devido à contribuição do filósofo e matemático
inglês George Boole na área da lógica
matemática.
Os dados do tipo lógico, poderão ser
apresentados e delimitados pelo caractere
ponto (.) ou não:
falso, .f., verdadeiro ou .v.
13. O Uso de Variáveis
Tem-se como definição de variável tudo
aquilo que é sujeito a variações.
Variáveis são espaços de memória que
são alocados para armazenar
informações.
Por que precisa-se de variáveis?
◦ R: Para armazenar valores que serão
utilizados posteriormente.
◦ Ex.: em um cálculo complexo, resultados
intermediários podem ser armazenados e
posteriormente processados para se obter o
resultado final.
14. Imaginemos que a memória de um
computador é um grande armário com
diversas gavetas, onde cada gaveta
pode conter somente um valor
(numérico, caractere ou lógico).
Deve-se concordar que é necessário
identificar cada gaveta para sua
utilização posterior, através de um
nome.
15. Nomenclatura e declaração
das variáveis
O nome de uma variável faz
referência ao endereço de memória
onde essa variável se encontra.
Existem algumas regras para a
utilização das variáveis:
◦ Nome de variável pode ter 1 ou mais
caracteres.
◦ O primeiro caractere de uma variável
sempre deve ser uma letra.
16. ◦ Nenhuma variável pode ter espaço em
branco em seu nome
◦ Nenhum nome de variável pode ser uma
palavra reservada a uma instrução da
linguagem usada
◦ Poderão ser utilizados somente letras,
números e sublinhado (embora algumas
linguagens aceitem o cedilha e
acentuação).
◦ Procure sempre utilizar variáveis que
tenham sentido (Mnemônicos).
Ex: alt_homens ao invés de x.
17. Comandos de Entrada e Saída
de dados
A entrada de dados será feita através da
instrução ler
leia <variável>
◦ Exemplo: leia (A)
A saída de dados será feita através da
instrução escrever: escreva <variável>
◦ Exemplo: escreva (A)
◦ escreva (“Valor de A:”, A , “A Soma de B com
C é :”, B+C)
◦ escreva (“Você pesa ”, X , “ quilos e tem ”,
idade, “anos.”)
18. Aqui colocamos em prática os
conceitos aprendidos anteriormente,
nos fatores levados em consideração
na construção de um algoritmo.
Sempre que estamos diante de um
problema, este deve ser primeiro
resolvido por nós, para que depois
seja resolvido pelo computador.
19. Isto é, ele deve ser muito bem
compreendido para que depois se
busque a solução no computador.
O computador deve ser utilizado para
agilizar os processos que executados
mecanicamente seriam muito lentos.
◦ Um exemplo bem simples: Numa turma com
50 alunos, o professor deve calcular a média
de cada aluno baseado em 3 provas, sendo
que a primeira tem peso 1, a segunda peso 2
e a terceira peso três.
◦ Para cada aluno o professor deve fazer o
seguinte cálculo: (nota 1 + nota 2 * 2 + nota
3 * 3 ) / 6.
20. Pseudocódigo –Exemplo
Observaremos agora um pseudocódigo
que recebe um valor inteiro, fornecido
pelo usuário, e o retorna no monitor.
Algoritmo “exemplo 1”
var x: inteiro
inicio
leia (x)
escreva (x)
fimalgoritmo
21. Outro exemplo éo pseudocódigo de um
algoritmo que recebe um valor inteiro,
acresce duas unidades a este, e exibe o
resultado desta manipulação.
algoritmo “exemplo 2”
var n: inteiro
inicio
escreva (“Digite um número inteiro: ”)
leia (n)
n <-n+2
escreval(“Resultado (número + 2): ”, n)
fimalgoritmo
22. Exercicios
Construa um pseudocódigo para
representar um algoritmo que efetue a
multiplicação de dois inteiros
quaisquer.
Gere um pseudocódigo que aplique
um desconto de 30% sobre o valor de
um produto, recebido como entrada, e
retorne o resultado da manipulação na
saída padrão.