SlideShare uma empresa Scribd logo
Visualg
Sistemas de Informação
Disciplina: Informática Básica
Pedro Silva
• Dados (variáveis e constantes)
• Tipos de dados
• Operadores
• Comandos
• Funções
• Comentários
Elementos de um Algoritmo
2
Exemplo
comentário
variáveis
tipo de uma variável
operador
função
3
• Constantes
– O valor de uma constante não se altera após sua
definição.
– Exemplos:
• const_pi  3,1415
• Variáveis
– Elemento que têm a função de associar um nome a uma
área da memória onde um dado pode ser armazenado
Constantes e Variáveis
4
• Definem:
– A natureza do dado
– As operações que podem ser realizadas com o dado
– O espaço a ser ocupado na memória
• Declarações:
– a, b, c, maior: real
– x, y: inteiro
– achou: logico
– texto: caractere
Tipos
5
Tipos
• Tabela de tipos Visualg:
Tipo Descrição
Inteiro Representa valores inteiros.
Exemplos: 10, 5, -5, -10
Real ou
Numérico
Representa valores reais (com ponto separador
da parte decimal).
Exemplos: 10, 15.5, -14.67
Literal ou
Caractere
Representa texto (seqüência ou cadeia de
caracteres) entre aspas duplas.
Exemplo "Esta é uma cadeia de caracteres", “B”,
“1234”
Lógico Representa valores lógicos (VERDADEIRO ou
FALSO)
6
Entrada e Saída
• Algoritmos objetivam transformar informações
• Algoritmo = Entrada + Processamento + Saída
• Entrada: obtenção de dados provenientes do meio externo
– Comando: leia
– Exemplos:
• leia (X)
• leia (A, NOTA)
7
Entrada e Saída
• Saída: entrega dos resultados ao meio externo
• Comandos: escreva ou escreval
• Exemplos:
– escreva (X)
– escreva (B, MEDIA, 2+2)
– escreval (“cliente cadastrado com sucesso”)
8
• Atribuição
• Aritméticos
• Relacionais
• Lógicos
Operadores
9
• Utilizado para atribuir um valor a uma variável (“=“ ou
“:=“ ou “← ”):
• Visualg: “:=“ ou “← ”
• Notação:
x1 ← 23;
temp ← x1;
nome ← “Carlos da Silva”;
nome da variável Valor
Operador de Atribuição
10
• Dados de entrada: tipo numérico (inteiro ou real)
• Resultado: tipo numérico (inteiro ou real)
• Exemplos:
– x_2 ← 2 + 3;
– x_3 ← 3 / 2;
– alfa ← 1 div 5;
– resto ← 10 % 3;
– resto ← 1 % 4;
– delta ← 5*5–4*1*4;
Operadores Aritméticos
11
Operadores Aritméticos
Operação Operador
Adição +
Subtração -
Multiplicação *
Divisão /
Divisão Inteira  ou div
Exponenciação ^ ou Exp (<base>,<expoente>)
Resto da Divisão %
12
• Dados de entrada: tipo numérico (int ou float) ou
caracteres
• Resultado: tipo lógico
Operadores Relacionais
Operador Operação
a < b a é menor que b
a <= b a é menor ou igual a b
a > b a é maior que b
a >= b a é maior ou igual a b
a = b a é igual a b
a <> b a não é igual a b
13
• Exemplos:
– cond1 ← 2 = 3 // (falso)
– cond2 ← 1.6 <> 5.0 // (verdadeiro)
– cond3 ← 1 > 5 // (falso)
– cond4 ← (1 + 2) < 5 // (verdadeiro)
– cond5 ← 10 >= 3 // (verdadeiro)
– cond6 ← 1 <= 4 // (verdadeiro)
– cond7 ← “café” < “expresso” // (verdadeiro)
– cond8 ← “café” =“café” // (verdadeiro)
– cond9 ← “café” >= “mocha” // (falso)
Operadores Relacionais
14
• Dados de entrada: tipo lógico
• Resultado: tipo lógico
• E (AND), OU (OR), NAO (NOT)
Operadores Lógicos
Operação Resultado
a E b VERDADEIRO se ambas as partes (a e b)
forem verdadeiras
a OU b VERDADEIRO se apenas uma das partes
(a ou b) é verdadeira.
NAO a Nega uma afirmação, invertendo o seu
valor lógico: se a for
VERDADEIRO retorna FALSO, se a for
FALSO retorna VERDADEIRO.
15
• Exemplos:
– cond1 ← verdadeiro E falso // (falso)
– cond2 ← falso OU falso //(falso)
– cond3 ← NAO cond1 // (verdadeiro)
– cond4 ← (verdadeiro E falso) OU (5 > 3)
// (verdadeiro)
Operadores Lógicos
16
Tabela Verdade
a b a E b a OU b NAO a NAO b
V V V V F F
V F F V F V
F V F V V F
F F F F V V
17
Prioridade dos Operadores
Operador Aritmético Prioridade
Exponenciação 3 (maior)
Multiplicação 2
Divisão 2
Adição 1
Subtração 1 (menor)
Operador Lógico Prioridade
E 3
OU 2
NAO 1
18
• Podem ser pré-definidas da linguagem ou definidas
pelo programador
• Exemplos:
– seno(angulo)
– exp(x,y)
– ler(var1,var2,...)
– escrever(resul1,result2,...)
Funções
19
Funções Pré-definidas
Função Descrição
Abs (valor : real) : real Valor absoluto
Asc (s : caracter) : inteiro Retorna o código ASCII
Compr (c : caracter) :
inteiro
Retorna o tamanho da
cadeia de caracteres
Cos (valor : real) : real Cosseno
Exp (<base>,<expoente>) Exponenciação
Int (valor : real) : inteiro Converte o valor em
inteiro
Log (valor : real) : real Logaritmo de base 10
Pi : real A constante PI
Sen (valor : real) : real Seno
Raizq (valor : real) : real Raiz quadrada
Quad (valor : real) : real Elevado quadrado
Pressionando
(CTRL+J) o
Visualg mostra
uma Lista de
funções
predefinidas
20
• Utilizados para descrever
texto esclarecendo
trechos do código
– // (C++, Visualg)
– algoritmo "semnome"
– // Função :
– // Autor :
– // Data :
– // Seção de
Declarações
– inicio
– // Seção de Comandos
– fimalgoritmo
Comentários
21
COMANDOS
22
Forma Geral do Algoritmo
23
Forma Geral
24
Iniciando em algoritmos...
• De forma genérica, a construção de um algoritmo se resume às
seguintes etapas:
1. entendimento do problema
2. elaboração da solução algorítmica
3. codificação da solução em pseudo-código ou linguagem de
programação
• Geralmente a etapa 2 é a mais complexa
25
Estruturas Sequenciais
• O fluxo de controle segue a mesma seqüência
• linear da nossa escrita, ou seja:
– De cima para baixo;
– Da esquerda para direita
26
Exemplo
• Enunciado: Fazer um programa que leia dois valores reais, e
calcule e exiba a média aritmética
• Uma boa prática seria decompor o problema em problemas
menores!! “Dividir para conquistar”
27
Exemplo
• Passo 1
– Qual a fórmula da média?
– A média aritmética de dois valores é calculada como (a+b)/2
• Passo 2
– Os dados necessários serão os dois valores, que colocaremos em
duas variáveis A e B do tipo real, e uma terceira variável, que
chamaremos MEDIA, para armazenar a média aritmética calculada.
28
Exemplo
• Passo 3
– A entrada dos dados neste programa é simples e direta.
– Pedir ao usuário que digite os dois valores
• Passo 4
– O processamento é o cálculo da média, usando a fórmula
mencionada na etapa 1.
– O resultado do cálculo será armazenado na variável MEDIA.
29
Estruturas Sequenciais
Exemplo
30
início
olhar o céu
fim
levar
guarda-
chuva
usar
roupa
leve
chuva?
V
F
Estrutura Condicional
• Execução seletiva ou condicional
– Depende da avaliação da condição
• Permite a escolha de um grupo de
ações (bloco), quando certas condições
são (ou não são) satisfeitas.
Estrutura Condicional
• Simples
• Composta
32
início
olhar o céu
fim
acender
luz
escuro?
V
F
Estrutura Condicional Simples
33
se <condição> entao
<bloco de ações>
fimse
Estrutura Condicional Simples
• Utilizada quando precisamos testar uma certa
condição antes de executar uma ação
34
Exemplo
Algoritmo “Media”
var
// declaração de variáveis:
N1, N2, NF, media : real
inicio
// início do programa
leia(N1,N2,NF)
media ← (N1 + N2 + NF) / 3.0
se (media ≥ 7.0) entao
escreva(“Aluno aprovado”)
fimse
fimalgoritmo
35
Exercício
• Crie um algoritmo que leia um valor e mostre esse
valor caso ele seja maior que zero.
Algoritmo “MostraMaiorZero”
var
// declaração de variáveis:
num : inteiro
inicio
// início do programa:
leia(num)
se (num > 0) entao
escreva(“numero maior que zero:”, num)
fimse
fimalgoritmo
36
se <condição> entao
<bloco de ações1>
senão
<bloco de ações2>
fimse
Estrutura Condicional Composta
• Utilizada em situações em que duas alternativas
dependem da mesma condição, uma da condição
verdadeira (então) e a outra da condição falsa
(senão).
37
Algoritmo “Media2”
var
// declaração de variáveis:
N1, N2, NF, media : real
inicio
// início do programa:
leia(N1,N2,NF)
media ← (N1 + N2 + NF) / 3.0
se (media ≥ 5.0) entao
escreva("Aluno aprovado")
senão
escreva("Aluno reprovado")
fimse
fimalgoritmo
Exemplo
38
Algoritmo “Dif2Numeros”
var
// declaração de variáveis:
N1, N2, Dif : inteiro
inicio
// início do programa:
leia(N1,N2)
se N1 > N2 entao
Dif ← N1 - N2
senao
Dif ← N2 - N1
fimse
escreva(“a diferença é”, Dif)
fimalgoritmo
Exercício
• Crie um algoritmo que
leia dois números
inteiros e calcule a
diferença entre eles.
• A diferença é o maior
número menos o
menor
39
Algoritmo Maior3Numeros
var
N1, N2, N3 : real
inicio
leia(N1,N2,N3)
se N1 ≥ N2 e N1 ≥ N3 entao
escreva(N1, "é o maior")
senao
se N2 ≥ N1 e N2 ≥ N3 entao
escrever(N2, "é o maior")
senao
escrever(N3, "é o maior")
fimse
fimse
fimalgoritmo
Estrutura Condicional Composta
40
Estruturas de Repetição
• Permitem que uma sequência de comandos seja executada
repetidamente, até que determinada condição de interrupção seja
satisfeita
• São também conhecidas como laços (loop) ou malhas
• Cada repetição do bloco de comandos é chamada iteração
41
Estruturas de Repetição
• A repetição de comandos em um laço pode seguir um dos seguintes
critérios:
– Por Condição (Verificação no Início)
– Por Condição (Verificação no Fim)
– Por Contagem
42
enquanto <condição> faca
<ação 1>
<ação 2>
...
<ação n>
fimenquanto
Verificação no Início
• Os comandos do bloco de ações são executados
enquanto uma condição é atendida (verdadeira)
43
...
soma ← 0
i ← 1
enquanto (i ≤ N) faca
soma ← soma + i
i ← i + 1
fimenquanto
escreval(“a soma é:”, soma)
Verificação no Início
• Dado o valor de N, calcular a soma dos
números inteiros de 1 a N
44
repita
<ação 1>
<ação 2>
...
<ação n>
ate <condição>
Verificação no Fim
• Os comandos do bloco de ações são executados até que
uma condição seja atendida (verdadeira)
45
...
soma ← 0
i ← 1
repita
soma ← soma + i
i ← i + 1
ate (i > N)
escreval(“a soma é:”, soma)
Verificação no Fim
• Dado o valor de N, calcular a soma dos
números inteiros de 1 a N
46
Verificação no fim
O conjunto de instruções
será executado pelo menos
uma vez
Condição é verificada depois
do conjunto de instruções
Verificação no início
Condição é verificada
antes do conjunto de
instruções
Verificação no Fim × Verificação no Início
47
para variavel de início ate
fim passo <incremento> faca
<ação 1>
<ação 2>
...
<ação n>
fimpara
Repetição por Contagem
• Permite que comandos sejam repetidos um
determinado número de vezes.
48
Repetição por contagem
• início: indica a variável de controle do laço (contador) e seu valor inicial.
• fim: define o valor final da variável de controle
• incremento: define como a variável de controle se altera a cada
repetição
49
...
soma ← 0
para i de 1 ate N passo 1
faca
soma ← soma + i
fimpara
escreval(“a soma é:”, soma)
...
Repetição por Contagem
• Dado o valor de N, calcular a soma dos números
inteiros de 1 a N
50
Repetição por Contagem
• Algoritmo que lê e escreve os números
ímpares de 1 a 1000.
para i de 1 ate 1000 passo 2 faca
escreval (i, “ é ímpar”)
fimpara
51
Exercícios
1. Implemente um código para calcular a média de três números
informados pelo usuário;
2. Implemente um código que leia o raio (R) de um círculo,
calcule a área (A) do mesmo; A = π * R².
3. Faça um código que leia as seguintes informações:
– Altura e Largura de uma parede;
– Altura e Largura de azulejos;
– Calcule e informe a quantidade de azulejos necessários para
cobrir a parede.
Exercício
4. Implemente um código que, leia valores para a, b e c, e
calcule x’ e x’’ usando a fórmula de Bhaskara:
• Exemplo: no conjunto de teste (x2 – 2x + 1 = 0), os valores
serão a = 1, b = -2 e c = 1.
Referências
• TONET, Bruno. Software Visualg 2.0. 2012.
• LAGEMANN, Gerson Volney. Algoritmos com VisuAlg.
• http://www.apoioinformatica.inf.br/produtos/visualg
Visualg

