Buscar

LogProg_Slides

Prévia do material em texto

Algoritmos Estruturados
Técnico em Automação Industrial
Introdução
Conceito de lógica de programação, algoritmos e fluxogramas
Prof. Leandro Freitas
1º semestre de 2014
Introdução
Lógica de programação
Algoritmos
Fluxogramas
2
Fim...
INÍCIO AULA
1 e 2
3
Lógica de programação
Lógica de programação
Técnica de encadear pensamentos para atingir determinado objetivo.
Sequência Lógica
Passos executados até atingir um objetivo ou solução de um problema.
4
Lógica de programação
Exemplo 1
Objetivo:
	Fazer um ovo frito
Uma possível sequência lógica para atingir o objetivo é:
Acender o fogo
Quebrar o ovo na frigideira
Retire do fogo
5
Lógica de programação
Exemplo 1
Fazer um ovo frito
Acender o fogo
Quebrar o ovo na frigideira
Retire do fogo
6
Lógica de programação
Exemplo 1
Fazer um ovo frito
Acender o fogo
Quebrar o ovo na frigideira
Retire do fogo
7
ERRO!
Ação não reconhecida pelo programa!
Lógica de programação
Exemplo 1
Fazer um ovo frito
Acender o fogo do fogão
Quebrar o ovo na frigideira
Retire do fogo
8
Tentativa 2
Lógica de programação
Exemplo 1
Fazer um ovo frito
Acender o fogo do fogão
Quebrar o ovo na frigideira
Retire do fogo
9
Tentativa 2
Lógica de programação
Exemplo 1
Fazer um ovo frito
Acender o fogo do fogão
Quebrar o ovo na frigideira
Retire do fogo
10
ERRO!
Ação não reconhecida pelo programa!
Tentativa 2
Lógica de programação
Exemplo 1
Fazer um ovo frito
Acender o fogo do fogão
Colocar a frigideira no fogo do fogão
Quebrar o ovo na frigideira
Retire a frigideira do fogo
11
Tentativa 3
Lógica de programação
Exemplo 1
Fazer um ovo frito
Acender o fogo do fogão
Colocar a frigideira no fogo do fogão
Quebrar o ovo na frigideira
Retire a frigideira do fogo
12
Tentativa 3
Lógica de programação
Exemplo 1
Fazer um ovo frito
Acender o fogo do fogão
Colocar a frigideira no fogo do fogão
Quebrar o ovo na frigideira
Retire a frigideira do fogo
13
Tentativa 3
Lógica de programação
Exemplo 1
Fazer um ovo frito
Acender o fogo do fogão
Colocar a frigideira no fogo do fogão
Quebrar o ovo na frigideira
Retire a frigideira do fogo
14
Tentativa 3
Lógica de programação
Exemplo 1
Fazer um ovo frito
Colocar óleo na frigideira
Acender o fogo do fogão
Colocar a frigideira no fogo do fogão
Quebrar o ovo na frigideira
Esperar 5 minutos
Retire a frigideira do fogo
15
Tentativa 4
Lógica de programação
Exemplo 1
Fazer um ovo frito
Colocar óleo na frigideira
Acender o fogo do fogão
Colocar a frigideira no fogo do fogão
Quebrar o ovo na frigideira
Esperar 5 minutos
Retire a frigideira do fogo
16
Tentativa 4
Lógica de programação
Exemplo 1
Fazer um ovo frito
Colocar óleo na frigideira
Acender o fogo do fogão
Colocar a frigideira no fogo do fogão
Quebrar o ovo na frigideira
Esperar 5 minutos
Retire a frigideira do fogo
17
Tentativa 4
Lógica de programação
Exemplo 1
Fazer um ovo frito
Colocar óleo na frigideira
Acender o fogo do fogão
Colocar a frigideira no fogo do fogão
Quebrar o ovo na frigideira
Esperar 5 minutos
Retire a frigideira do fogo
18
Tentativa 4
Lógica de programação
Exemplo 1
Fazer um ovo frito
Colocar óleo na frigideira
Acender o fogo do fogão
Colocar a frigideira no fogo do fogão
Quebrar o ovo na frigideira
Esperar 5 minutos
Retire a frigideira do fogo
19
Tentativa 4
Lógica de programação
Exemplo 1
Fazer um ovo frito
Colocar óleo na frigideira
Acender o fogo do fogão
Colocar a frigideira no fogo do fogão
Quebrar o ovo na frigideira
Esperar 5 minutos
Retire a frigideira do fogo
20
Tentativa 4
Lógica de programação
Possíveis problemas...
Existe ovo disponível?
Os dispositivos (frigideira, fogão, etc.) estão funcionando corretamente?
O procedimento funciona para qualquer ovo?
21
?
Lógica de programação
Conclusões
Ao resolver um problema utilizando uma sequência lógica é importante tentar antever as condições e exceções existentes no universo do problema, de modo que a solução (sequência lógica) seja capaz de trazer a solução em diversas situações.
Por meio das sequências lógicas, pode-se desenvolver algoritmos para lidar com os mais variados problemas.
22
Lógica de programação
23
Exercício em sala
Torre de Hanói.
Mova somente um disco por vez
Cada disco pode ser movido para qualquer eixo, mas apenas para a posição superior
Não é permitido que um disco maior fique em cima de um disco menor
Link para o problema
Fim...
1ª Lista de Exercícios
24
Fim...
FIM AULA
1 e 2
25
Fim...
INÍCIO AULA
3 e 4
26
Algoritmos
27
Algoritmos
Sequência finita de passos (instruções) para resolver um determinado problema.
Sempre que desenvolvemos um algoritmo estamos estabelecendo um padrão de comportamento que deverá ser seguido, uma norma de execução de ações para alcançar o resultado.
Algoritmos
Exemplo 2
Algoritmo para soma de dois números quaisquer
Escreva o primeiro número no retângulo A
Escreva o segundo número no retângulo B
Some o número do retângulo A com o número do retângulo B e coloque o resultado no retângulo C
28
Retângulo A
Retângulo B
Retângulo C
Algoritmos
29
Teste de Mesa
Após desenvolver um algoritmo ele deverá sempre ser testado. Este teste é chamado de TESTE DE MESA, que significa, seguir as instruções do algoritmo de maneira precisa para verificar se o procedimento utilizado está correto ou não.
Algoritmos
Exemplo 3
Algoritmo para verificar qual interruptor pertence a qual lâmpada
30
A
B
C
1
2
3
Algoritmos
31
A
B
C
1
2
3
Exemplo 3
Algoritmo para verificar qual interruptor pertence a qual lâmpada
Acender o interruptor 1 e o interruptor 2
Aguarde 5 minutos
Apague o interruptor 2
Entre na casa e verifique
Acesa: int. 1
Apagada e quente: int. 2
Apagada e fria: int. 3
Algoritmos
32
Exemplo 3
Algoritmo para verificar qual interruptor pertence a qual lâmpada
Acender o interruptor 1 e o interruptor 2
Aguarde 5 minutos
Apague o interruptor 2
Entre na casa e verifique
Acesa: int. 1
Apagada e quente: int. 2
Apagada e fria: int. 3
1
2
3
LIGADO
LIGADO
DESLIGADO
Algoritmos
33
Exemplo 3
Algoritmo para verificar qual interruptor pertence a qual lâmpada
Acender o interruptor 1 e o interruptor 2
Aguarde 5 minutos
Apague o interruptor 2
Entre na casa e verifique
Acesa: int. 1
Apagada e quente: int. 2
Apagada e fria: int. 3
1
2
3
LIGADO
LIGADO
DESLIGADO
Algoritmos
34
Exemplo 3
Algoritmo para verificar qual interruptor pertence a qual lâmpada
Acender o interruptor 1 e o interruptor 2
Aguarde 5 minutos
Apague o interruptor 2
Entre na casa e verifique
Acesa: int. 1
Apagada e quente: int. 2
Apagada e fria: int. 3
1
2
3
LIGADO
DESLIGADO
DESLIGADO
Algoritmos
35
1
2
3
LIGADO
DESLIGADO
DESLIGADO
A
B
C
Exemplo 3
Algoritmo para verificar qual interruptor pertence a qual lâmpada
Acender o interruptor 1 e o interruptor 2
Aguarde 5 minutos
Apague o interruptor 2
Entre na casa e verifique
Acesa: int. 1
Apagada e quente: int. 2
Apagada e fria: int. 3
Algoritmos
36
Para escrever um algoritmo:
Usar somente um verbo por frase
Imaginar que você está desenvolvendo um algoritmo para pessoas que não trabalham com informática
Usar frases curtas e simples
Ser objetivo
Procurar usar palavras que não tenham sentido dúbio
Algoritmos
Exercício em sala
Fazer um algoritmo para trocar uma lâmpada.
 
 
 
 
 
 
 
 
 
 
Quais as principais condições?
Quais as principais exceções?
37
Algoritmos
38
Partes básicas de um algoritmo
Entrada
São as informações necessárias para execução do algoritmo
Processamento
É a execução dos procedimentos utilizados para resolver o problema e gerar a saída
Saída
É o produto final do algoritmo, que pode ser a solução de um problema, resultado do processamento
Algoritmos
39
Partes básicas de um algoritmo
Algoritmos
40
Exemplo 4
Calcule a nota final de um aluno em 4 provas (P1, P2, P3 e P4) e forneçao resultado “Aprovado”, para nota igual ou maior que 60, ou “Reprovado”, para nota menor que 60.
Quais são os dados de entrada?
Qual o principal componente do processamento?
Quais são os dados de saída?
Entrada
Processamento
Saída
As notas das provas P1, P2, P3 e P4.
Soma das notas e comparação com o valor da média (sessenta).
O resultado “Aprovado” ou “Reprovado”.
Algoritmos
41
Exemplo 4
Calcule a nota final de um aluno em 4 provas (P1, P2, P3 e P4) e forneça o resultado “Aprovado”, para nota igual ou maior que 60, ou “Reprovado”, para nota menor que 60.
Algoritmo
Receba a nota da prova P1
Receba a nota da prova P2
Receba a nota da prova P3
Receba a nota da prova P4
Some todas as notas: NOTA = P1 + P2 + P3 + P4
Se NOTA ≥ 60
	Mostre “APROVADO”
