Processamento da Informação Estruturas de seleção simples e composta Prof. Jesús P. Mena-Chalco CMCC/UFABC Q1/2017 1
Expressões Booleanas 2
Fonte: http://pt.wikipedia.org/wiki/george_boole
Expressões Booleanas Uma expressão booleana é uma expressão que é ou Verdadeira ou Falsa. Os seguintes exemplos usam o operador ==, utilizado para comparar dois operandos e produzir true se eles forem iguais ou false em caso contrário. 5 == 5 5 == 6 true == true true false true 4
Expressões Booleanas Operador de atribuição w = 40; p = 60; Operador relacional w == 5*8 true w == 5*8+1 false w+p == 100 true w+p = 100 Erro comum 5
Expressões Booleanas true e false são valores especiais que pertencem ao tipo de dado boolean (eles não são Strings). 6
Expressões Booleanas O operador == é um dos operadores relacionais, os outros são: x!= y // x não é igual a y x > y // x é maior que y x < y // x é menor que y x >= y // x é maior ou igual a y x <= y // x é menor ou iqual a y Um erro comum é usar = no lugar de ==. Não existem os operadores =< ou =>. 7
Estrutura de seleção simples 8
Execução condicional Para escrever programas úteis, quase sempre precisamos da possibilidade de verificar condições e mudar o comportamento do programa. Instruções/estruturas condicionais nos dão essa habilidade. A forma mais simples é o if: Condição if (x>0) { Instrucao1; Instrucao2;... } Se a condição for verdade, então as instruções no bloco de instruções são executadas. 9
Execução condicional 10
Execução condicional Uri--online? 11
Execução condicional 12
Execução condicional 13
Execução condicional A segunda forma da instrução if é a execução alternativa, na qual existem duas possibilidades e a condição determina qual delas será executada. Condição if (x > 0){... } else{... Se a condição for verdadeira, será executado o primeiro conjunto de instruções Se a condição for falsa, será executado o segundo conjunto de instruções } 14
Seleção simples Seleção composta 15
Maior valor entre 2 números 16
Maior valor entre 2 números Os três métodos realizam a mesma operação 17
Maior valor entre 3 números Como usar o método anterior para obter o maior valor entre 3 números? 18
Maior valor entre 3 números 19
Maior valor entre 4 números 20
Maior valor entre 4 números Crie um método que calcule o maior valor dados 4 números inteiros. Apenas considere uma chamada ao método. Assinatura: 21
Maior valor entre 4 números 22
Operadores lógicos 26
Operadores lógicos Existem 3 operadores lógicos: && (and) (or)! (not). A semântica destes operadores é similar ao seu significado em Inglês/Português. Por exemplo a expressão x>0 && x<10 é verdadeira somente se x é maior a zero e menor do que dez. Erro comum: 0 < x < 10 27
Operadores lógicos n%2==0 n%3==0 A expressão é verdadeira se uma das condições for verdadeira, isto é, se n for divisível por 2 ou 3. 28
Operadores lógicos Finalmente, o operador not nega uma expressão booleana, assim!(x > y) é verdadeira se x>y for falso isto é, se x é menor ou igual a y. 29
static void nomefuncao(int var) Função/ Método return... return... return... (c) Super Mario Bros.
static int nomefuncao(int var) Função/ Método return... return... return... (c) Super Mario Bros.
static int nomefuncao(int var) Função/ Método return... return... return... (c) Super Mario Bros.
static int nomefuncao(int var1, int var2) Função/ Método return... return... return... (c) Super Mario Bros.
Qual seria o resultado de execução?
Qual seria o resultado de execução?
Qual seria o resultado de execução?
Qual seria o resultado de execução?
Operador Módulo (resto da divisão) 44
Operador módulo O operador módulo trabalha com inteiros e produz o resto quando o primeiro operando é dividido pelo segundo. Em Java, o operador módulo é um sinal de porcentagem (%). A sintaxe é a mesma que para os outros operadores. d = 7 / 3; r = 7 % 3; d = 2 r = 1 7 dividido por 3 é 2, com 1 sobrando (resto) 45
Operador módulo 46
Operador módulo 47
Operador módulo O operador módulo acaba sendo muito útil. Por exemplo, você pode verificar se um número é divisível por outro, se x%y é zero, então x é divisível por y. 24 % 1 24 % 2 24 % 3 24 % 4 24 % 5 24 % 6 24 % 7 24 % 8 24 % 9 0 0 0 0 4 0 3 0 6 48
Operador módulo Este operador pode ser utilizado para extrair o(s) digito(s) mais à direita de um número. Por exemplo: 12345 / 10 12345%10 1234 5 Mantém o digito mais à direita 12345 / 100 12345%100 123 45 Mantém os 2 dígitos mais à direita 49
Atividade em aula 50
Questão 1 A função f1 identifica o menor valor entre quatro números interios dados como entrada. 51
Questão 2 (a) 52
Questão 2 (b) 53
Questão 2 (c) 54
Questão 2 (d) 55
Questão 2 (e) 56
Desafio Fatorial de um número n? 57
[desafio] Crie um método que calcule a somatória de todos os algarismos de um número dado como entrada. O número deverá ter obrigatoriamente 3 algarismos. Exemplos: número = 123 6 número = 111 5 número = 980 17 Assinatura: 58