Mais conteúdo relacionado

ODP
Variáveis e portugol
PPT
Material de Apoio de Algoritmo e Lógica de Programação
PDF
Pseudocódigo ou Portugol (Lógica de Programação)
PPT
Algoritmo - tipos de dados
PDF
Algoritmos e lp parte 4-vetores matrizes e registros
PDF
Algoritmos e lp parte3-pseudocódigo
PDF
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
TXT
Exercicios resolvidos visu alg vetores
Variáveis e portugol
Material de Apoio de Algoritmo e Lógica de Programação
Pseudocódigo ou Portugol (Lógica de Programação)
Algoritmo - tipos de dados
Algoritmos e lp parte 4-vetores matrizes e registros
Algoritmos e lp parte3-pseudocódigo
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Exercicios resolvidos visu alg vetores

Mais procurados (20)

PPTX
Aula 07 - Visualg e Pseudocódigo
ODP
Algoritmo aula 01-f
PDF
PDF
Fluxograma (Lógica de Programação)
PDF
Lista de Exerícios - Manutenção e Redes de Computadores IFNMG - Campus Januária
PPT
Introdução - Arquitetura e Organização de Computadores
PDF
Manual de portugol
PDF
Lógica de programação em ppt
PPTX
Lógica de Programação - Algoritmos
PDF
Lista de exercicios algoritmos com pseudocodigo
PPT
Algoritmo 04 - Estruturas de decisão
PPTX
Introdução à Lógica de Programação
ODP
Aula01 - Logica de Programação
PDF
1.Introdução Banco de Dados
PDF
Sistemas operacionais
PDF
Aula Lógica de Programação - cap1
PDF
Aula 4 - Teste de mesa
PPT
Arquitetura cliente servidor
POT
Algoritmo 06 - Array e Matrizes
PPTX
Aula 06 - Sistema Binário
Aula 07 - Visualg e Pseudocódigo
Algoritmo aula 01-f
Fluxograma (Lógica de Programação)
Lista de Exerícios - Manutenção e Redes de Computadores IFNMG - Campus Januária
Introdução - Arquitetura e Organização de Computadores
Manual de portugol
Lógica de programação em ppt
Lógica de Programação - Algoritmos
Lista de exercicios algoritmos com pseudocodigo
Algoritmo 04 - Estruturas de decisão
Introdução à Lógica de Programação
Aula01 - Logica de Programação
1.Introdução Banco de Dados
Sistemas operacionais
Aula Lógica de Programação - cap1
Aula 4 - Teste de mesa
Arquitetura cliente servidor
Algoritmo 06 - Array e Matrizes
Aula 06 - Sistema Binário
Anúncio

