Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouOlívia Sabrosa Valente Alterado mais de 8 anos atrás
1
PARADIGMAS DE LINGUAGENS EXPRESSÕES E INSTRUÇÕES DE ATRIBUIÇÃO
Prof. Thiago Pereira Rique
2
Agenda Introdução Expressões aritméticas Conversões de tipo
Expressões relacionais e booleanas Instruções de atribuição
3
INTRODUÇÃO Expressões Instruções de atribuição Especificar computações
Avaliação de expressões Instruções de atribuição Mudar o valor de uma variável.
4
EXPRESSÕES ARITMÉTICAS
Apresentam convenções herdadas da Matemática. Consistem em: Operadores Operandos Parênteses Chamadas a função Unários Binários Operador ternário (C, C++, Java)
5
EXPRESSÕES ARITMÉTICAS
Ordem de avaliação de operadores Precedência: baseia-se nas regras da Matemática. Exponenciação Multiplicação e divisão Adição e subtração Associatividade: determina que operador será avaliado primeiro (operadores com mesma precedência). Associatividade à esquerda Associatividade à direita
6
EXPRESSÕES ARITMÉTICAS
Ordem de avaliação de operadores Exemplo de expressão Java:
7
EXPRESSÕES ARITMÉTICAS
Ordem de avaliação de operadores Parênteses: alterar as regras de precedência e de associatividade. Ex: (A + B)*C Expressões condicionais:às vezes, instruções if-then-else são usadas para atribuição de expressão condicional. Ex: if (cont == 0) then media = 0; else media = soma/cont;
8
EXPRESSÕES ARITMÉTICAS
Ordem de avaliação de operadores Expressões condicionais: C, C++ e Java: expressão_1 ? expressão_2 : expressão_3 Ex: media = (cont == 0) ? 0 : soma/cont; ? Operador ternário.
9
CONVERSÕES DE TIPO As conversões de tipo podem ser de estreitamento ou de alargamento. Estreitamento: double para float em C. Alargamento: int para float em C.
10
CONVERSÕES DE TIPO Coerção: Conversão implícita feita pelo compilador.
Ex: int a; float b, c; ... b = a * c;
11
CONVERSÕES DE TIPO Conversão explícita: realizada explicitamente pelo programador (cast). Ex: int a, b, c; float d; ... d = b / c; a = (int) d;
12
EXPRESSÕES RELACIONAIS E BOOLEANAS
Operador relacional: compara os valores de seus dois operandos. Expressão relacional: dois operandos e um operador relacional. O valor da expressão relacional é booleano (se oferecido pela linguagem).
13
EXPRESSÕES RELACIONAIS E BOOLEANAS
Sintaxe dos operadores relacionais em algumas linguagens: Operação Ada Java FORTRAN 90 Igual = == .EQ. ou == Diferente /= != .NE. ou <> Maior que > .GT. ou > Menor que < .LT. ou < Maior que ou igual >= .GE. ou >= Menor que ou igual <= .LE. ou <=
14
EXPRESSÕES RELACIONAIS E BOOLEANAS
Os operadores relacionais sempre têm precedência menor do que os ariméticos. a + 1 > 2 * b
15
EXPRESSÕES RELACIONAIS E BOOLEANAS
Expressões booleanas: Consistem em variáveis, constantes, expressões relacionais e operadores booleanos (AND, OR e NOT, por exemplo). Produzem valores booleanos.
16
EXPRESSÕES RELACIONAIS E BOOLEANAS
Expressões booleanas: Exemplo Ada: Operadores booleanos da Ada (exceto not) possuem mesmo nível de precedência, porém não são associativos. A > B and A < C or K = 0 (ilegal na Ada) (A > B and A < C) or K = 0 A > B and (A < C or k = 0)
17
EXPRESSÕES RELACIONAIS E BOOLEANAS
Expressões booleanas: O C não tem nenhum tipo booleano. Valores numéricos e constantes são usados: zero (falso) e diferente de zero (verdadeiro). Resultado de avaliação: 0 (falso) e 1 (verdadeiro). A expressão a > b > c é válida em C.
18
INSTRUÇÕES DE ATRIBUIÇÃO
Permitem modificar dinamicamente as vinculações de valores a variáveis. Atribuições simples: <variável_alvo><operador_de_atribuição><expressão> FORTRAN, BASIC, PL/I, C, C++ e Java usam = como símbolo de atribuição, o que pode gerar confusão em alguns casos: A = B = C (PL/I) A instrução acima define A para o valor booleano da expressão relacional B = C.
19
INSTRUÇÕES DE ATRIBUIÇÃO
Operadores de atribuição compostos: método abreviado de especificar uma atribuição. Ex: soma += valor; equivale a soma = soma + valor;
20
INSTRUÇÕES DE ATRIBUIÇÃO
Operadores de atribuição unários: combinam operações de incremento e decremento que podem ser prefixadas ou pós-fixadas. Ex: soma = ++cont; equivale a cont = cont + 1; soma = cont; soma = cont++; equivale a soma = cont; cont = cont + 1;
21
REFERÊNCIA SEBESTA, Robert W. Conceitos de Linguagens de Programação. 5a. Edição. São Paulo: Bookman, 2003.
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.