Aula 03
Itens Fundamentais – P2
Ênio Prates Vasconcelos Filho
Faculdades Alfa
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Tópicos
Δ Constantes;
Δ Operadores aritméticos;
Δ Operadores Relacionais;
Δ Expressões Lógicas;
Δ Expressões Literais;
Δ Comandos de I/O;
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Revisão
Δ Até aqui...
• O que é um algoritmo;
• O que é um programa;
• Linguagens de programação;
• Compilação de um programa;
• Estruturas de algoritmos;
• Pseudocódigo;
• Itens Fundamentais:
oTipos de dados;
oVariáveis;
oComentários;
oComandos de entrada e saída;
oEstruturas condicionais;
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Constantes
Δ Tem-se como definição de constante tudo aquilo que é fixo ou estável;
Δ Existirão vários momentos em que faremos uso desse conceito;
Δ Exemplo:
• RESULTADO=ENTRADA+1,23
• MEDIA=(N1+N2+N3)/3
Δ As constantes também podem ser definidas no íncio do programa, junto
com as variáveis;
Δ Nesse caso, a restrição é que seu valor NÃO pode ser alterado ao longo da
execução do programa;
Constante
Constante
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Constantes
programa testa_constante
const PI<-3,1415
var
X: real
Y: real
inicio
leia(X)
Y<-X*PI
escreva (Y)
fim
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Operadores Aritméticos
Δ Já vimos em vários exemplos, o uso de operadores aritméticos;
Δ Esses são os conectores que permitem a realização de operações
matemáticas;
• Para uso desses operadores, as variáveis ou constantes utilizadas devem ser
do tipo Real ou Inteiro;
Δ Os operadores aritméticos são classificados em dois tipos:
• Unários: atuam na inversão de um valor;
• Binários: atuam em operações de exponenciação, multiplicação, divisão,
adição e subtração;
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Operadores Aritméticos
Operador Operação Tipo Tipo de Retorno Exemplo
+ Manutenção de sinal Unário Positivo +2, +variavel
- Inversão de Sinal Unário Negativo -2, -variavel
↑ Exponenciação Binário Inteiro ou Real 2 ↑ 2
/ Divisão Binário Real 5/2
div Divisão Binário Inteiro 5div2
% Divisão Binário inteiro 5%2
* Multiplicação Binário Inteiro ou Real 2*2
+ Adição Binário Inteiro ou Real 2+2
- Subtração Binário Inteiro ou Real 2-2
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Expressões Aritméticas
Δ Já trabalhamos com várias delas;
Δ Sempre são úteis em programação;
Δ Devem seguir algumas regras:
• Se o resultado de uma expressão pode ser real, a variável de saída deve que
ser real;
• Devem ser usados apenas parênteses, para indicar precedência:
oA expressão: 𝑋 = {43 ∗[55:(30+2)]}
oDeve ser escrita assim, em pseudocódigo: X<-(43*(55/(30+2)));
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Operadores Relacionais
Δ Muito utilizados em estruturas condicionais (se... Então...fim_se);
Δ Implica na utilização de condições para verificar o estado de uma variável;
Δ Permite definir se uma condição é verdadeira ou falsa;
Símbolo Significado Exemplo
= Igual a A=0
<> Diferente de A+B<>C
> Maior que A>B, 4>3, C>3
< Menor que (2*A)<(3*B)
>= Maior ou Igual B*A>=0
<= Menor ou Igual B*A<=0
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Desvios condicionais encadeados
Δ Já vimos estruturas condicionais (se...então..senão...fim_se);
Δ Contudo, existem várias situações onde necessitamos estabelecer
verificações sucessivas de condições, para determinar o resultado de uma
operação;
Δ Isso implica em usar uma condição dentro de outra condição;
Δ Essa estrutura poderá possuir vários níveis de aninhamento ou
encadeamentos;
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Desvios condicionais encadeados
se (<condição1>) entao
<instrução para condição1 verdadeira>
senao
se (<condição2>) entao
<instrução para condição2 verdadeira, com condicao1 Falsa>
fim_se
se (<condição3>) entao
<instrução para condição3 verdadeira, com condicao1 Falsa>
senão
<instrução para condição3 falsa, com condicao1 Falsa>
fim_se
fim_se
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Exercício
Δ Controle de entrada em boate. Tal algoritmo avisa se uma pessoa pode
entrar ou não, e quanto deverá pagar para entrar.
• Homens e mulheres abaixo de 18 anos não podem entrar. Homens pagam R$
20,00. Mulheres pagam R$ 10,00
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Exemplo
Δ Solução:
programa entrada_boate
var
sexo: caractere
idade: inteiro
inicio
escreva(“Digite sexo e idade”)
leia(sexo)
leia(idade)
se (idade < 18) entao
escreva(“Entrada proibida”)
senao
se (sexo=“M”) entao
escreva(“Entrada liberada: R$ 20,00”)
fim_se
se (sexo=“F”) entao
escreva(“Entrada liberada: R$ 10,00”)
fim_se
fim_se
fim
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Exercício - Casa
Δ Transforme o algoritmo anterior em um fluxograma;
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Exercício
Δ Elabore um programa que efetue o calculo do reajuste de salário de um
funcionário. Considere:
• O funcionário deve receber um aumento de 15% se seu salário for menor que
R$ 500,00;
• Se o salário for maior ou igual a R$ 500,00 mas menor que R$ 1000,00, o
reajuste deve ser de 10%;
• Caso seja maior ou igual a R$ 1000,00, o reajuste deve ser de 5%;
• Escreva na tela o valor final do salário do funcionário;
Δ Resposta: pág. 47 do livro texto;
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Para vocês
Δ Elabore um programa que efetue o calculo do reajuste de salário de um
funcionário, sendo que o funcionário deve inserir seu percentual de
aumento desejado, o valor do seu salário e seu sexo. Se ele for do sexo
masculino, seu aumento deve ser dividido por 2. Se for do sexo feminino,
mantenha o valor do aumento;
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Operadores Lógicos
Δ Utilizados no processo de tomada de decisão e em controles de repetição;
Δ O resultado da operação é sempre um valor lógico (verdadeiro ou falso);
Operador Significado Exemplo de Uso
.e. Conjunção A .e. B
.ou. Disjunção A .ou. B
.nao. Negação .nao. A
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Operadores Lógicos
Δ Conjunção (.e.)
• É utilizado quando dois ou mais relacionamentos lógicos de uma determinada
condição precisam ser verdadeiros;
• Exemplo:
se (<condição1>) .e. (<condição2>) entao
<executa instruções se condicao1 e condição2 são verdadeiras>
fim_se
Condição1 Condição2 Resultado
Falsa Falsa Falsa
Falsa Verdadeira Falsa
Verdadeira Falsa Falsa
Verdadeira Verdadeira Verdadeira
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Operadores Lógicos (.e.)
programa testa_e
var
numero: inteiro
inicio
escreva(“Insira numero:”)
leia(numero)
se (numero >= 20) .e. (numero < 30) entao
escreva(“o numero está entre 20 e 29”)
senao
escreva(“o numero não está entre 20 e 29”)
fim_se
fim
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Operadores Lógicos
Δ Disjunção(.ou.)
• É utilizado quando pelo menos um dos relacionamentos lógicos de uma
determinada condição precisam ser verdadeiros;
• Exemplo:
se (<condição1>) .ou. (<condição2>) entao
<executa instruções se condicao1 ou condição2 são verdadeiras>
fim_se
Condição1 Condição2 Resultado
Falsa Falsa Falsa
Falsa Verdadeira Verdadeira
Verdadeira Falsa Verdadeira
Verdadeira Verdadeira Verdadeira
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Operadores Lógicos (.ou.)
programa testa_ou
var
SEXO: caractere
inicio
escreva(“Insira gênero do aluno:”)
leia(SEXO)
se (SEXO=“M”) .ou. (SEXO=“F”) entao
escreva(“o gênero é válido!”)
senao
escreva(“o gênero é inválido!”)
fim_se
fim
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Operadores Lógicos
Δ Negação(.nao.)
• É utilizado quando se deseja obter a relação inversa do resultado lógico de
uma condição;
• Exemplo:
se .nao. (<condição1>) entao
<executa instruções se condicao1 não for verdadeira>
fim_se
Condição1 Resultado
Falsa Verdadeira
Verdadeira Falsa
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Operadores Lógicos (.ou.)
programa testa_nao
var
A, B, C, X: inteiro
inicio
leia(A, B, X)
se .nao. (X>5) entao
C<-(A+B)*X
senao
C<-(A-B)*X
fim_se
escreva(C)
fim
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Exemplo
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Exemplo
Δ Leia três valores (A,B,C) para os lados de um triângulo. Em seguida,
verifique se esses três lados realmente forma um triângulo. Caso essa
condição seja verdadeira, determine se qual o tipo de triângulo será
formado (isósceles, equilátero ou escaleno);
• Regras para definir um triângulo: cada lado deve ser menor que a soma dos
dois outros;
• Tipos de triângulos:
oIsósceles: dois lados iguais e um diferente;
oEquilátero: todos os lados são iguais;
oEscaleno: todos os lados são diferentes;
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Exemplo
Δ Leia três valores (A,B,C) para os lados de um triângulo. Em seguida,
verifique se esses três lados realmente forma um triângulo. Caso essa
condição seja verdadeira, determine se qual o tipo de triângulo será
formado (isósceles, equilátero ou escaleno);
Δ Solução:
• Montar um algoritmo:
oLeia os três lados;
oVerificar se cada lado é menor que a soma dos outros dois;
▪ Se sim, verificar se os três lados são iguais (equilátero);
✓Se não, verificar se dois lados são iguais (isósceles);
• Se não, o triângulo é escaleno;
▪ Se não, não é um triângulo. Avisar que não formam um triângulo;
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Exemplo
programa le_lados
var
A,B,C: real
inicio
escreva(“Insira lados do triângulo”)
leia(A,B,C)
se (A < B+C) .e. (B<A+C) .e. (C<A+B) entao
se (A=B) .e. (B=C) entao
escreva(“É um triângulo Equilátero”)
senao
se (A=B) .ou. (B=C) .ou. (C=A) entao
escreva(“É um triângulo Isósceles”)
senão
escreva(“É um triângulo escaleno”)
fim_se
fim_se
senao
escreva(“Não é um triângulo”)
fim_se
fim
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Exercícios
1. Ler dois valores numéricos inteiros e apresentar o resultado da diferença
do maior pelo valor do menor;
2. Ler um valor numérico inteiro positivo ou negativo e apresentar o valor
lido como sendo positivo (ou seja, se for um número negativo, deve ser
multiplicado por -1);
3. Ler os valores de 4 notas escolares de um aluno, calcular a média
aritmética e apresentar a mensagem “aprovado” se a média obtida for
maior ou igual a 6; caso contrário, apresentar a mensagem “reprovado”.
Informe, junto com cada mensagem o valor da média obtida;
4. Ler os valores de 2 notas escolares de um aluno. Calcular a média
aritmética e apresentar a mensagem aprovado se a média for maior que
8. Caso contrário, o programa deve pedir a inserção de mais uma nota.
Calcular a nova média aritmética e caso seja maior que 6, mostre a
mensagem “aprovado em N3”; Caso contrário, apresentar a mensagem:
“Reprovado”. Em cada caso, mostre sempre o valor da média final;
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Exercícios
5. Ler cinco valores numéricos inteiros, identificar e apresentar o maior valor e o
menor;
6. Ler um valor numérico inteiro. Informar ao usuário se esse valor está entre 1 e
9;
7. Leia dois números e indique quais deles são maior que três. Utilize apenas o
operador lógico .nao.;
8. Fornecidos os dados das candidatas a modelo: ALTURA, PESO e IDADE, escreva
um trecho de algoritmo para verificar se os dados se enquadram nos seguintes
limites:
• ALTURA: de 1.70 a 1.85 m
• PESO: de 48.0 a 60.0 kg
• IDADE: de 17 a 21 anos
Se os dados da candidata corresponderem a esses limites, deve ser impressa
uma frase dizendo que ela foi aprovada; caso contrário, que não foi aprovada.
DÚVIDAS?
Contatos:
E-mail: enio.filho@alfa.br
Skype: eniopvf
Twitter: eniopvf
Bibliografia:
• MANZANO, José Augusto N. G.; OLIVEIRA, Jayr Figueiredo de. Algoritmos: lógica para
desenvolvimento de programação de computadores. 18ª. ed. São Paulo: Érica, 2006. 236 p. ISBN
857194718;
• FORBELLONE, André Luiz Villar; EBERSPACHER, Henri Frederico. Lógica de programação: a construção
de algoritmos e estruturas de dados. 3ª. ed. São Paulo (SP): Pearson Prentice Hall, 2005. 195 p. ISBN
9788576050247;