Semelhante a Visualg (20)

PPT
aula__tecnica_de_programação_algoritmo.ppt
PDF
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
PDF
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
PDF
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
PDF
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
PPTX
Aula 5 algoritimos(continuacao)
PPT
CURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃO
PPT
Logica Programação. ...
PDF
Aula 02 - Lógica de programação.pdfddddddddddddddddddddddd
PPTX
ALG 1 - Implementacao de Algoritmos.pptx
PDF
Aula 01 Logica de Programacao - Logica Matematica 1.pdf
PDF
Aula 01 Logica de Programacao - Logica Matematica 1.pdf
PPT
Introducao logica
PDF
Algoritmos e programação
PDF
F ferrari ccechinel-introducao-a-algoritmos
PDF
F ferrari ccechinel-introducao-a-algoritmos
PDF
F ferrari ccechinel-introducao-a-algoritmos
PDF
F ferrari ccechinel-introducao-a-algoritmos
PPT
Módulo 1 - Introdução a algoritmos.ppt
PDF
Portugol_BCC201_2.pdf
aula__tecnica_de_programação_algoritmo.ppt
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
Aula 5 algoritimos(continuacao)
CURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃO
Logica Programação. ...
Aula 02 - Lógica de programação.pdfddddddddddddddddddddddd
ALG 1 - Implementacao de Algoritmos.pptx
Aula 01 Logica de Programacao - Logica Matematica 1.pdf
Aula 01 Logica de Programacao - Logica Matematica 1.pdf
Introducao logica
Algoritmos e programação
F ferrari ccechinel-introducao-a-algoritmos
F ferrari ccechinel-introducao-a-algoritmos
F ferrari ccechinel-introducao-a-algoritmos
F ferrari ccechinel-introducao-a-algoritmos
Módulo 1 - Introdução a algoritmos.ppt
Portugol_BCC201_2.pdf
Anúncio