Senão
		Mostre “REPROVADO”
Entrada
Processamento
Saída
Entrada de dados
Processamento
Saída
Algoritmos
42
Exemplo 5
Algoritmo para calcular a área de uma circunferência a partir de seu raio.
Entrada
Processamento
Saída
Algoritmos
43
Exemplo 5
Algoritmo para calcular a área de uma circunferência a partir de seu raio.
Quais são os dados de entrada?
Qual o principal componente do processamento?
Quais são os dados de saída?
Entrada
Processamento
Saída
O valor do raio e o valor de π.
Execução da conta ÁREA = π.r2
O valor da área da circunferência.
Algoritmos
44
Exemplo 5
Algoritmo para calcular a área de uma circunferência a partir de seu raio.
Algoritmo
π  3,14
Receba o valor de R (raio)
Calcule: A  π.R2 
Mostre A
Entrada
Processamento
Saída
Entrada de dados
Processamento
Saída
Algoritmos
Exercício em sala
Faça um algoritmo para calcular a média entre três números.
 
 
 
 
 
 
Identifique as partes do algoritmo: Entrada, Processamento e Saída
45
Entrada
Processamento
Saída
Algoritmos
Exercício em sala
Faça um algoritmo para calcular a média entre três números.
Receba número N1
Receba número N2
Receba número N3
Calcule SOMA = N1 + N2 + N3
Calcule MEDIA = SOMA / 3
 Mostre o valor da MEDIA
