Este documento fornece uma introdução aos conceitos básicos de algoritmos e programação, incluindo:
1) Apresenta o Visualg como uma ferramenta para editar, interpretar e executar algoritmos usando uma linguagem próxima do português.
2) Discute as três formas comuns de representar algoritmos: fluxogramas, Portugol e pseudocódigo. O curso irá utilizar fluxogramas e Portugol.
3) Explica conceitos-chave como variáveis, tipos de dados, comentários, comandos de entrada e saída.
4. • Algoritmos
• Introdução
• Nesta unidade veremos PORTUGOL, que é uma
forma de escrita estruturada, cuja finalidade é:
• Todas as linhas devem conter uma única
instrução iniciada por verbos no imperativo.
4
Descrever em uma sequência lógica
os passos para a resolução de um
problema.
O imperativo é o modo verbal pelo qual se expressa uma
ordem, pedido, orientação ou conselho.
6. • Algoritmos
• Visualg
• O Visualg (Visualizador + Algoritmo) é um
programa que:
Edita, interpreta e executa algoritmos com uma
linguagem próxima do português.
• Idealizado e desenvolvido pelo professor
Cláudio Morgado.
• A ferramenta foi criada para ser usada no
auxílio à construção de algoritmos.
6
13. • Algoritmos
• Formas de representação de algoritmos
• Os algoritmos podem ser representados de três
formas:
13
Fluxograma Nassi Shneiderman
algoritmo: “soma”
var:
n1, n2, soma: inteiro
inicio
n1 ← 10
n2 ← 5
soma ← n1 + n2
escreva (soma)
fimalgoritmo
Portugol
Inicio
Fim
n1, n2
Soma ← n1 + n2
Soma
14. • Algoritmos
• Formas de representação de algoritmos
• Utilizaremos Fluxogramas e Portugol...
14
algoritmo: “soma”
var:
n1, n2, soma: inteiro
inicio
n1 ← 10
n2 ← 5
soma ← n1 + n2
escreva (soma)
fimalgoritmo
a) b)Inicio
Fim
n1, n2
Soma ← n1 + n2
Soma
15. • Algoritmos
• Formas de representação de algoritmos
• Fluxogramas
Formas Geométricas que representam as “ações”:
15
- Indica o inicio e fim do algoritmo.
- Utilizado para representar entrada de dados.
- Utilizado para representar a saída de dados.
- Indica cálculos e atribuição de valores.
- Indica uma tomada de decisão ou repetição.
- Indica o sentido do fluxo de dados.
16. • Algoritmos
• Formas de representação de algoritmos
• Portugol
Representação em Pseudocódigo:
16
algoritmo "<nome_do_algoritmo>"
var
<declaração_de_variáveis>
inicio
<corpo_do_algoritmo>
fim
17. • Algoritmos
• Formas de representação de algoritmos
• A primeira linha é composta pela palavra-chave
algoritmo seguida do seu nome.
• A seção seguinte é a de declaração de
variáveis, que termina com a linha que contém
a palavra-chave inicio.
• A partir desse ponto está a seção de comandos,
que encerra com a palavra-chave fimalgoritmo.
17
19. • Algoritmos
• Visualg
• Executando o Algoritmo
Algoritmo »» Executar
Barra de Ferramentas
19
20. • Algoritmos
• Visualg
• Executando um Programa
• Executar:
Executa o algoritmo e apresenta o resultado no
console (cmd).
• Passo a Passo:
O usuário “dita” o ritmo de execução do algoritmo.
• Executar com timer:
O algoritmo é executado de forma interativa,
sublinhando em azul a linha que está sendo
executada.
20
22. • Algoritmos
• Visualg
• Comentários
• Um trecho de texto incluído dentro do programa
para descrever alguma coisa.
• Os comentários não modificam o funcionamento
do programa.
São ignorados pelo compilador.
• Servem, apenas para ajudar o programador a
organizar o seu código.
22
23. • Algoritmos
• Visualg
• Comentários
• Portugol, permite fazer comentários apenas por
linha.
Sintaxe por linha: // (duas barras).
23
algoritmo "Comentário"
// Função: Comentários
// Autor : Jeovane Reges
// Data : 12/06/2016
// Seção de Declarações
var
inicio
fimalgoritmo
Comentários
25. • Algoritmos
• Tipos de Dados
• O VisuAlg prevê cinco tipos de dados: inteiro,
real, caractere, literal e lógico.
• Inteiro:
Define variáveis numéricas do tipo inteiro, ou seja,
sem casas decimais.
• Real:
Define variáveis numéricas do tipo real, ou seja, com
casas decimais.
25
26. • Algoritmos
• Tipos de Dados
• Caractere:
Define variáveis que armazenam um único caractere.
Ex.: utilizar a letra “F” para indicar o sexo feminino.
• Literal:
Define variáveis para armazenar uma sequência de
caracteres. Ex.: uma palavra, uma mensagem e etc.
• Logico:
Define variáveis do tipo booleano, ou seja, com valor
VERDADEIRO ou FALSO.
26
27. • Algoritmos
• Tipos de Dados
Exemplo:
27
Tipos Primitivos
Tipo Exemplo
Inteiro 19
Real 9.8
Caractere “a”
Literal “ Algoritmos”
Lógico Verdadeiro
29. • Algoritmos
• Variáveis
• São locais utilizados para armazenar valores na
memória para serem manipulados.
• Para fazer essa indicação utiliza-se um comando de
atribuição, representado por uma seta (←).
• Toda variável é caracterizada por um nome, que a
identifica em um programa.
• Também é identificada por um tipo, que determina
o que pode ser armazenado nela. 29
30. • Algoritmos
• Variáveis
• Regras para nomenclatura de variáveis
O primeiro caractere obrigatoriamente deve ser uma
letra ou underline, mas nunca um número.
Não é permitido utilizar caracteres especiais ($, #, @
e etc), com exceção do underline ( _ ).
Não é permitido utilizar acentos gráficos ou cedilha.
Não é permitido utilizar espaço em branco.
Não é permitido utilizar palavras-chave da
linguagem
• Ex.: inicio, fimalgoritmo, var e etc.
30
32. 32
Não é sensitive case, ou seja, não
diferencia letras maiúsculas de
minúsculas.
33. • Algoritmos
• Variáveis
• Sintaxe:
• As variáveis devem ser declaradas dentro da
seção var.
33
<variável> : <tipo-de-dado>
<v1, v2, ..., vn> : <tipo-de-dado>
Atribuímos valores as variáveis com o marcador menor quê e
o sinal de menos: ←
34. • Algoritmos
• Variáveis
• Exemplos:
a : real
a ← 60.7
b, c : inteiro
b ← 15
c ← 8
34
// Ambas as variáveis serão inteiras.
36. • Algoritmos
• Variáveis
• Identação:
• Veja que as instruções não seguem o
alinhamento das palavras início e fimalgoritmo.
Chamamos esse recuo de identação.
• A identação não é obrigatória, mas é uma
prática bastante recomendada.
• Facilita a visualização da delimitação dos blocos
de execução de qualquer algoritmo.
36
38. • Algoritmos
• Visualg
• Comandos de Saída
• Exibir uma mensagem ou resultado para o
usuário na tela do computador.
escreva e o escreval
• Sintaxe:
38
escreva("<mensagem>")
escreva("<mensagem>", <identificador>)
39. • Algoritmos
• Visualg
• Comandos de Saída
Exemplos:
39
escreva("Hello World")
escreva("A soma é: ", soma)
escreval("Hello World")
escreval("A soma é: ", soma)
Note que as mensagens estão entre ASPAS DUPLAS.
41. • Algoritmos
• Visualg
• Comando de Entrada
• É uma instrução que recebe dados do teclado
para realizar alguma tarefa.
• Esses dados são armazenados em variáveis.
leia
• Sintaxe:
41
leia(<variavel>)
42. • Algoritmos
• Visualg
• Comando de Entrada
Exemplo:
42
algoritmo "Exemplo02"
var
msg: literal
inicio
escreva("Digite uma mensagem: ")
leia(msg)
escreval(msg)
fimalgoritmo