Último (20)

PPTX
GUERRAFRIA.pptdddddddddddddddddddddddddx
PDF
CARTÕES DIA DOS ESTUDANTES MORANGO DO AMOR.pdf
PPTX
Filosofia Ocidental Antiga 2025 - versão atualizada
PPT
aula de envelecimento.ppt saúde do idoso
PPTX
Slide_Macronutrientes e Antinutrientes da Dieta Humana.pptx
PDF
Cantores.pdf-Deslandes, Tinoco e Zambujo
PDF
O retorno a origem (islã Islamismo)
PPTX
16. MODERNISMO - PRIMEIRA GERAÇÃO - EDIÇÃO 2021 (1).pptx
PPTX
Pedagogia em Ambientes Não Escolares.pptx
PPTX
Aula 13 - Tópico Frasal - Argumentação.pptx
PPTX
Noções de Saúde e Segurança do Trabalho.pptx
PDF
Formação politica brasil_2017.pptx.pdf
PPTX
disciplulado curso preparatorio para novos
PDF
A relação entre funções executivas e desempenho acadêmico em crianças com Tra...
PDF
A provisão de jojuador (ramadã) islamismo
PDF
GESTÃO DA FASE PRÉ-ANALÍTICA- Recomendações da SBPC-ML (3).pdf
PDF
ESPELHOS DA ALMA A PSICOLOGIA POR TRÁS DOS CONTOS DE FADAS.pdf
PPTX
A História da Europa na Baixa Idade Média.pptx
PDF
Ementa 2 semestre PEI Orientação de estudo
PPTX
Programa Nacional de Saúde do Adulto.pptx
GUERRAFRIA.pptdddddddddddddddddddddddddx
CARTÕES DIA DOS ESTUDANTES MORANGO DO AMOR.pdf
Filosofia Ocidental Antiga 2025 - versão atualizada
aula de envelecimento.ppt saúde do idoso
Slide_Macronutrientes e Antinutrientes da Dieta Humana.pptx
Cantores.pdf-Deslandes, Tinoco e Zambujo
O retorno a origem (islã Islamismo)
16. MODERNISMO - PRIMEIRA GERAÇÃO - EDIÇÃO 2021 (1).pptx
Pedagogia em Ambientes Não Escolares.pptx
Aula 13 - Tópico Frasal - Argumentação.pptx
Noções de Saúde e Segurança do Trabalho.pptx
Formação politica brasil_2017.pptx.pdf
disciplulado curso preparatorio para novos
A relação entre funções executivas e desempenho acadêmico em crianças com Tra...
A provisão de jojuador (ramadã) islamismo
GESTÃO DA FASE PRÉ-ANALÍTICA- Recomendações da SBPC-ML (3).pdf
ESPELHOS DA ALMA A PSICOLOGIA POR TRÁS DOS CONTOS DE FADAS.pdf
A História da Europa na Baixa Idade Média.pptx
Ementa 2 semestre PEI Orientação de estudo
Programa Nacional de Saúde do Adulto.pptx

