aula 9 - resultado operandos matemáticos, operadores aritmeticos, relacionais e lógicos

26
Aula 9 – Resultado de Operandos Matemáticos, Operadores Relacionais e Lógicos Prof. André Constantino da Silva LOGT1 – Lógica Noturno 11 de maio de 2012

Upload: andre-constantino-da-silva

Post on 01-Jul-2015

4.105 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Aula 9 – Resultado de Operandos

Matemáticos, Operadores

Relacionais e Lógicos

Prof. André Constantino da Silva

LOGT1 – Lógica

Noturno

11 de maio de 2012

Page 2: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Na aula anterior...

• Variáveis

• Tipos de Dados- Inteiro- Real- Caractere- Lógico

• Operadores- Atribuição- Matemáticos

• Exercícios para entregar

Page 3: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Dúvidas?

1. Escreva um algoritmo que leia um número inteiro do usuário e calcule y, sendo que y é calculado pela fórmula

y = 2x

2. Escrever um algoritmo que leia um número inteiro digitado pelo usuário e informe ao usuário se ele é par ou ímpar

3. Escrever um algoritmo que leia o nome de um aluno e as notas das três provas que ele obteve no semestre. No final informar o nome do aluno e a sua média (aritmética).

Page 4: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Operadores Matemáticos (Revisão)

Símbolo Ação Exemplo

+ Soma Soma <- 5 + 2

- Subtração Sub <- 5 – 2

* Multiplicação M <- 5 * 2

\ ? 5 \ 2

MOD ? 5 MOD 2

/ ? 5 / 2

^ ? 5 ^ 2

Page 5: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Operadores Matemáticos (Revisão)

Símbolo Ação Exemplo

+ Soma Soma <- 5 + 2

- Subtração Sub <- 5 – 2

* Multiplicação M <- 5 * 2

\ Divisão Inteira 5 \ 2

MOD Resto da divisão 5 MOD 2

/ Divisão 5 / 2

^ Potenciação 5 ^ 2

Cuidado para não

confundir!

Cuidado para não

confundir!

Page 6: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Na aula de hoje...

• Resultados dos operadores matemáticos

• Operadores- Relacionais- Lógicos

• Comando de Decisão Múltipla

Page 7: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Operadores Matemáticos

• Operadores: +, - e *

- O resultado dependerá dos operandos

- Se os operandos forem inteiros, resultado

será inteiro

- Se houver algum operando real, resultado

será real

Observação: Se o resultado for inteiro, ele

pode ser atribuído a uma variável do tipo real

Page 8: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Exemplos

algoritmo "calculos"var

a, b : inteirox, y : real

inicioa <- 6b <- 12x <- 5.5y <- 8c <- b + az <- a * b + 4d <- a * xw <- b – a + y

fimalgoritmo

Qual deverá ser

o tipo das

variáveis c, d, w,

z?

Page 9: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Exemplos - Resposta

algoritmo "calculos"var

a, b, c, z : inteirox, y, d , y : real

inicioa <- 6b <- 12x <- 5.5y <- 8c <- b + az <- a * b + 4d <- a * xw <- b – a + y

fimalgoritmo

Page 10: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Operadores Matemáticos

• Para o operador /

- Resultado sempre real

• Para os operadores \ e mod

- somente operandos inteiros

- resultado é inteiro, mas pode ser atribuído a

uma variável do tipo real

• Para o operador ^

- Resultado sempre real

Page 11: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Exemplos

algoritmo "calculos"var

a, b : inteirox, y : real

inicioa <- 6b <- 12x <- 5.5y <- 8c <- b / az <- b + xw <- b mod ad <- a \ xp <- x ^ xr <- (x ^ 2) mod a

fimalgoritmo

Qual deverá ser

o tipo das

variáveis c, d, w,

z, p, r?

Page 12: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Exemplos - Resposta

algoritmo "calculos"var

a, b, w : inteirox, y, c, z, p : real

inicioa <- 6b <- 12x <- 5.5y <- 8c <- b / az <- b + xw <- b mod ad <- a \ x /* erro de compilação. X é real! */p <- x ^ xr <- (x ^ 2) mod a /* erro de compilação. X é real! */

fimalgoritmo

Page 13: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Qual o problema?

Considere que a nota só pode ser um inteiro de 0 a 10