Algoritmos e LP - Aula 03 - Expressões Aritméticas.pdf

  • 1.
    Aula 03 Itens Fundamentais– P2 Ênio Prates Vasconcelos Filho Faculdades Alfa
  • 2.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Tópicos Δ Constantes; Δ Operadores aritméticos; Δ Operadores Relacionais; Δ Expressões Lógicas; Δ Expressões Literais; Δ Comandos de I/O;
  • 3.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Revisão Δ Até aqui... • O que é um algoritmo; • O que é um programa; • Linguagens de programação; • Compilação de um programa; • Estruturas de algoritmos; • Pseudocódigo; • Itens Fundamentais: oTipos de dados; oVariáveis; oComentários; oComandos de entrada e saída; oEstruturas condicionais;
  • 4.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Constantes Δ Tem-se como definição de constante tudo aquilo que é fixo ou estável; Δ Existirão vários momentos em que faremos uso desse conceito; Δ Exemplo: • RESULTADO=ENTRADA+1,23 • MEDIA=(N1+N2+N3)/3 Δ As constantes também podem ser definidas no íncio do programa, junto com as variáveis; Δ Nesse caso, a restrição é que seu valor NÃO pode ser alterado ao longo da execução do programa; Constante Constante
  • 5.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Constantes programa testa_constante const PI<-3,1415 var X: real Y: real inicio leia(X) Y<-X*PI escreva (Y) fim
  • 6.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Operadores Aritméticos Δ Já vimos em vários exemplos, o uso de operadores aritméticos; Δ Esses são os conectores que permitem a realização de operações matemáticas; • Para uso desses operadores, as variáveis ou constantes utilizadas devem ser do tipo Real ou Inteiro; Δ Os operadores aritméticos são classificados em dois tipos: • Unários: atuam na inversão de um valor; • Binários: atuam em operações de exponenciação, multiplicação, divisão, adição e subtração;
  • 7.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Operadores Aritméticos Operador Operação Tipo Tipo de Retorno Exemplo + Manutenção de sinal Unário Positivo +2, +variavel - Inversão de Sinal Unário Negativo -2, -variavel ↑ Exponenciação Binário Inteiro ou Real 2 ↑ 2 / Divisão Binário Real 5/2 div Divisão Binário Inteiro 5div2 % Divisão Binário inteiro 5%2 * Multiplicação Binário Inteiro ou Real 2*2 + Adição Binário Inteiro ou Real 2+2 - Subtração Binário Inteiro ou Real 2-2
  • 8.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Expressões Aritméticas Δ Já trabalhamos com várias delas; Δ Sempre são úteis em programação; Δ Devem seguir algumas regras: • Se o resultado de uma expressão pode ser real, a variável de saída deve que ser real; • Devem ser usados apenas parênteses, para indicar precedência: oA expressão: 𝑋 = {43 ∗[55:(30+2)]} oDeve ser escrita assim, em pseudocódigo: X<-(43*(55/(30+2)));
  • 9.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Operadores Relacionais Δ Muito utilizados em estruturas condicionais (se... Então...fim_se); Δ Implica na utilização de condições para verificar o estado de uma variável; Δ Permite definir se uma condição é verdadeira ou falsa; Símbolo Significado Exemplo = Igual a A=0 <> Diferente de A+B<>C > Maior que A>B, 4>3, C>3 < Menor que (2*A)<(3*B) >= Maior ou Igual B*A>=0 <= Menor ou Igual B*A<=0
  • 10.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Desvios condicionais encadeados Δ Já vimos estruturas condicionais (se...então..senão...fim_se); Δ Contudo, existem várias situações onde necessitamos estabelecer verificações sucessivas de condições, para determinar o resultado de uma operação; Δ Isso implica em usar uma condição dentro de outra condição; Δ Essa estrutura poderá possuir vários níveis de aninhamento ou encadeamentos;
  • 11.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Desvios condicionais encadeados se (<condição1>) entao <instrução para condição1 verdadeira> senao se (<condição2>) entao <instrução para condição2 verdadeira, com condicao1 Falsa> fim_se se (<condição3>) entao <instrução para condição3 verdadeira, com condicao1 Falsa> senão <instrução para condição3 falsa, com condicao1 Falsa> fim_se fim_se
  • 12.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Exercício Δ Controle de entrada em boate. Tal algoritmo avisa se uma pessoa pode entrar ou não, e quanto deverá pagar para entrar. • Homens e mulheres abaixo de 18 anos não podem entrar. Homens pagam R$ 20,00. Mulheres pagam R$ 10,00
  • 13.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Exemplo Δ Solução: programa entrada_boate var sexo: caractere idade: inteiro inicio escreva(“Digite sexo e idade”) leia(sexo) leia(idade) se (idade < 18) entao escreva(“Entrada proibida”) senao se (sexo=“M”) entao escreva(“Entrada liberada: R$ 20,00”) fim_se se (sexo=“F”) entao escreva(“Entrada liberada: R$ 10,00”) fim_se fim_se fim
  • 14.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Exercício - Casa Δ Transforme o algoritmo anterior em um fluxograma;
  • 15.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Exercício Δ Elabore um programa que efetue o calculo do reajuste de salário de um funcionário. Considere: • O funcionário deve receber um aumento de 15% se seu salário for menor que R$ 500,00; • Se o salário for maior ou igual a R$ 500,00 mas menor que R$ 1000,00, o reajuste deve ser de 10%; • Caso seja maior ou igual a R$ 1000,00, o reajuste deve ser de 5%; • Escreva na tela o valor final do salário do funcionário; Δ Resposta: pág. 47 do livro texto;
  • 16.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Para vocês Δ Elabore um programa que efetue o calculo do reajuste de salário de um funcionário, sendo que o funcionário deve inserir seu percentual de aumento desejado, o valor do seu salário e seu sexo. Se ele for do sexo masculino, seu aumento deve ser dividido por 2. Se for do sexo feminino, mantenha o valor do aumento;
  • 17.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Operadores Lógicos Δ Utilizados no processo de tomada de decisão e em controles de repetição; Δ O resultado da operação é sempre um valor lógico (verdadeiro ou falso); Operador Significado Exemplo de Uso .e. Conjunção A .e. B .ou. Disjunção A .ou. B .nao. Negação .nao. A
  • 18.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Operadores Lógicos Δ Conjunção (.e.) • É utilizado quando dois ou mais relacionamentos lógicos de uma determinada condição precisam ser verdadeiros; • Exemplo: se (<condição1>) .e. (<condição2>) entao <executa instruções se condicao1 e condição2 são verdadeiras> fim_se Condição1 Condição2 Resultado Falsa Falsa Falsa Falsa Verdadeira Falsa Verdadeira Falsa Falsa Verdadeira Verdadeira Verdadeira
  • 19.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Operadores Lógicos (.e.) programa testa_e var numero: inteiro inicio escreva(“Insira numero:”) leia(numero) se (numero >= 20) .e. (numero < 30) entao escreva(“o numero está entre 20 e 29”) senao escreva(“o numero não está entre 20 e 29”) fim_se fim
  • 20.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Operadores Lógicos Δ Disjunção(.ou.) • É utilizado quando pelo menos um dos relacionamentos lógicos de uma determinada condição precisam ser verdadeiros; • Exemplo: se (<condição1>) .ou. (<condição2>) entao <executa instruções se condicao1 ou condição2 são verdadeiras> fim_se Condição1 Condição2 Resultado Falsa Falsa Falsa Falsa Verdadeira Verdadeira Verdadeira Falsa Verdadeira Verdadeira Verdadeira Verdadeira
  • 21.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Operadores Lógicos (.ou.) programa testa_ou var SEXO: caractere inicio escreva(“Insira gênero do aluno:”) leia(SEXO) se (SEXO=“M”) .ou. (SEXO=“F”) entao escreva(“o gênero é válido!”) senao escreva(“o gênero é inválido!”) fim_se fim
  • 22.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Operadores Lógicos Δ Negação(.nao.) • É utilizado quando se deseja obter a relação inversa do resultado lógico de uma condição; • Exemplo: se .nao. (<condição1>) entao <executa instruções se condicao1 não for verdadeira> fim_se Condição1 Resultado Falsa Verdadeira Verdadeira Falsa
  • 23.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Operadores Lógicos (.ou.) programa testa_nao var A, B, C, X: inteiro inicio leia(A, B, X) se .nao. (X>5) entao C<-(A+B)*X senao C<-(A-B)*X fim_se escreva(C) fim
  • 24.
  • 25.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Exemplo Δ Leia três valores (A,B,C) para os lados de um triângulo. Em seguida, verifique se esses três lados realmente forma um triângulo. Caso essa condição seja verdadeira, determine se qual o tipo de triângulo será formado (isósceles, equilátero ou escaleno); • Regras para definir um triângulo: cada lado deve ser menor que a soma dos dois outros; • Tipos de triângulos: oIsósceles: dois lados iguais e um diferente; oEquilátero: todos os lados são iguais; oEscaleno: todos os lados são diferentes;
  • 26.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Exemplo Δ Leia três valores (A,B,C) para os lados de um triângulo. Em seguida, verifique se esses três lados realmente forma um triângulo. Caso essa condição seja verdadeira, determine se qual o tipo de triângulo será formado (isósceles, equilátero ou escaleno); Δ Solução: • Montar um algoritmo: oLeia os três lados; oVerificar se cada lado é menor que a soma dos outros dois; ▪ Se sim, verificar se os três lados são iguais (equilátero); ✓Se não, verificar se dois lados são iguais (isósceles); • Se não, o triângulo é escaleno; ▪ Se não, não é um triângulo. Avisar que não formam um triângulo;
  • 27.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Exemplo programa le_lados var A,B,C: real inicio escreva(“Insira lados do triângulo”) leia(A,B,C) se (A < B+C) .e. (B<A+C) .e. (C<A+B) entao se (A=B) .e. (B=C) entao escreva(“É um triângulo Equilátero”) senao se (A=B) .ou. (B=C) .ou. (C=A) entao escreva(“É um triângulo Isósceles”) senão escreva(“É um triângulo escaleno”) fim_se fim_se senao escreva(“Não é um triângulo”) fim_se fim
  • 28.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Exercícios 1. Ler dois valores numéricos inteiros e apresentar o resultado da diferença do maior pelo valor do menor; 2. Ler um valor numérico inteiro positivo ou negativo e apresentar o valor lido como sendo positivo (ou seja, se for um número negativo, deve ser multiplicado por -1); 3. Ler os valores de 4 notas escolares de um aluno, calcular a média aritmética e apresentar a mensagem “aprovado” se a média obtida for maior ou igual a 6; caso contrário, apresentar a mensagem “reprovado”. Informe, junto com cada mensagem o valor da média obtida; 4. Ler os valores de 2 notas escolares de um aluno. Calcular a média aritmética e apresentar a mensagem aprovado se a média for maior que 8. Caso contrário, o programa deve pedir a inserção de mais uma nota. Calcular a nova média aritmética e caso seja maior que 6, mostre a mensagem “aprovado em N3”; Caso contrário, apresentar a mensagem: “Reprovado”. Em cada caso, mostre sempre o valor da média final;
  • 29.
    I t e n s B á s i c o s ALGORITMOS - 02/2015– ÊNIO FILHO Exercícios 5. Ler cinco valores numéricos inteiros, identificar e apresentar o maior valor e o menor; 6. Ler um valor numérico inteiro. Informar ao usuário se esse valor está entre 1 e 9; 7. Leia dois números e indique quais deles são maior que três. Utilize apenas o operador lógico .nao.; 8. Fornecidos os dados das candidatas a modelo: ALTURA, PESO e IDADE, escreva um trecho de algoritmo para verificar se os dados se enquadram nos seguintes limites: • ALTURA: de 1.70 a 1.85 m • PESO: de 48.0 a 60.0 kg • IDADE: de 17 a 21 anos Se os dados da candidata corresponderem a esses limites, deve ser impressa uma frase dizendo que ela foi aprovada; caso contrário, que não foi aprovada.
  • 30.
    DÚVIDAS? Contatos: E-mail: enio.filho@alfa.br Skype: eniopvf Twitter:eniopvf Bibliografia: • MANZANO, José Augusto N. G.; OLIVEIRA, Jayr Figueiredo de. Algoritmos: lógica para desenvolvimento de programação de computadores. 18ª. ed. São Paulo: Érica, 2006. 236 p. ISBN 857194718; • FORBELLONE, André Luiz Villar; EBERSPACHER, Henri Frederico. Lógica de programação: a construção de algoritmos e estruturas de dados. 3ª. ed. São Paulo (SP): Pearson Prentice Hall, 2005. 195 p. ISBN 9788576050247;