Escolar Documentos
Profissional Documentos
Cultura Documentos
PROGRAMAÇÃO
ALGORITMOS
PSEUDOCÓDIGOS
Sintaxe do VisualG
2
01/05/2023
Operadores Aritméticos
5/2=2.5
5\2=2
5^2=25 ou Exp(5,2)=25
5%2=1 21%6=3
3
Operadores Relacionais
Os operadores relacionais realizam a comparação entre dois operandos ou duas
expressões e resultam em valores lógicos (VERDADEIRO ou FALSO)
Exemplos:
2+5>4 resulta VERDADEIRO
3<>3 resulta FALSO
4
01/05/2023
Operadores Lógicos
Os operadores lógicos actuam sobre expressões e também resultam em
valores lógicos VERDADEIRO ou FALSO.
Tabela de Verdade
EXEMPLO:
(2+5>4) e (3<>3)
resulta FALSO, pois
VERDADEIRO e FALSO
resulta FALSO. 5
Operador de Atribuição
Para "colocar" um valor em uma variável dentro de um algoritmo,
utilizamos o operador de atribuição. O operador de atribuição e
representado por uma seta (<-) apontando para a esquerda.
Exemplos:
Peso <- 78.7 // Este comando atribui à variável
Peso o valor 78.7. Nome <- "João da Silva" //
Este comando atribui à variável Nome o valor
"João da Silva".
Achei <- FALSO // Este comando atribui à 6
EXEMPLOS:
(2 + 2)/2 resulta 2
2 + 2/2 resulta 3
EXEMPLOS (Lógicos):
(2>3) ou (3<2) e (2<3) //resultado seria Falso
(2>3) e (3<2) ou (2<3) //resultado seria Verdadeiro 8
01/05/2023
NOTA:
O software VisuAlg não possui relacionamento de categorias.
2*5>3 ou 5+1<2 e 2<7-2 // resulta em erro.
(2*5>3) ou (5+1<2) e (2<7-2) // certo seria assim.
SINTAXE
Algoritmo "<nome do algoritmo>"
var
< declaração de variaveis>
inicio
< lista de comandos>
fimalgoritmo
10
01/05/2023
SINTAXE
VARIÁVEIS
VAR
<identificador 1>, <identificador 2>, ...,
<identificador n>: <tipo de dado>
11
SINTAXE
VARIÁVEIS- ALGUMAS REGRAS
SINTAXE
VARIÁVEIS- ALGUMAS REGRAS
Exemplos:
Identificadores validos: NOME, TELEFONE, IDADE_FILHO,
IdadeFilho, NOTA1, Est_Civil
Identificadores inválidos: 3Endereco, Estado Civil, PARA,
algoritmo, numero/complemento
13
SINTAXE
PALAVRAS RESERVADAS
14
01/05/2023
SINTAXE
TIPOS DE DADOS
15
SINTAXE
COMANDO DE ENTRADA E SAÍDA
SAÍDA:
Escreva (<expressão ou identificador ou
constante>, <expressão ou
identificador ou constante>, ...,
<expressão ou identificador ou
constante>)
ENTRADA:
Leia (<identificador>)
16
01/05/2023
SINTAXE
COMANDO DE ENTRADA E SAÍDA
EXEMPLO:
Escreva ("Digite seu nome: ")
Leia (nome)
Escreval ("Digite sua agencia ")
Leia (NumeroAgencia)
Escreva ("Digite sua conta: ")
Leia (NumeroConta)
17
SINTAXE
EXEMPLO
Algoritmo "Calculo de Media Aritmetica"
VAR A,B,Media : REAL
Inicio
Escreva ("Programa que calcula a media
aritmetica de dois valores.")
Escreva ("Digite um valor : ")
Leia (A)
Escreva ("Digite outro valor : ")
Leia (B)
Media <- (A+B)/2
Escreva ("A media dos dois valores e : ",
Media) 18
FimAlgoritmo
01/05/2023
PROGRAMAÇÃO
VISUALG
19
VISUALG
20
01/05/2023
ESTRUTURAS
DE
CONTROLE
21
SINTAXE
COMANDO DE DECISÃO (SE)
se <condição> entao
<ações (uma ou mais) a serem realizadas se a
condição for verdadeira>
Fimse
EXEMPLO:
se Dinheiro >= 100 então
Ir_ao_Cinema <- VERDADEIRO
Ver_TV <- FALSO
Fimse
se Dinheiro < 100 então
Ir_ao_Cinema <- FALSO
Ver_TV <- VERDADEIRO
Fimse
22
01/05/2023
SINTAXE
EXEMPLO
Algoritmo "Calcula Area do Circulo"
VAR
Area, Raio: Real
inicio
Escreva("Entre com raio do círculo")
Leia (Raio)
Se Raio > 0 entao
Area <- PI*(Raio^2)
Escreva ("A area do círculo de raio ", Raio, " e ", Area)
fimse
Se Raio <= 0 entao
Escreva ("Raio não pode ser nulo ou negativo!")
fimse
fimalgoritmo
23
SINTAXE
COMANDO SE
se <condição> entao
<ações (uma ou mais) a serem realizadas se
a condição for verdadeira>
senao
<ações (uma ou mais) a serem realizadas se
a condição for falsa>
Fimse
24
01/05/2023
SINTAXE
EXEMPLO
Algoritmo "Calcula Area do Circulo"
VAR
Area, Raio: Real
inicio
Escreva("Entre com raio do circulo")
Leia (Raio)
Se Raio > 0 entao
Area <- PI*(Raio^2)
Escreva ("A area do circulo de raio ", Raio, " e ", Area)
senao
Escreva ("Raio nao pode ser nulo ou negativo!")
Fimse
fimalgoritmo 25
SINTAXE
ESCOLHA...CASO
escolha < expressão-de-seleção >
caso < exp 1 > , < exp 2 >, ... , < exp n >
< lista-de-comandos-1 >
caso < exp 1a > , < exp 2a >, ... , < exp na >
< lista-de-comandos-2 >
outrocaso
< lista-de-comandos-3 >
Fimescolha
26
01/05/2023
SINTAXE
EXEMPLO
Algoritmo "CLASSIFICAÇÃO DE ATLETAS
var caso 11,12,13,14,15
nome, categoria : caractere categoria <- "Juvenil"
idade : inteiro caso 16,17,18,19,20
Inicio categoria <- "Junior"
Escreva("Nome do Atleta = ") caso 21,22,23,24,25
Leia (nome) categoria <-
Escreva("Idade do Atleta = ") "Profissional"
Leia (idade) outrocaso
Escolha idade categoria <-
caso 5,6,7,8,9,10 "INVALIDO"
categoria <- "Infantil" Fimescolha
Escreva (Nome," e da
Categoria ",categoria)
fimalgoritmo
27
ESTRUTURAS
DE
REPETIÇÃO
28
01/05/2023
SINTAXE
Comando REPITA...ATE
repita
<lista de comandos>
ate <expressão lógica ou relacional>
29
SINTAXE
EXEMPLO
Algoritmo que escreve os números de 1 a 10.
algoritmo "DemonstraRepeticao"
VAR
i: INTEIRO i
SAÍDA
inicio 1
1 2 3 4 5 6 7 8 9 10
2
i<- 1
3
repita 4
escreva (i) 5
i<- i + 1 6
ate i > 10 10
11
fimalgoritmo
30
01/05/2023
SINTAXE
EXEMPLO
Algoritmo que escreve os números pares de 10 a 2.
Algoritmo "DecrementoNumerosPares"
var
i: inteiro
inicio
i <- 10
Repita
escreva (i)
i <- i - 2
ate i < 2
Fimalgoritmo
31
SINTAXE
Comando ENQUANTO..FACA
enquanto <expressão lógica ou relacional> faca
<lista de comandos>
Fimenquanto
32
01/05/2023
SINTAXE
EXEMPLO
Algoritmo que lê diversos números positivos e escreve para cada um a sua raiz
quadrada e pâra quando o número não for positivo.
algoritmo “ComEnquanto"
var
i,r: Real
Inicio
Escreval ("Introduza um
numero:")
leia (i)
Enquanto i >0 faca
r<- i^0.5 // ou RaizQ(i)
escreva (r)
Escreval ("Introduza
outro numero:")
leia (i)
fimenquanto
fimalgoritmo 33
SINTAXE
Comando PARA..FACA
para <variavel de controle> de <valor inicial> ate <valor final>
[passo<incremento>] faca
<lista de comandos>
fimpara
34
01/05/2023
SINTAXE
EXEMPLO
Algoritmo que lê 5 números e escreve todos os que forem positivos.
Algoritmo "Positivos"
var
i, numero: inteiro
inicio
para i de 1 ate 5 passo 1 faca Note: Quando o passo é
escreval ("Digite um numero") +1 não e necessário a sua
leia (numero)
se numero>0 entao indicação no ciclo porque
escreval(“Positivo=”,numero) e definido como padrão.
fimse
fimpara
fimalgoritmo
35
VARIÁVEIS INDEXADAS
(VECTORES E MATRIZES)
36
01/05/2023
SINTAXE
VECTORES
SINTAXE
VECTORES
ALGORITMO "vetores"
Exemplo2: Algoritmo que recebe 6
VAR
NUMERO: VETOR [1..6] DE INTEIRO números inteiros num vetor e
i, conta_neg: INTEIRO escreve os números recebidos e a
inicio quantidade de negativos.
conta_neg <- 0
para i de 1 ate 6 faca
Escreval("Introduza o numero para i de 1 ate 6 faca
", i) escreva (NUMERO[i])
leia (NUMERO[i]) se NUMERO[i] < 0 entao
Fimpara conta_neg <- conta_neg +
1
fimse
fimpara
escreva ("Total de números
negativos: ", conta_neg)
FIMALGORITMO 38
01/05/2023
SINTAXE
MATRIZES
SINTAXE
MATRIZES
Exemplos
2) Algoritmo que pede e insere valores reais numa matriz de 3x3 e calcula as
somas:
a) da linha 3 de Valores;
b) da coluna 2 de Valores;
e) de todos os elementos da matriz.
40
01/05/2023
SINTAXE MATRIZES
ALGORITMO "Matriz" se j=2 entao
VAR somaColuna2 <- VALORES[i,j]+
VALORES : VETOR [1..3,1..3] DE REAL somaColuna2
somaLinha3, somaColuna2, somaTudo: REAL Fimse
i, j: INTEIRO //os índice sempre inteiro Fimpara
Inicio Fimpara
somaLinha3 <- 0 Para i de 1 ate 3 faca
somaColuna2 <- 0
para j de 1 ate 3 faca
somaTudo <- 0
Para i de 1 ate 3 faca
escreva (VALORES[i,j], “ ”)
Para j de 1 ate 3 faca Fimpara
Escreva("Digite um valor para a Escreval()
matriz") fimpara
Leia (VALORES[i,j]) escreval ("Soma de todos os elementos
somaTudo <- VALORES[i,j] + somaTudo e ", somaTudo)
se i=3 entao escreval ("Soma dos elementos da
somaLinha3 <- VALORES[i,j]+ linha 3 e ", somaLinha3)
somaLinha3
escreval ("Soma dos elementos da
fimse
coluna 2 e ", somaColuna2)
FIMALGORITMO
41
SUBPROGRAMA
42
01/05/2023
SINTAXE
FUNÇÕES E PROCEDIMENTOS
43
44
01/05/2023
EXEMPLO:
Algoritmo "RETORNA UM VALOR INTEIRO"
var
valorReal : REAL
valorInteiro : INTEIRO
inicio
valorReal <- 5.8791
valorInteiro <- INT(valorReal)
Escreva("Valor inteiro ", valorInteiro)
Fimalgoritmo
45
EXEMPLO:
Algoritmo "ExemploSoma" inicio
var Escreva("Valor1:")
valor1, valor2, soma:REAL Leia(valor1)
Funcao Fsoma(A,B:Real):Real Escreva("Valor2:")
var Leia(valor2)
total:Real soma<-Fsoma(valor1,valor2)
inicio Escreva(valor1,"+",valor2,"=",soma)
total<-A+B Fimalgoritmo
retorne total
Fimfuncao
47
SINTAXE SUB-ROUTINA
48
01/05/2023
SINTAXE SUB-ROUTINA
EXEMPLO:
inicio
Algoritmo "ExemploProcedimento" Escreva("X:")
var Leia(x)
x, y:REAL Escreva("Y:")
Procedimento troca(var A,B:Real) Leia(y)
var troca(x,y)
aux:Real Escreva("X=",x,"; Y=",y)
inicio Fimalgoritmo
aux<-A
A<-B
B<-aux
// Escreva("X=",A,"; Y=",B)
FimProcedimento
49
50