Introdução aos Algoritmos - DCA

Propaganda
Universidade Federal do Rio Grande do Norte
Instituto Metrópole Digital
Cursos Técnicos
Introdução aos Algoritmos
Aula 02
Heitor Florêncio, [email protected]
Apresentação da Aula
• Nesta aula você vai:
– Conhecer o software “VisuAlg”.
– Conhecer o que são variáveis, tipos de dados e
expressões.
– Conhecer algumas regras básicas para construção
de algoritmos, como “nomeação de variáveis”.
Introdução aos Algoritmos [Heitor Florêncio]
2
Ferramentas para
Construção de Algoritmos
• Formas de representação de algoritmos:
– Descrição Narrativa
– Fluxograma
Uma opção: Utiliza o software online “Creately”, acesso
em: http://creately.com/. [Gratuito para construção
online]
– Pseudocódigo
• Software “VisuAlg”
Introdução aos Algoritmos [Heitor Florêncio]
3
VisuAlg
• VisuAlg:
Definição do software de acordo com a empresa
Apoio Informática, criadora o software VisuAlg:
“A linguagem que o VisuAlg interpreta é bem
simples: é uma versão portuguesa dos
pseudocódigos largamente utilizados nos livros de
introdução à programação, conhecida como
"Portugol"”.
Introdução aos Algoritmos [Heitor Florêncio]
4
VisuAlg
•
•
•
•
Ambiente de Programação de Pseudocódigos
Melhora o aprendizado de algoritmos
Ambiente com visual simples
Formado por:
– Barra de Ferramentas
– Editor de Texto
– Simulador de Saída
– Quadro de Saídas
Introdução aos Algoritmos [Heitor Florêncio]
5
VisuAlg
Barra de
Ferramentas
Editor
de Texto
Quadro de
Saídas
Introdução aos Algoritmos [Heitor Florêncio]
Simulação de
Saída
6
VisuAlg
•
•
•
•
•
Executar
Passo
Parar
Gerar valores aleatórios
Executar em modo DOS
Introdução aos Algoritmos [Heitor Florêncio]
7
VisuAlg
• Baseado em Portugol (pseudocódigo)
• Palavras reservadas são escritas sem acentuação:
– Algumas palavras: se, entao, senao, logico
• Não há diferenciação entre maiúsculas e
minúsculas
• Os comentários são escritos após o símbolo “//”
Introdução aos Algoritmos [Heitor Florêncio]
8
Conceitos de
Programação
•
•
•
•
•
Variáveis
Tipos de dados
Constantes
Expressões
Regras
Introdução aos Algoritmos [Heitor Florêncio]
9
Variáveis
“Uma variável é uma posição na memória do
computador, que é reservada para armazenar os
dados que o algoritmo vai manipular.”[3]
“Uma variável pode assumir valores diferentes, mas
só pode armazenar um valor a cada instante. Além
disso, o seu conteúdo pode mudar ao longo do
tempo na execução do algoritmo.”[3]
Introdução aos Algoritmos [Heitor Florêncio]
10
Variáveis e Tipos de
Dados
• Declaração:
<nome_da_variavel> : <tipo_da_variavel>
• Tipos de dados/variáveis:
– real: [12,34 ; 0,45 ; 145 ; 145,00 ; 56]
– inteiro: [43 ; 700 ; 2]
– caractere: [“teste” ; “livro de programação” ; “KLM2302”]
– logico: [verdadeiro ; falso]
• Qualquer valor que não seja “verdadeiro”, “VERDADEIRO”,
“vErdAdeiRO”, entre outros, será falso.
– literal: [“teste” ; “codigo: &f%2” ; “%%-6$”]
Introdução aos Algoritmos [Heitor Florêncio]
11
Operações de Atribuição
• Operações de atribuição (<-)
Atribuição de constante:
x <- 56
(a variável “x” recebe o valor real ou
inteiro 56)
u <- verdadeiro
(a variável “u” recebe o valor
lógico verdadeiro)
h <- “modelo”
(a variável “h” recebe o valor
literal ou caracter “modelo”)
Atribuição de expressão
y <- x + 5
Atribuição de variável
z <- y
Introdução aos Algoritmos [Heitor Florêncio]
12
Operações Aritméticas
• Operações Aritméticas
Adição (+)
Subtração (-)
Multiplicação (*)
Divisão real (/)
Divisão inteira(div)
Resto da divisão(mod ou %)
Introdução aos Algoritmos [Heitor Florêncio]
13
Operações Relacionais e
Lógicas
• Operações Relacionais
Igualdade (=)
Diferente (<>)
Menor (<)
Maior (>)
Menor ou igual (<=)
Maior ou igual (>=)
• Operações Lógicas
nao
e
ou
xou
Introdução aos Algoritmos [Heitor Florêncio]
14
Hierarquia de
Operadores
“Operadores de menor prioridade
devem ser avaliados primeiro. Em
caso de empate, as expressões
devem ser resolvidas sempre da
esquerda para a direita. Os
parêntesis forçam uma prioridade
e, no caso de parêntesis
aninhados, os mais internos devem
ser avaliados primeiro.” [3]
não
*, /, div,
mod, e
+, -, ou
Operadores
relacionais
Introdução aos Algoritmos [Heitor Florêncio]
15
Regras de Nomeação de
Variáveis
• Os nomes devem ser iniciados por um caractere
alfabético (letra) ou pelo caractere ‘_’.
• Os nomes podem possuir números, desde que se
inicie por letra.
• Além de letras, números e o caractere ‘_’, não é
aceito nenhum outro símbolo. Letras gregas também
não são aceitas.
• O nome de uma variável devem revelar seu
propósito, porque existe, o que faz e como é usado.
• Apesar de não haver limitações para a quantidade de
caracteres que comporão o nome de uma variável,
não alongue desnecessariamente os nomes.
Introdução aos Algoritmos [Heitor Florêncio]
16
Regras de Nomeação de
Variáveis
• Exercício: Classifique os nomes do conjunto
abaixo entre válidos ou não válidos.
custo ; nome ; indice ; d ; salario ; 1hora ; c&a ;
notas ; 1nota ; 2ºnota ; terceiraNota ; resultado ;
100% ; _teste ; teste_lab ; @salario% ; nota/2 ;
remédio ; ano de nascimento ; ano_de_nascimento
Introdução aos Algoritmos [Heitor Florêncio]
17
Regras de Nomeação de
Variáveis
• Resolução: Os nomes foram classificados em dois
conjuntos, válidos e não válidos.
custo ; nome ; indice ; d
salario
;
notas
terceiraNota ; resultado
_teste ; teste_lab
ano_de_nascimento
Válidos
Introdução aos Algoritmos [Heitor Florêncio]
;
;
;
;
1hora ; c&a ; 1nota ;
2ºnota
;
100%
;
@salario% ; nota/2 ;
remédio
;
ano
de
nascimento ;
Não válidos
18
Modelo de um Código
em VisuAlg
algoritmo “nomedoAlgoritmo"
// Função :
// Autor :
// Data :
// Seção de Declarações
var
inicio
// Seção de Comandos
fimalgoritmo
Introdução aos Algoritmos [Heitor Florêncio]
19
Exemplo 01
• Função do algoritmo: Calcular a área de um
triângulo, recebendo como entrada a altura e
base do triângulo. Sabendo que a área é dada
por: (altura * base) / 2
Introdução aos Algoritmos [Heitor Florêncio]
20
Exemplo 01
• Pseudocódigo:
algoritmo "Calcular a área de um triângulo"
// Função : Calcular a área de um triângulo
// Autor : Heitor Medeiros Florencio
// Seção de Declarações
var
altura, base, area : real
inicio
// Seção de Comandos
escreval("----------Calculo da Área de Triângulo----------")
escreval("Digite o valor da altura do triângulo:")
leia(altura)
escreval("Digite o valor da base do triângulo:")
leia(base)
area <- (altura * base)/2
escreval("Área:", area)
fimalgoritmo
Introdução aos Algoritmos [Heitor Florêncio]
21
Exemplo 01
• Fluxograma:
Introdução aos Algoritmos [Heitor Florêncio]
22
Referências
• [1] Souza, M. et al. Algoritmos e Lógica de
Programação. Ed. Thomson, 2006.
• [2] Szwarcfiter, Jayme L. e Markenzon, L.
Estruturas de Dados e seus Algoritmos. Ed. LTC,
1994.
• [3] Material didático: Lógica de Programação.
Institudo Metrópole Digital, UFRN, 2014.
Introdução aos Algoritmos [Heitor Florêncio]
23
Dúvidas
Introdução aos Algoritmos [Heitor Florêncio]
24
Download