Identifique as partes do algoritmo: Entrada, Processamento e Saída
46
Entrada
Processamento
Saída
Fim...
2ª Lista de Exercícios
47
Fim...
FIM AULA
3 e 4
48
Fim...
INÍCIO AULA
5 e 6
49
Fluxogramas
Representação de Algoritmos
Descrição narrativa
Descrição no formato de texto narrativo, um procedimento contado.
Pseudocódigo
Representação textual, estruturada em tópicos.
Fluxograma (diagrama de blocos)
Representação gráfica de um algoritmo, com elementos padronizados que representam ações e situações.
50
Fluxogramas
Fluxograma
51
Algoritmos
52
Exemplo 6
Como fritar um ovo.
Algoritmos
53
Exemplo 7
Algoritmo para somar dois números.
Fim...
3ª Lista de Exercícios
54
Fluxogramas
Fluxograma
Elemento condicional
Utilizado para tomar decisões.
O teste deve ter resposta binária (e.g. sim ou não)
55
Fluxogramas
Fluxograma
Desvio Condicional
Tomar decisões
Tratar exceções (ex.: falta de ovo)
56
Fluxogramas
57
Exemplo 8
Calcule a nota final de um aluno em 4 provas (P1, P2, P3 e P4) e forneça o resultado “Aprovado”, para nota igual ou maior que 60, ou “Reprovado”, para nota menor que 60.
Fluxogramas
58
Exemplo 9
Tendo como dados de entrada o sexo e a altura de uma pessoa, construa um algoritmo que calcule seu peso ideal.
	Para homens: (72,7 x A) – 58
	Para mulheres: (62,1 x A) – 44,7
