Escolar Documentos
Profissional Documentos
Cultura Documentos
Instituto de Tecnologia
Faculdade de Engenharia Civil
Faculdade de Engenharia Ferroviária e Logística
Disciplinas
Programação de Computadores
Informática Aplicada a Engenharia
3
Professora Salete Souza de Oliveira -UFPA
Exemplo de algoritmo
• “Chupar uma bala”
– Pegar a bala
– Retirar o papel
– Jogar o papel no lixo
– Chupar a bala
4
Professora Salete Souza de Oliveira -UFPA
Etapas de um algoritmo
• Normalmente um algoritmo possui três etapas
distintas:
5
Professora Salete Souza de Oliveira -UFPA
Fluxograma ou Diagrama de Blocos
• O diagrama de blocos é uma forma padronizada e
eficaz para representar os passos lógicos de um
determinado processamento.
6
Professora Salete Souza de Oliveira -UFPA
Diagrama de blocos
7
Professora Salete Souza de Oliveira -UFPA
Exemplos
8
Professora Salete Souza de Oliveira -UFPA
Estruturas de Decisão
• Exercício: escreva o diagrama de blocos do algoritmo
abaixo:
9
Professora Salete Souza de Oliveira -UFPA
Exemplo de estruturas
de decisão
• Pegar a bala
• A bala é de morango?
• Se sim, não chupe a bala
• Se não, continue com o
algoritmo
• Retirar o papel
• Chupar a bala
• Jogar o papel no lixo
10
Professora Salete Souza de Oliveira -UFPA
Estruturas de Repetição
Enquanto x, processar ... (Do While ... Loop)
Até que x, processar ... (Do Until ... Loop)
Processar ..., Enquanto x (Do ... Loop While)
Processar..., Até que x (Do ... Loop Until)
Para ... Até ... Seguinte (For ... To ... Next)
11
Professora Salete Souza de Oliveira -UFPA
Estruturas de Repetição
Enquanto x, processar ...
(Do While ... Loop)
• Exemplo:
– Número igual a 0
– Enquanto número menor
ou igual a 100, some mais
um ao número
12
Professora Salete Souza de Oliveira -UFPA
Estruturas de Repetição
Até que x, processar ...
(Do Until ... Loop)
• Exemplo:
– Número igual a 0
– Até que número seja igual a 100,
some mais um ao número
13
Professora Salete Souza de Oliveira -UFPA
Estruturas de Repetição
Processar ..., enquanto x
(Do ... Loop While)
Exemplo:
Número igual a 0
Some mais um ao número;
repita enquanto número
menor ou igual a 100
14
Professora Salete Souza de Oliveira -UFPA
Estruturas de Repetição
Processar ..., até x
(Do ... Loop Until)
• Exemplo:
– Número igual a 0
– Some mais um ao número;
repita até que o número seja
igual a 100
15
Professora Salete Souza de Oliveira -UFPA
Estruturas de Repetição
Para ... Até ... Seguinte
(For ... To ... Next)
Nr>=0
Nr<=100
Exemplo:
Número igual a 0
Para número de 0 até
100, some um ao
número
16
Professora Salete Souza de Oliveira -UFPA
Declaração de variáveis
• Identificadores: São nomes arbitrários dados as
funções, variáveis, constantes. Os identificadores
podem ser letras de A à Z, números de 0 à 9 e
“_“(underline). Não pode começar com número e
depende das regras de cada compilador.
17
Professora Salete Souza de Oliveira -UFPA
Constantes e variáveis
• Constantes (constant): são elementos que tem um
valor fixo, não podendo ser mudados durante a
execução do programa;
– Exemplo: π = 3,1415927.... Em vez de escrever toda vez o
número podemos nomear uma constante PI = 3,1415927 e
durante programa utilizar PI;
• Variável (variable): são elementos que permitem a
alteração do seu valor durante a execução do
programa. É recomendável que no início do
programa seja atribuído um valor inicial a elas, que
elas sejam inicializadas;
– Exemplo: Calcule consumo médio de combustível de um
automóvel. CONSUMO= KM/L
18
Professora Salete Souza de Oliveira -UFPA
• Variável é a
representação simbólica
dos elementos de um
certo conjunto. Cada
variável corresponde a
uma posição de
memória, cujo conteúdo
pode ser alterado ao
longo do tempo durante
a execução de um
programa. Embora uma
variável possa assumir
diferentes valores, ela
só pode armazenar um
valor a cada instante
19
Professora Salete Souza de Oliveira -UFPA
Tipos de variáveis
• Numéricas: Específicas para armazenamento de números,
que posteriormente poderão ser utilizados para cálculos.
Podem ser ainda classificadas como Inteiras ou Reais.
20
Professora Salete Souza de Oliveira -UFPA
Operadores
• Operador é um símbolo que faz com que
compilador execute alguma operação matemática ou
lógica;
21
Professora Salete Souza de Oliveira -UFPA
Operadores
• Operador Aritmético
- Subtração
* Multiplicação
/ Divisão
++ Incremento
-- Decremento
** potenciação
22
Professora Salete Souza de Oliveira -UFPA
Operadores Aritméticos
• Hierarquia das operações aritméticas:
– 1 º ( ) Parênteses
– 2 º Exponenciação
– 3 º Multiplicação, divisão (o que aparecer primeiro)
– 4 º + ou – (o que aparecer primeiro)
– 1 + 7 * 2 ** 2 - 1 = ?
– 3 * (1 – 2) + 4 * 2 = ?
23
Professora Salete Souza de Oliveira -UFPA
Operadores Relacionais
• Os operadores relacionais são utilizados para comparar
String de caracteres e números. Os valores a serem
comparados podem ser caracteres ou variáveis.
• Estes operadores sempre retornam valores lógicos
(verdadeiro ou falso / True ou False).
=
!=
24
Professora Salete Souza de Oliveira -UFPA
Operadores Relacionais
• Se A = 5 e B = 3 então:
• A==B (falso ou verdadeiro?)
• A<>B (falso ou verdadeiro?)
• A>B (falso ou verdadeiro?)
• A<B (falso ou verdadeiro?)
• A>=B (falso ou verdadeiro?)
• A<=B (falso ou verdadeiro?)
25
Professora Salete Souza de Oliveira -UFPA
Operadores Lógicos
• Os operadores lógicos servem para combinar resultados de
expressões, retornando se o resultado final é verdadeiro ou
falso.
26
Professora Salete Souza de Oliveira -UFPA
Operadores Lógicos
27
Professora Salete Souza de Oliveira -UFPA
ESTRUTURA DE UM ALGORITMO
As estruturas de Controle introduzidas nesta unidade, facilitarão a
expressão de algoritmos e permitirão que exemplos mais
significativos sejam apresentados e propostos, visando o
aperfeiçoamento do desenvolvimento do processo de aprendizado da
construção de algoritmos.
• PSEUDOCÓDIGO
Algoritmo
Início
<declarações de variáveis>;
<comandos>;
fim
28
Professora Salete Souza de Oliveira -UFPA
Metodologia de Solução de algoritmos
1- Entender o problema;
2- Formular um esboço da solução;
3- Fazer uma primeira aproximação das
variáveis necessárias;
4- Rever os passos originais, detalhando;
5- Se o algoritmo estiver suficientemente
detalhado, testar com um conjunto de dados
significativos;
6- Implementar numa linguagem de
programação.
29
Professora Salete Souza de Oliveira -UFPA
UMA REFLEXÃO ANTES DE RESOLVER DE PROBLEMAS
30
Professora Salete Souza de Oliveira -UFPA
Exercícios:
1- Identifique as entradas e saídas das expressões
abaixo. Escreva-as em forma computacional
r< - 2*y**2+3*z
31
Professora Salete Souza de Oliveira -UFPA
REFERÊNCIAS
[1] AGUILAR, L. J. Fundamentos de programação: algoritmos, estrutura de dados e
objetos. McGraw Hill. 2012.
[2] AGUILAR, L. J. Programação em C ++: algoritmos, estruturas de dados e
objetos. McGraw Hill. 2012.
[3] BARBIERI FILHO, P. HETEM JUNIOR, A. Fundamentos de informática: lógica
para computação. LTC. 2012.
[4] Farrer H. et ali. Algoritmos Estruturados. Editora Guanabara S. A., Rio de Janeiro,
1985.
[5] GOODRICH, M. T.; TAMASSIA, R.Estruturas de dados e algoritmos em Java.
Bookman. 2012.
[6] Guimarães, Angelo M & Lages, Newton A. de C. Algoritmos e Estrutura de dados.
LTC - Livros Técnicos e Científicos Editora S.A. 216 – 1985.
[7] JUNIOR, D., NAKAMITI, G. Algoritmos e Programação de Computadores.
Elsevier. 2012.
[8] LOPES, A., GARCIA, G. Introdução à Programação. Elsevier. 2002.
[9] Notas de aula do Prof. Stefano -Curso básico de lógica de programação. Unicamp
[9] SOFFNER, R.Algoritmos e programação em linguagem C. SARAIVA. 2010.
[10] Tremblay, J. P; Bunt R. Ciência dos Computadores - Uma Abordagem
Algorítmica. Editora McGraw Hill do Brasil, são Paulo, 1983.
[11] Villas, Marcos V, & Villasboas, Luiz F.P. Programação Conceitos, Técnicas e
Linguagens. Ed. Campus. 195 p. 1988.