Você está na página 1de 19

Aula 03

Operadores
lógicos,relacionais e
comandos
condicionais
João L. F. Lacerda
(81)997495691
Operadores Relacionais

❏ Igual
❏ Diferente
❏ Menor que
❏ Maior que
❏ Menor ou igual
❏ Maior ou igual
Operadores Lógicos/Booleanos

❏ Negação
- !

❏ Ou (or)
- ||

❏ E (and)
- &&
Tabela Verdade
Exemplos de expressões booleanas
Mais exemplos


Expressões aplicadas aos metodos de controle

❏ Estruturas de
controle(seleção e
repetição) utilizam
expressões booleanas
para decidir
- qual bloco de comandos
vai ser executado
- se o bloco de comandos
devera ser repetido
Estrutura de comando de seleção comando
if-else
Exercicio 1

❏ Um programa que le tres numeros distintos e


imprime o maior dos tres
Exercicio 1

❏ Um programa que le tres numeros distintos e


imprime o maior dos tres
Exercicio 2

❏ Ler um valor real correspondente a uma nota, tal


que 0<= nota <=10, e imprimir o conceito
equivalente(A, B, C, D ou E), conforme a seguinte
tabela:
Tipos primitivos - Casting

❏ Java é uma linguagem fortemente tipada


- Atribuir um valor de tipo errado resulta em um erro de
compilação
❏ Java pode, implicitamente, promover um tipo mais restrito
em um tipo com maior amplitude
- Nenhuma informação é perdida
❏ Para restringir um tipo mais amplo é preciso utilizar casts
explicitamente
- Cast cria um novo valor e permite que ele seja tratado como
um tipo diferente de sua definição original
Exemplos
Casting Implicito vs explicito
Exercicio 3

❏ Ler dois valores reais, x e y, correspondentes ás


coordenadas de um ponto no plano e dizer em que
quadrante se encontra, ou se está no eixo-x ou no
eixo-y ou se está na origem.
Exercicio 4

❏ Ler valores para os tres lados de um triangulo e


dizer o seu tipo(equilatero,isosceles ou escaleno)
Exercicio 6
❏ Um cartão de crédito (ou débito), é claro, é um cartão de plástico com o qual você pode pagar por bens e serviços.
Impresso nesse cartão está um número que também está armazenado em um banco de dados em algum lugar, para
que, quando seu cartão for usado para comprar algo, o credor saiba de quem cobrar. Há muitas pessoas com cartões de
crédito neste mundo, então esses números são bem longos: American Express usa números de 15 dígitos, MasterCard
usa números de 16 dígitos e Visa usa números de 13 e 16 dígitos. E esses são números decimais (0 a 9), não binários, o
que significa, por exemplo, que a American Express poderia imprimir até 10^15 = 1.000.000.000.000.000 cartões
únicos! (Isso é, hum, um quatrilhão.)

Na verdade, isso é um pouco exagerado, porque os números de cartão de crédito realmente têm alguma estrutura para
eles. Todos os números American Express começam com 34 ou 37; a maioria dos números MasterCard começa com 51,
52, 53, 54 ou 55 (eles também têm alguns outros números iniciais potenciais com os quais não nos preocuparemos com
esse problema); e todos os números Visa começam com 4. Mas os números de cartão de crédito também têm um
“checksum” embutido neles, uma relação matemática entre pelo menos um número e outros. Essa soma de verificação
permite que computadores (ou humanos que gostam de matemática) detectem erros de digitação (por exemplo,
transposições), se não números fraudulentos, sem precisar consultar um banco de dados, o que pode ser lento. Claro,
um matemático desonesto certamente poderia criar um número falso que, no entanto, respeita a restrição
matemática, então uma pesquisa de banco de dados ainda é necessária para verificações mais rigorosas.
Algoritmo de Luhn

Então, qual é a fórmula secreta? Bem, a maioria dos cartões usa um algoritmo inventado por Hans Peter Luhn da IBM. De acordo com o algoritmo de Luhn, você pode determinar se um número de cartão de crédito é (sintaticamente) válido da seguinte forma:

1. Multiplique todos os outros dígitos por 2, começando com o penúltimo dígito do número e, em seguida, some os dígitos desses produtos.
2. Adicione a soma à soma dos dígitos que não foram multiplicados por 2.
3. Se o último dígito do total for 0 (ou, de forma mais formal, se o módulo total 10 for congruente a 0), o número é válido!

Isso é meio confuso, então vamos tentar um exemplo com o visto de David: 4003600000000014.
Exemplos de Entrada/Saida
Numero: 4003600000000014
1. Para fins de discussão, vamos primeiro sublinhar todos os outros dígitos, começando com o penúltimo dígito do número:
VISA
4003600000000014
Numero: 6176292929
Ok, vamos multiplicar cada um dos dígitos sublinhados por 2: INVALID
1•2 + 0•2 + 0•2 + 0•2 + 0•2 + 6•2 + 0•2 + 4•2

Isso nos dá:

2 + 0 + 0 + 0 + 0 + 12 + 0 + 8

Agora vamos adicionar os dígitos desses produtos (ou seja, não os próprios produtos) juntos:

2 + 0 + 0 + 0 + 0 + 1 + 2 + 0 + 8 = 13

2. Agora vamos adicionar essa soma (13) à soma dos dígitos que não foram multiplicados por 2 (começando do final):

13 + 4 + 0 + 0 + 0 + 0 + 0 + 3 + 0 = 20

3. Sim, o último dígito dessa soma (20) é 0, então o cartão de David é legítimo!

Portanto, validar números de cartão de crédito não é difícil, mas é um pouco tedioso manualmente. Vamos escrever um programa.
Exercicio 5
❏ Em um dia quente de verão, Mandy e seu amigo Billy decidiram comprar uma melancia. Eles escolheram o
maior e o mais maduro, na opinião deles. Depois disso a melancia foi pesada, e a balança mostrou w quilos.
Eles correram para casa, morrendo de sede, e decidiram dividir a fruta, mas enfrentaram um problema
difícil.Mandy e Billy são grandes fãs de números pares, por isso eles querem dividir a melancia de tal forma
que cada uma das duas partes pese um número par de quilos, ao mesmo tempo em que não é obrigatório que
as partes sejam iguais. As crianças estão extremamente cansadas e querem começar a refeição o mais rápido
possível, por isso você deve ajudá-las e descobrir se elas podem dividir a melancia da maneira que quiserem.
Com certeza, cada um deles deve receber uma parte do peso positivo.

Entrada

A primeira (e única) linha de entrada contém o número inteiro w (1 ≤ w ≤ 100) — o peso da melancia comprada
pelos meninos.

Saída

Imprima SIM, se os meninos puderem dividir a melancia em duas partes, cada uma pesando número par de
quilos; e NÃO no caso contrário.

Exemplo

Entrada : 8 Saida : Sim

Nota :Por exemplo, os meninos podem dividir a melancia em duas partes de 2 e 6 quilos, respectivamente
(outra variante — duas partes de 4 e 4 quilos).

Você também pode gostar