A: altura em metros
Fim...
4ª Lista de Exercícios
59
Fim...
FIM AULA
5 e 6
60
INÍCIO AULA
7 e 8
61
Fluxogramas
Fluxograma
Laço Condicional
Loops de espera
Contadores
Repetição de tarefas
62
Fluxogramas
63
Exemplo 10
Loop de espera...
Qual bala é selecionada?
Quais os possíveis problemas?
Fluxogramas
64
Exemplo 11
Contador...
Esse contador conta quantos números?
O que é iteração...
Fluxogramas
65
Exercício em sala
Faça um fluxograma para um contador de 1 a 20. Durante a contagem, deve ser exibido todos os números pares contados.
Fluxogramas
66
Exemplo 12
Repetição de tarefas...
Fluxogramas
67
Exercício em sala
Faça um fluxograma que a média aritmética de N números quaisquer.
Exemplo:
Média dos números: 28, 81, 47, 15 e 33		(N = 5)
Média dos números 8, 1, 5, 11, 0, 7 e 14		(N = 7)
Faça um teste de mesa para N = 3, com os valores 8, 10 e 12. 
Fluxogramas
68
Exercício em sala
Faça um fluxograma que a média aritmética de N números quaisquer.
Fluxogramas
69
Exercício em sala
Faça um fluxograma que calcule o fatorial de um número N qualquer (calcular N!).
	Exemplo:
N = 2		N!
N = 3		N!
N = 4		N!
N = 5		N!
= 2!
= 3!
= 4!
= 5!
= 2 x 1
= 3 x 2 x 1
= 4 x 3 x 2 x 1
= 5 x 4 x 3 x 2 x 1
= 2
= 6
= 24
= 120
Fluxogramas
70
Exercício em sala
Faça um fluxograma que calcule o fatorial de um número N qualquer (calcular N!).
Fim...
5ª Lista de Exercícios
71
Fim...
FIM AULA
7 e 8
72
INÍCIO AULA
9 e 10
73
Tipos de Dados, Variáveis e Constantes
Informação vs Dados
O computador trabalha com dados, porém, o programador que atribui informação aos dados armazenados no PC.
Exemplo:
74
dentro do computador...
Número 30!
Tipos de Dados, Variáveis e Constantes
Tipos de Dados
É a forma com que os dados são armazenados.
Exemplo:
75
Isso é um texto!
Tipos de Dados, Variáveis e Constantes
Tipos de Dados
É a forma com que os dados são armazenados.
Exemplo:
76
Isso é uma imagem!
Tipos de Dados, Variáveis e Constantes
Tipos Primitivos de Dados
Inteiro (INT)
Toda e qualquer informação numérica que pertença ao conjunto dos números inteiros relativos (negativa, nula ou positiva).
[Forbellone, 2005]
Exemplos:
 Ele tem 15 irmãos
 Tirei 0 na prova
 A profundidade é de -101 metros
 O valor de pi é 3,141 593
 O valor do número de Euler é de 2,718 281
 Tenho -0,50 reais na conta
77
Tipos de Dados, Variáveis e Constantes
Tipos Primitivos de Dados
REAL
Toda e qualquer informação numérica que pertença ao conjunto dos números reais (negativa, nula ou positiva).
[Forbellone, 2005]
Exemplos:
 Ela tem 1,73 metro de altura
 Meu saldo bancário é de -215,20
 Ele pesa 82,5 kg
 O valor de pi é 3,141593
 O valor do número de Euler é de 2,718281
 A placa diz “PARE”
 Tecla “@” do teclado
