programação estruturada com java-aula04
TRANSCRIPT
Linguagem de Programação Estruturada
Prof. Esp. Elvis Araújo2014
Estrutura Condicional
● Permite que o programa siga um fluxo caso alguma condição seja atendida
● Por exemplo: em um programa de cadastro, caso a pessoa seja maior de 18 anos, faz-se necessário pedir o número do título de eleitor
● Composição:
– Simples: somente testa-se se a condição é verdadeira e caso seja, faz-se alguma coisa.
– Composta: existe o teste de condição, se a mesma é verdadeira, segue-se um fluxo, caso seja falsa, outro fluxo é seguido.
Estrutura Condicional
● Exemplos:
– Simples:● Em um cadastro, perguntar se a pessoa possui carteira
de motorista, caso ela possua, faz-se necessário saber a categoria
– Composto:● Em um exame admissional de uma empresa, caso ela
seja homem, pede-se o PSA, caso não seja, pede-se mamografia.
Estrutura Condicional
● Construção no Java
– Simples● Um comando
if (condição) comando ;● Vários comandos
if (condição) {comando 1;
comando 2;
}
Estrutura Condicional
● Construção no Java
– Composto● Único comando
if (condição) comando1 else comando2;● Vários comandos
if (condição) {comando1;
comando2;
}else{comando3;
comando4;
}
Estrutura Condicional
● Simples com um comando
– Faça um programa que peça um número e teste se o mesmo é par ou ímpar.
● Programa: paridade1
Estrutura Condicional
Scanner entrada= new Scanner(System.in);
"Entre com um numero"
byte numero=entrada.nextByte()
byte resto = (byte) (numero % 2)
byte numero=entrada.nextByte()
byte numero=entrada.nextByte()
String paridade="Ímpar"
resto==0
paridade="Par"
"O número "+numero+" é :"+paridade
N
S
FIM
INÍCIO
Estrutura Condicional
● Composto com um comando
– Faça um programa que peça um número e teste se o mesmo é par ou ímpar.
● Programa: paridade2
Estrutura Condicional
Scanner entrada= new Scanner(System.in);
"Entre com um numero"
byte numero=entrada.nextByte()
byte resto = (byte) (numero % 2)
byte numero=entrada.nextByte()
byte numero=entrada.nextByte()
resto==0
paridade="Par"
"O número "+numero+" é :"+paridade
NS
FIM
INÍCIO
paridade=”Ímpar”
Estrutura Condicional
● Simples com vários comando
– Faça um programa que peça Nome, Idade, caso a pessoa possua mais de 18 anos, peça o número do título de eleitor.
● Programa: cadastro01
Estrutura Condicional
Scanner entrada= new Scanner(System.in);
"Entre com o seu nome:"
byte numero=entrada.nextByte()
byte numero=entrada.nextByte()
String nome=entrada.nextLine()
INÍCIO
"Entre com a sua idade:"
byte idade=entrada.nextByte()
idade>=18
"Entre o número do título de eleitor:"
int titulo=entrada.nextInt();
SN
"Nome: "+nome+"\nIdade: "+idade+"\nTítulo: "+titulo
Fim
Estrutura Condicional
● Composta com vários comando
– Faça um programa que peça Nome, Idade, caso a pessoa possua mais de 18 anos, peça o número do título de eleitor, caso seja menor de 18 anos, peça o número do título do responsável legal.
● Programa: cadastro02
Estrutura Condicional
Scanner entrada= new Scanner(System.in);
"Entre com o seu nome:"
byte numero=entrada.nextByte()
byte numero=entrada.nextByte()
String nome=entrada.nextLine()
INÍCIO
"Entre com a sua idade:"
byte idade=entrada.nextByte()
idade>=18
"Entre o número do título de eleitor:"
int titulo=entrada.nextInt();
SN
"Nome: "+nome+"\nIdade: "+idade+"\nTítulo: "+titulo
Fim
"Entre o número do título de eleitor do reponsável legal:”
int titulo=entrada.nextInt();
Estrutura Condicional
● Estruturas Aninhadas
– São estruturas if/else dentro de outras if/else.
– Necessaŕio estar atento à identação para que não sejam confundidas as restrições de operações
– Existem estruturas condicionais somente com o if em alguns casos
Estrutura Condicional
● Estruturas Aninhadas
– Entre com dois números, descubra quem é o maior dentro eles.
● Programa: compara1.java
Estrutura Condicional
Scanner entrada= new Scanner(System.in);
"Entre com o primeiro número:"
byte numero=entrada.nextByte()
byte numero=entrada.nextByte()
byte a=entrada.nextByte()
INÍCIO
"Entre com o segundo número:"
byte b=entrada.nextByte()
a>b
SN
Fim
"O número "+a+" é maior que "+b b>a
"O número "+a+" é maior que "+b
S
"Os números "+a+" e "+b+" são iguais."
N
Estrutura Condicional● Estrutura Switch/Case
– Utilizanda quando sabemos os resultados que queremos testar
– Quando temos um número de condições finita a sua utilização é recomendada
– Estrutura:
switch (variavel) {case 1:
comandos;
break;
case 2:comandos;
break;
}
Estrutura Condicional
● Switch/Case
– Faça um programa que peça um número e teste se o mesmo é par ou ímpar.
● Programa: paridadeCase1
Estrutura Condicional
Scanner entrada= new Scanner(System.in);
"Entre com um numero"
byte numero=entrada.nextByte()
byte resto = (byte) (numero % 2)
byte numero=entrada.nextByte()
byte numero=entrada.nextByte()
String paridade="Ímpar"
resto==0? paridade="Par"
"O número "+numero+" é :"+paridade
N
S
FIM
INÍCIO
resto==1? paridade="Impar"S
Operadores Lógicos
● Interligam dois testes lógicos, sendo necessários em alguns casos.
– Operadores:● E (&&)● Ou (||)● Não (!)● Ou Exclusivo (^)
Operadores Lógicos
● Tabela Verdade (E-&&)
A B A e B
V V V
V F F
F V F
F F F
Operadores Lógicos
● Tabela Verdade (OU-||)
Tabela Verdade (Não-!)
A B A OU B
V V V
V F V
F V V
F F F
A NÃO A
V F
F V
Operadores Lógicos
● Tabela Verdade (Ou Exclusivo)
A B A XOR B
V V V
V F F
F V F
F F V
Operadores Lógicos
● Exemplo:
– Em um sistema de cadastro, necessitamos informar o nome, idade e sexo, caso o registro seja de uma pessoa do sexo masculino e com mais de 18 anos, faz-se necessário a inserção do Certificado de Reservista.
● Programa: testeE
Dúvidas
Referências
● DEITEL, H. M.; DEITEL, P. J. Java: Como Programar. 6. Ed. São Paulo: Pearson Education, 2005.
● SIERRA, K.; BATES, B. Use a Cabeça! Java. 2. Ed. Rio de Janeiro: Alta Books, 2007