Visualg

  • 1. Visualg Sistemas de Informação Disciplina: Informática Básica Pedro Silva
  • 2. • Dados (variáveis e constantes) • Tipos de dados • Operadores • Comandos • Funções • Comentários Elementos de um Algoritmo 2
  • 3. Exemplo comentário variáveis tipo de uma variável operador função 3
  • 4. • Constantes – O valor de uma constante não se altera após sua definição. – Exemplos: • const_pi  3,1415 • Variáveis – Elemento que têm a função de associar um nome a uma área da memória onde um dado pode ser armazenado Constantes e Variáveis 4
  • 5. • Definem: – A natureza do dado – As operações que podem ser realizadas com o dado – O espaço a ser ocupado na memória • Declarações: – a, b, c, maior: real – x, y: inteiro – achou: logico – texto: caractere Tipos 5
  • 6. Tipos • Tabela de tipos Visualg: Tipo Descrição Inteiro Representa valores inteiros. Exemplos: 10, 5, -5, -10 Real ou Numérico Representa valores reais (com ponto separador da parte decimal). Exemplos: 10, 15.5, -14.67 Literal ou Caractere Representa texto (seqüência ou cadeia de caracteres) entre aspas duplas. Exemplo "Esta é uma cadeia de caracteres", “B”, “1234” Lógico Representa valores lógicos (VERDADEIRO ou FALSO) 6
  • 7. Entrada e Saída • Algoritmos objetivam transformar informações • Algoritmo = Entrada + Processamento + Saída • Entrada: obtenção de dados provenientes do meio externo – Comando: leia – Exemplos: • leia (X) • leia (A, NOTA) 7
  • 8. Entrada e Saída • Saída: entrega dos resultados ao meio externo • Comandos: escreva ou escreval • Exemplos: – escreva (X) – escreva (B, MEDIA, 2+2) – escreval (“cliente cadastrado com sucesso”) 8
  • 9. • Atribuição • Aritméticos • Relacionais • Lógicos Operadores 9
  • 10. • Utilizado para atribuir um valor a uma variável (“=“ ou “:=“ ou “← ”): • Visualg: “:=“ ou “← ” • Notação: x1 ← 23; temp ← x1; nome ← “Carlos da Silva”; nome da variável Valor Operador de Atribuição 10
  • 11. • Dados de entrada: tipo numérico (inteiro ou real) • Resultado: tipo numérico (inteiro ou real) • Exemplos: – x_2 ← 2 + 3; – x_3 ← 3 / 2; – alfa ← 1 div 5; – resto ← 10 % 3; – resto ← 1 % 4; – delta ← 5*5–4*1*4; Operadores Aritméticos 11
  • 12. Operadores Aritméticos Operação Operador Adição + Subtração - Multiplicação * Divisão / Divisão Inteira ou div Exponenciação ^ ou Exp (<base>,<expoente>) Resto da Divisão % 12
  • 13. • Dados de entrada: tipo numérico (int ou float) ou caracteres • Resultado: tipo lógico Operadores Relacionais Operador Operação a < b a é menor que b a <= b a é menor ou igual a b a > b a é maior que b a >= b a é maior ou igual a b a = b a é igual a b a <> b a não é igual a b 13
  • 14. • Exemplos: – cond1 ← 2 = 3 // (falso) – cond2 ← 1.6 <> 5.0 // (verdadeiro) – cond3 ← 1 > 5 // (falso) – cond4 ← (1 + 2) < 5 // (verdadeiro) – cond5 ← 10 >= 3 // (verdadeiro) – cond6 ← 1 <= 4 // (verdadeiro) – cond7 ← “café” < “expresso” // (verdadeiro) – cond8 ← “café” =“café” // (verdadeiro) – cond9 ← “café” >= “mocha” // (falso) Operadores Relacionais 14
  • 15. • Dados de entrada: tipo lógico • Resultado: tipo lógico • E (AND), OU (OR), NAO (NOT) Operadores Lógicos Operação Resultado a E b VERDADEIRO se ambas as partes (a e b) forem verdadeiras a OU b VERDADEIRO se apenas uma das partes (a ou b) é verdadeira. NAO a Nega uma afirmação, invertendo o seu valor lógico: se a for VERDADEIRO retorna FALSO, se a for FALSO retorna VERDADEIRO. 15
  • 16. • Exemplos: – cond1 ← verdadeiro E falso // (falso) – cond2 ← falso OU falso //(falso) – cond3 ← NAO cond1 // (verdadeiro) – cond4 ← (verdadeiro E falso) OU (5 > 3) // (verdadeiro) Operadores Lógicos 16
  • 17. Tabela Verdade a b a E b a OU b NAO a NAO b V V V V F F V F F V F V F V F V V F F F F F V V 17
  • 18. Prioridade dos Operadores Operador Aritmético Prioridade Exponenciação 3 (maior) Multiplicação 2 Divisão 2 Adição 1 Subtração 1 (menor) Operador Lógico Prioridade E 3 OU 2 NAO 1 18
  • 19. • Podem ser pré-definidas da linguagem ou definidas pelo programador • Exemplos: – seno(angulo) – exp(x,y) – ler(var1,var2,...) – escrever(resul1,result2,...) Funções 19
  • 20. Funções Pré-definidas Função Descrição Abs (valor : real) : real Valor absoluto Asc (s : caracter) : inteiro Retorna o código ASCII Compr (c : caracter) : inteiro Retorna o tamanho da cadeia de caracteres Cos (valor : real) : real Cosseno Exp (<base>,<expoente>) Exponenciação Int (valor : real) : inteiro Converte o valor em inteiro Log (valor : real) : real Logaritmo de base 10 Pi : real A constante PI Sen (valor : real) : real Seno Raizq (valor : real) : real Raiz quadrada Quad (valor : real) : real Elevado quadrado Pressionando (CTRL+J) o Visualg mostra uma Lista de funções predefinidas 20
  • 21. • Utilizados para descrever texto esclarecendo trechos do código – // (C++, Visualg) – algoritmo "semnome" – // Função : – // Autor : – // Data : – // Seção de Declarações – inicio – // Seção de Comandos – fimalgoritmo Comentários 21
  • 23. Forma Geral do Algoritmo 23
  • 25. Iniciando em algoritmos... • De forma genérica, a construção de um algoritmo se resume às seguintes etapas: 1. entendimento do problema 2. elaboração da solução algorítmica 3. codificação da solução em pseudo-código ou linguagem de programação • Geralmente a etapa 2 é a mais complexa 25
  • 26. Estruturas Sequenciais • O fluxo de controle segue a mesma seqüência • linear da nossa escrita, ou seja: – De cima para baixo; – Da esquerda para direita 26
  • 27. Exemplo • Enunciado: Fazer um programa que leia dois valores reais, e calcule e exiba a média aritmética • Uma boa prática seria decompor o problema em problemas menores!! “Dividir para conquistar” 27
  • 28. Exemplo • Passo 1 – Qual a fórmula da média? – A média aritmética de dois valores é calculada como (a+b)/2 • Passo 2 – Os dados necessários serão os dois valores, que colocaremos em duas variáveis A e B do tipo real, e uma terceira variável, que chamaremos MEDIA, para armazenar a média aritmética calculada. 28
  • 29. Exemplo • Passo 3 – A entrada dos dados neste programa é simples e direta. – Pedir ao usuário que digite os dois valores • Passo 4 – O processamento é o cálculo da média, usando a fórmula mencionada na etapa 1. – O resultado do cálculo será armazenado na variável MEDIA. 29
  • 31. início olhar o céu fim levar guarda- chuva usar roupa leve chuva? V F Estrutura Condicional • Execução seletiva ou condicional – Depende da avaliação da condição • Permite a escolha de um grupo de ações (bloco), quando certas condições são (ou não são) satisfeitas.
  • 34. se <condição> entao <bloco de ações> fimse Estrutura Condicional Simples • Utilizada quando precisamos testar uma certa condição antes de executar uma ação 34
  • 35. Exemplo Algoritmo “Media” var // declaração de variáveis: N1, N2, NF, media : real inicio // início do programa leia(N1,N2,NF) media ← (N1 + N2 + NF) / 3.0 se (media ≥ 7.0) entao escreva(“Aluno aprovado”) fimse fimalgoritmo 35
  • 36. Exercício • Crie um algoritmo que leia um valor e mostre esse valor caso ele seja maior que zero. Algoritmo “MostraMaiorZero” var // declaração de variáveis: num : inteiro inicio // início do programa: leia(num) se (num > 0) entao escreva(“numero maior que zero:”, num) fimse fimalgoritmo 36
  • 37. se <condição> entao <bloco de ações1> senão <bloco de ações2> fimse Estrutura Condicional Composta • Utilizada em situações em que duas alternativas dependem da mesma condição, uma da condição verdadeira (então) e a outra da condição falsa (senão). 37
  • 38. Algoritmo “Media2” var // declaração de variáveis: N1, N2, NF, media : real inicio // início do programa: leia(N1,N2,NF) media ← (N1 + N2 + NF) / 3.0 se (media ≥ 5.0) entao escreva("Aluno aprovado") senão escreva("Aluno reprovado") fimse fimalgoritmo Exemplo 38
  • 39. Algoritmo “Dif2Numeros” var // declaração de variáveis: N1, N2, Dif : inteiro inicio // início do programa: leia(N1,N2) se N1 > N2 entao Dif ← N1 - N2 senao Dif ← N2 - N1 fimse escreva(“a diferença é”, Dif) fimalgoritmo Exercício • Crie um algoritmo que leia dois números inteiros e calcule a diferença entre eles. • A diferença é o maior número menos o menor 39
  • 40. Algoritmo Maior3Numeros var N1, N2, N3 : real inicio leia(N1,N2,N3) se N1 ≥ N2 e N1 ≥ N3 entao escreva(N1, "é o maior") senao se N2 ≥ N1 e N2 ≥ N3 entao escrever(N2, "é o maior") senao escrever(N3, "é o maior") fimse fimse fimalgoritmo Estrutura Condicional Composta 40
  • 41. Estruturas de Repetição • Permitem que uma sequência de comandos seja executada repetidamente, até que determinada condição de interrupção seja satisfeita • São também conhecidas como laços (loop) ou malhas • Cada repetição do bloco de comandos é chamada iteração 41
  • 42. Estruturas de Repetição • A repetição de comandos em um laço pode seguir um dos seguintes critérios: – Por Condição (Verificação no Início) – Por Condição (Verificação no Fim) – Por Contagem 42
  • 43. enquanto <condição> faca <ação 1> <ação 2> ... <ação n> fimenquanto Verificação no Início • Os comandos do bloco de ações são executados enquanto uma condição é atendida (verdadeira) 43
  • 44. ... soma ← 0 i ← 1 enquanto (i ≤ N) faca soma ← soma + i i ← i + 1 fimenquanto escreval(“a soma é:”, soma) Verificação no Início • Dado o valor de N, calcular a soma dos números inteiros de 1 a N 44
  • 45. repita <ação 1> <ação 2> ... <ação n> ate <condição> Verificação no Fim • Os comandos do bloco de ações são executados até que uma condição seja atendida (verdadeira) 45
  • 46. ... soma ← 0 i ← 1 repita soma ← soma + i i ← i + 1 ate (i > N) escreval(“a soma é:”, soma) Verificação no Fim • Dado o valor de N, calcular a soma dos números inteiros de 1 a N 46
  • 47. Verificação no fim O conjunto de instruções será executado pelo menos uma vez Condição é verificada depois do conjunto de instruções Verificação no início Condição é verificada antes do conjunto de instruções Verificação no Fim × Verificação no Início 47
  • 48. para variavel de início ate fim passo <incremento> faca <ação 1> <ação 2> ... <ação n> fimpara Repetição por Contagem • Permite que comandos sejam repetidos um determinado número de vezes. 48
  • 49. Repetição por contagem • início: indica a variável de controle do laço (contador) e seu valor inicial. • fim: define o valor final da variável de controle • incremento: define como a variável de controle se altera a cada repetição 49
  • 50. ... soma ← 0 para i de 1 ate N passo 1 faca soma ← soma + i fimpara escreval(“a soma é:”, soma) ... Repetição por Contagem • Dado o valor de N, calcular a soma dos números inteiros de 1 a N 50
  • 51. Repetição por Contagem • Algoritmo que lê e escreve os números ímpares de 1 a 1000. para i de 1 ate 1000 passo 2 faca escreval (i, “ é ímpar”) fimpara 51
  • 52. Exercícios 1. Implemente um código para calcular a média de três números informados pelo usuário; 2. Implemente um código que leia o raio (R) de um círculo, calcule a área (A) do mesmo; A = π * R². 3. Faça um código que leia as seguintes informações: – Altura e Largura de uma parede; – Altura e Largura de azulejos; – Calcule e informe a quantidade de azulejos necessários para cobrir a parede.
  • 53. Exercício 4. Implemente um código que, leia valores para a, b e c, e calcule x’ e x’’ usando a fórmula de Bhaskara: • Exemplo: no conjunto de teste (x2 – 2x + 1 = 0), os valores serão a = 1, b = -2 e c = 1.
  • 54. Referências • TONET, Bruno. Software Visualg 2.0. 2012. • LAGEMANN, Gerson Volney. Algoritmos com VisuAlg. • http://www.apoioinformatica.inf.br/produtos/visualg