algoritmo "media semestre"var

nota1, nota2, nota3, soma, media: inteiroinicio

escreva("Digite a primeira nota do aluno: ")leia(nota1)escreva("Digite a segunda nota do aluno: ")leia(nota2)escreva("Digite a terceira nota do aluno: ")leia(nota3)soma <- nota1 + nota2 + nota3media <- soma / 3escreva("A média do aluno é: ", media)

fimalgoritmo

Page 14: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Qual o problema? - Resposta

Considere que a nota só pode ser um inteiro de 0 a 10

algoritmo "media semestre"var

nota1, nota2, nota3, soma: inteiromedia: real

inicioescreva("Digite a primeira nota do aluno: ")leia(nota1)escreva("Digite a segunda nota do aluno: ")leia(nota2)escreva("Digite a terceira nota do aluno: ")leia(nota3)soma <- nota1 + nota2 + nota3media <- soma / 3escreva("A média do aluno é: ", media)

fimalgoritmo

Page 15: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Operadores Relacionais

Símbolo Ação Exemplo Resutado

= Igual 2 = 3 Falso

> Maior 5 > 2 Verdadeiro

< Menor 5 < 2 Falso

>= Maior ou igual 3 >= 3 Verdadeiro

<= Menor ou igual 2 <= 3 Verdadeiro

<> diferente 5 <> 7 Verdadeiro

Page 16: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Operadores Relacionais

• O resultado de um operador

relacional sempre será um valor

lógico (verdadeiro ou falso)

Page 17: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Exercícios

1. Faça um algoritmo que receba um número e mostre uma mensagem caso este número seja maior ou igual a 10.

2. Escrever um algoritmo que leia dois valores inteiros distintos e informe qual é o maior.

3. Faça um algoritmo que leia dois números e identifique se são iguais ou diferentes. Caso eles sejam iguais imprima uma mensagem dizendo que eles são iguais. Caso sejam diferentes, informe qual número é o maior, e uma mensagem que são diferentes.

Page 18: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Operadores Lógicos

Símbolo Ação Exemplo Resutado

ou Escolhe 7 > 5 e 2 > 5 Falso

e Une 5> 7 ou 2 > 5 Verdadeiro

nao Nega nao (5 > 2) Falso

Page 19: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Operadores Lógicos

• O resultado de um operador lógico ou expressão lógica sempre será um valor lógico (verdadeiro ou falso)

Page 20: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Exercícios1. Faça um algoritmo que receba um número e diga se este número está no intervalo entre 100 e 200.

2. Faça um algoritmo que leia um número e emita as seguintes mensagens para os seguintes casos

Condição Mensagem a exibir

De 1 a 9 Um dígito

Entre 10 e 99 Dois dígitos

Entre 100 e 999 Três digítos

Entre 1.000 e 9999 Quatro dígitos

Maior que 10.000 Cinco ou mais dígitos

Page 21: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Esse algoritmo executa?

algoritmo "calculos"var

condicao: logicoa, b: inteiro

inicioleia(a)leia(b)condicao <- (a = b)se (condicao) entao

escreva("Os dois numeros sao iguais")senao

escreva("Os dois numeros sao diferentes")fimse

fimalgoritmo

Page 22: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Esse algoritmo executa?

algoritmo "calculos"var

condicao: logicoa, b: inteiro

inicioleia(a)leia(b)condicao <- (a = b)se (condicao) entao

escreva("Os dois numeros sao iguais")senao

escreva("Os dois numeros sao diferentes")fimse

fimalgoritmo

Parte duvidosa!

Page 23: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Esse algoritmo executa?

algoritmo "calculos"var

condicao: logicoa, b: inteiro

inicioleia(a)leia(b)condicao <- (a = b)se (condicao) entao

escreva("Os dois numeros sao iguais")senao

escreva("Os dois numeros sao diferentes")fimse

fimalgoritmo

Mas funciona!

Teste!

Page 24: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

O que é o “se-senao” e “se-

senao-entao”?

Page 25: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Cuidado!

“Se-senao” e “se-senao-entao” não existem em portugol!

As instruções são:- se-entao- se-entao-senao

São os comandos de decisão simples e duplas, também conhecidos como desvios condicionais

Page 26: Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais e Lógicos

Próxima aula...

• Comando de Decisão Múltipla

• Comandos de Repetição