78
Nota: no programa devemos sempre utilizar o ponto como separador decimal.
1.73
-215.20
82.5
3.141593
2.718281
Tipos de Dados, Variáveis e Constantes
Tipos Primitivos de Dados
Caractere (CHAR) / Cadeia de Caracteres (STRING)
Toda e qualquer informação composta de um conjunto de caracteres alfanuméricos: numéricos (0...9), alfabéticos (A...Z, a...z) e especiais (por exemplo, #, ?, !, @).
[Forbellone, 2005]
Exemplos:
 A placa diz “PARE”
 Consta na prova “Use somente caneta!”
 O nome do vencedor é “Felisberto Laranjeira”
 O e-mail do chefe é “poucastrancas@gmail.com”
 A expressão é “5+10=15”
 Disque “*#06#” para ver o código único do seu celular
 informações armazenadas com esse tipo de dado não é possível realizar operações matemáticas (soma, subtração, multiplicação, etc.)
79
Tipos de Dados, Variáveis e Constantes
Tipos Primitivos de Dados
Lógico ou Booleano (BOOL)
Toda e qualquer informação que pode assumir apenas duas situações (biestável).
[Forbellone, 2005]
Exemplos:
 O valor é “VERDADEIRO” ou “FALSO”
 A lâmpada pode estar “ACESA” ou “APAGADA”
 A resposta é “SIM” ou “NÃO”
 Valor de um bit na memória é “0” ou “1”
 Na memória o nível lógico é 0V ou 5V
 Números de teclas do telefone (12 teclas)
 Campeonatos Brasileiros conquistados pelo Cruzeiro
80
Tipos de Dados, Variáveis e Constantes
81
Exercício em Sala
Os dados grifados abaixo podem ser armazenados em qual tipo de dado (inteiro, real, caractere ou lógico )?
Fiquei devendo R$100,59 à instituição.
Resultado da soma das notas foi de 59.
O farol está ligado.
Mensagem na rede social: “Preserve o Meio Ambiente”.
O nadador dos 100 metros rasos fez 57,3 segundos.
A duração da viagem foi de 3,5 horas.
A senha da rede sem fio é “$3N#@-$3CR37@”.O sensor indica porta aberta.
Tipos de Dados, Variáveis e Constantes
82
Variável
Um dado é classificado como variável quando tem a possibilidade de ser alterado durante a execução do algoritmo.
Uma variável pode ser entendida como um espaço na memória.
 < tipo > < valor da variável >
Memória do Computador
 inteiro 422
 caractere ‘Digite um número’
 real 142.392
 lógico VERDADEIRO
Tipos de Dados, Variáveis e Constantes
Exemplo 13
Programa para somar dois números quaisquer:
83
Retângulo A
Retângulo B
Retângulo C
Memória do Computador
 inteiro 0
 inteiro 0
 inteiro 0
 
Entre com o primeiro número da soma:
>_
114
Entre com o primeiro número da soma:
> 53_
53
 inteiro 53
Entre com o segundo número da soma:
> _
 inteiro 114
A
B
C
167
Entre com o segundo número da soma:
> 114_
 
Processando...
Resultado da soma: 
 167
 inteiro 167
identificadores
Tipos de Dados, Variáveis e Constantes
84
Constante
Um dado é uma constante quando não pode ser alterado durante a execução do programa.
Tipos de Dados, Variáveis e Constantes
Exemplo 14
Programa para calcular área de um círculo.
85
Memória do Computador
 real 3.14
 real 0
 real 0
 
Entre com o raio da circunferência:
>_
Entre com o raio da circunferência:
> 8,5_
 real 8.5
 real 226.865
Constante pi
Variável R
Variável A
 
Processando...
Área da circuferência: 
 226,865
Área = π.R2
8,5cm
identificadores
Tipos de Dados, Variáveis e Constantes
Identificadores
São nomes dados às variáveis e às constantes para identificar cada “espaço de memória”.
Regras para criação de identificadores:
Começar por um caractere alfabético (A..Z, a..z)
Podem ser seguidos por mais caracteres alfabéticos (A..Z,a..z) ou numéricos (0..9)
Não devem ser usados caracteres especiais (#, $, %, +, ...), exceto o sublinhado (underline / underscore): “_”
Não devem ser usadas letras com acento ou til (ã, é, ü, ...)
86
Tipos de Dados, Variáveis e Constantes
Exercício em sala
Qual dos identificadores abaixo são válidos?
87
Média
Area
circulo003
lugaresVazios
5letras
FGTS
Nota/2
aux_001
numero-2
percent%
A
f(x)
variavel_auxiliar
C&A
A:90
5X
X5
numPag
Fim...
6ª Lista de Exercícios
88
Fim...
FIM AULA
9 e 10
89
INÍCIO AULA
11 e 12
90
Comandos e Operadores Básicos
Comandos
Para manipular os dados, o computador pode realizar diversas operações, que são programadas utilizando-se comandos e operadores.
91
Comandos e Operadores Básicos
Comandos
Comando de atribuição (“<-”)
Permite atribuir um valor a uma variável, em que o tipo de dado deve ser compatível com o da variável.
[Forbellone, 2005]
Exemplos:
X <- 5
nome <- “Zé Trabalha”
Presenca <- FALSO
valor1 <- 1.5
92
X
5
Lembrete: variáveis e constantes do tipo “REAL” use sempre o ponto como separador decimal!
Não use vírgula!!!
Comandos e Operadores Básicos
Zé Trabalha_
Comandos
Comando de saída de dados (“escreva(<expressão>)”)
Permite mostrar ao usuário o resultado do processamento do algoritmo/programa através da saída padrão (e.g. monitor).
Exemplo:
nome <- “Zé Trabalha”
escreva(nome)
93
Comandos e Operadores Básicos
Zé Trabalha_
Comandos
Comando de saída de dados (“escreva(<expressão>)”)
Exemplo:
nome <- “Zé”
sobrenome <- “Trabalha”
escreva(nome,“ ”,sobrenome)
94
Comandos e Operadores Básicos
95
Zé
Não Trabalha
_
Comandos
Comando de saída de dados (“escreva(<expressão>)”)
Exemplo:
nome <- “Zé”
sobrenome <- “Trabalha”
escreval(nome)
escreva(“Não ”)
escreval(sobrenome)
*As cores e os sublinhados exibidos na tela do computador são apenas ilustrativos
Comandos e Operadores Básicos
_
Comandos
Comando de entrada de dados (“leia(<expressão>)”)
Recebe valores de uma entrada padrão (e.g. teclado).
Exemplo:
leia(ent)
escreva(“foi digitado: ”,ent)
96
Acorda!_
Comandos e Operadores Básicos
Acorda!
foi digitado: Acorda!_
Comandos
Comando de entrada de dados (“leia(<expressão>)”)
Recebe valores de uma entrada padrão (e.g. teclado).
Exemplo:
leia(ent)
escreva(“foi digitado: ”,ent)
97
Comandos e Operadores Básicos
Operadores Aritméticos
Adição ( + )
	Exemplos:
		>> pi <- 1.04 + 0.1 + 2
		>> pele <- 3 + 7
		>> rota <- pele + (7 + 49)
		>> rota <- rota + 1
		>> nome <- “Zé ” + “Trabalha”	//concatena
Subtração ( - )
	Exemplos:
		>> num <- -45
		>> A <- (5 - 2.5) + 0.5
		>> B <- -A – 3
		>> B <- B – 1
98
Comandos e Operadores Básicos
Operadores Aritméticos
Multiplicação ( * )
	Exemplos:
		>> x1 <- 4 * 2	 //x1 é 8 (inteiro)
		>> x2 <- 1.1 * x1	 //x2 é 8.8 (real)
		>> x2 <- x2 * 0.5	 //x2 é 4.4 (real)
Divisão real ( / ) e inteira ( \ )
	Exemplos:
		>> n1 <- 5/2	 //n1 é 2.5 (real)
		>> A <- 5\2		 //A é 2 (inteiro)
		>> B <- 6 / 2 + 1	 //B é 4.0 (real)
		>> C <- 6 /(2 + 1) //C é 2.0 (real)
		>> D <- C / A	 //D é 1.0 (real)
99
Comandos e Operadores Básicos
Operadores Aritméticos
Resto, ‘módulo’ ( % , mod )
	Exemplos:
		>> r1 <- 8 mod 5		//r1 é 3
		>> r2 <- 10 % 6		//r2 é 4
		>> r2 <- r2 mod 2		//r2 é 0
		>> r3 <- 17 % 11 % 8	//r3 é 6
		>> r4 <- 17 % (11 % 8)	//r4 é 2
Potenciação ( ^ )
	Exemplos:
		>> p1 <- 2^3	 //p1 é 8
		>> p2 <- 9^0.5	 //p2 é 3
		>> p2 <- p2^3	 //p2 é 27
		>> p3 <- 2^3^2	 //p3 é 64
		>> p4 <- 2^(3^2)	 //p4 é 512
100
Comandos e Operadores Básicos
Operadores Lógicos
Não ( nao )
	Inverte o valor de uma variável lógica.
	Exemplos:
	 >> L <- nao VERDADEIRO	//L é FALSO
	 >> L <- nao L			//L é VERDADEIRO
	 >> L2 <- nao(VERDADEIRO) 	//L2 é FALSO
E ( e )
	Faz a lógica “e” de duas variáveis lógicas.
	Exemplos:
	 >> E1 <- VERDADEIRO e FALSO	 //E1 é FALSO
	 >> E2 <- VERDADEIRO e VERDADEIRO //E2 é VERD. 	 >> E3 <- nao E2 e VERDADEIRO //E3 é FALSO
	 >> E4 <- E1 e FALSO		 //E4 é FALSO
101
Comandos e Operadores Básicos
Operadores Lógicos
Ou ( ou )
	Inverte o valor de uma variável lógica.
	Exemplos:
	 >> L1 <- FALSO ou VERDADEIRO //L1 é VERDAD.
	 >> L2 <- FALSO ou FALSO	 //L2 é FALSO
	 >> L3 <- L1 ou VERDADEIRO 	 //L3 é VERDAD.
Ou Exclusivo ( xou )
	Exemplos:
	 >> E1 <- FALSO xou VERDADEIRO //E1 é VERD.
	 >> E2 <- E1 xou VERDADEIRO	 //E2 é FALSO 	 >> E3 <- nao E2 xou FALSO //E3 é VERD.
	 >> E4 <- E2 xou FALSO		 //E4 é FALSO
102
Comandos e Operadores Básicos
Operadores Relacionais
Utilizados para testar a relação entre dois valores lógicos de mesmo tipo e retorna um valor lógico (VERDADEIRO ou FALSO).
Igualdade ( = )
	Exemplos:
	 >> T1 <- 3 = 3		//T1 é VERDADEIRO
	 >> T2 <- 1 = 3		//T2 é FALSO
	 >> T3 <- T2 = FALSO 	//T3 é VERDADEIRO
Desigualdade ( <> )
	Exemplos:
	 >> T4 <- 3.0 <> 3.001	//T4 é VERDADEIRO
	 >> T5 <- -1 <> 2	//T5 é VERDADEIRO
 	 >> T6 <- T4 <> T5	//T6 é FALSO
	 >> T7 <- T6 <> VERDADEIRO	//T7 é FALSO
103
Comandos e Operadores Básicos
Operadores Relacionais
Utilizados para testar a relação entre dois valores lógicos de mesmo tipo e retorna um valor lógico (VERDADEIRO ou FALSO).
Menor ( < )
	Exemplos:
	 >> T1 <- 1 < 2		//T1 é VERDADEIRO
	 >> T2 <- 1 < 1		//T2 é FALSO
	 >> T3 <- -42 < -5 	//T3 é VERDADEIRO
Maior ( > )
	Exemplos:
	 >> T4 <- 3.0 > 2.9	//T4 é VERDADEIRO
	 >> T5 <- -5 > -5	//T5 é FALSO
 	 >> T6 <- -59 > -100	//T6 é FALSO
104
Comandos e Operadores Básicos
Operadores Relacionais
Utilizados para testar a relação entre dois valores lógicos de mesmo tipo e retorna um valor lógico (VERDADEIRO ou FALSO).
Menor igual ( <= )
	Exemplos:
	 >> T1 <- 1 <= 2		//T1 é VERDADEIRO
	 >> T2 <- 1 <= 1		//T2 é VERDADEIRO
	 >> T3 <- -42 <= -5 	//T3 é VERDADEIRO
Maior igual ( >= )
	Exemplos:
	 >> T4 <- 3.0 >= 2.9	//T4 é VERDADEIRO
	 >> T5 <- -5 >= -5	//T5 é VERDADEIRO
 	 >> T6 <- -59 >= -100	//T6 é FALSO
105
Fim...
7ª Lista de Exercícios
106
Fim...
FIM AULA
11 e 12
107
INÍCIO AULA
13 e 14
108
Representação por pseudolinguagem
109
Pseudolinguagem (ou pseudocódigo)
Representação de um algoritmo, que utilizacomandos básicos, mais palpáveis ao entendimento.
Representa apenas o funcionamento de um algoritmo
Pode ser implementado em qualquer linguagem
Representação por pseudolinguagem
110
Português Estruturado
Tipo de pseudolinguagem (pseudocódigo) que utiliza comandos em português.
Sintaxe
Forma padronizada com que o código é escrito.
(ex.: uso de vígulas, forma de comentários, etc.)
Semântica
	Significado do conteúdo do algoritmo, propósito do código.
	(ex.: algoritmo que calcula a média entre vários números)
Representação por pseudolinguagem
111
Visualg
Software utilizado para implementação dos algoritmos em Português Estruturado.
Representação por pseudolinguagem
112
Visualg
Nome do algoritmo
Estrutura de comentários
Declaração de variáveis
Marcadores de Início e Fim de Algoritmo
Representação por pseudolinguagem
Exercício em sala
Fazer um programa que mostre a seguinte mensagem na saída padrão (monitor):
‘Olá mundo!’
Dicas:
Use o comando escreva()
Não há necessidade de declarar variáveis, use uma constante
113
Representação por pseudolinguagem
Exercício em sala
Fazer um programa que execute o algoritmo representado a seguir na forma de fluxograma:
114
Representação por pseudolinguagem
Exercício em sala
Fazer um programa que calcule a área de um círculo a partir de um valor de raio que o usuário deve digitar.
Dicas:
Faça o fluxograma antes de escrever o programa
Use o comando leia() para leitura do raio
115
Representação por pseudolinguagem
Exercício em sala
Fazer um programa que calcule o volume de uma esfera a partir de um valor de raio que o usuário deve digitar.
Dicas:
Faça o fluxograma antes de escrever o programa
Use o comando leia() para leitura do raio
116
Representação por pseudolinguagem
Exercício em sala
Fazer um programa que faz o seguinte questionamento ao usuário:
Qual a distância entre a terra e a lua?
 (A) 384 km
 (B) 384,4 mil km
 (C) 4,2 bilhões de anos luz
 (D) 9 mil km
O programa deve fornecer a saída do tipo:
Resultado: VERDADEIRO (letra B)
Ou:
Resultado: FALSO (letra B)
117
Representação por pseudolinguagem
Exercício em sala
Fazer um programa que leia uma temperatura em graus Celsius e apresente-a na escala Fahrenheit, cuja conversão é dada por:
F = (9*C + 160) / 5
O programa deve fornecer a saída do tipo:
Temperatura:
 25 graus Celsius
 77 graus Fahrenheit
*A linha acima foi executada entrando com 25°C na temperatura.
118
Representação por pseudolinguagem
Exercício em sala
Fazer um programa que calcule as raizes média de um polinômio de segundo grau na forma:
Ax2 + Bx + C = 0
O programa deve fornecer a saída do tipo*:
Raízes do polinômio (1)x2+(–5)x+(6)=0
 x1 = 2
 x2 = 3
*A linha acima foi executada com A=1, B=-5 e C=6.
119
Representação por Pseudolinguagem
Acorda!
foi digitado: Acorda!_
Pseudolinguagem
Comando de entrada de dados (“leia(<expressão>)”)
Recebe valores de uma entrada padrão (e.g. teclado).
Exemplo:
leia(ent)
escreva(“foi digitado: ”,ent)
120
Representação por pseudolinguagem
121
Visualg
Palavras-chave:
Comandos e Operadores Básicos
Operadores Básicos
Para manipular os dados, o computador pode realizar diversas operações, que são programadas utilizando-se os operadores.
Exemplo:
122
Obrigado!
123
Técnico em Automação e Mecânica Industrial
IFMG - Betim, 2014
Teste Lógico
S
N
Teste Lógico
S
N
Teste Lógico
S
N
Teste
Processo
N
S
Teste
Processo
N
S
Teste
Processo 2
Processo 1
N
S
Teste
Processo 2Processo 1
N
S
Teste Lógico
S
N
Início
Abrir o Baleiro
Pegar uma bala
Sabor de morango
Devolver bala pro baleiro
Desembalar a bala
Colocar bala na boca
Comer a bala
Jogar papel de bala no lixo
Fim
N
S
Início
Abrir o Baleiro
Pegar uma 
bala
Sabor de 
morango
Devolver bala 
pro baleiro
Desembalar a 
bala
Colocar bala 
na boca
Comer a bala
Jogar papel 
de bala no lixo
Fim
N
S
�
i = 0
i > 4
i = i + 1
N
S
Mostra i
i = 0
i > 4i = i + 1
N
S
Mostra i
�
i = 0
NF = 0
i >= 4
?
i = i + 1
Recebe Nota 
N
S
NF = NF + Nota
Mostre NF
i = 0
NF = 0
i >= 4
?
i = i + 1
N
S
Recebe Nota 
NF = NF + Nota
Mostre NF

Continue navegando