• Nenhum resultado encontrado

CAPÍTULO 4 - OPERADORES E EXPRESSÕES

N/A
N/A
Protected

Academic year: 2021

Share "CAPÍTULO 4 - OPERADORES E EXPRESSÕES"

Copied!
6
0
0

Texto

(1)

4.1 - OPERADORES ARITMÉTICOS

Os operadores aritméticos nos permitem fazer as operações matemáticas básicas, usadas no cálculo de expressões aritméticas. A notação usada para definir os operadores será um pouco diferente da notação utilizada na matemática para evitar problemas futuros de ambigüidades. Para exemplificar este tipo de problema, analise a seguinte expressão:

lxb

Matematicamente, poderíamos supor que está se querendo calcular o produto do conteúdo da variável l com o conteúdo da variável b. Mas computacionalmente, poderíamos interpretar como sendo uma referência ao identificador lxb. Para evitar esta ambigüidade, utilizaremos uma simbologia um pouco diferente para representar os operadores aritméticos.

Operador Significado + adição - subtração / divisão real * multiplicação ** exponenciação

A seguir exemplificamos a representação de algumas expressões matemáticas. Expressão matemática Expressão computacional

2 . a + b 2 * a + b a . x2 a * x **2 b 2 a + a / 2 + b

Agora, se quisermos representar a expressão b 2

a +

, teremos que fazer uso de parênteses, ficando da seguinte forma: a / (2 + b).

Isto é devido ao fato dos operadores aritméticos terem prioridades diferentes nos cálculos de expressões. Note 2 + 3 x 4, pode fornecer dois resultados 2 + 12 = 14 (se considerarmos a prioridade da adição sobre a multiplicação, logo o segundo resultado está errado). Assim, se tivermos uma expressão com vários operadores aritméticos, a primeira parcela a ser resolvida deve ser a do operador de maior prioridade, como mostra a tabela a seguir:

OPERADORES ORDEM DE PRIORIDADE

** primeira parcela a ser resolvida

* e / segunda parcela a ser resolvida

(2)

Isto quer dizer que, numa expressão em que haja exponenciação, divisão e adição, devemos calcular primeiro a parcela da exponenciação, depois a da divisão e finalmente a adição.

b / 2 + p ** 4

R2 Rl R = resultado da parcela

R3 l, 2, 3 = seqüência de cálculo

R representa o resultado produzido por cada operador, os valores de índices (1, 2, 3, ...) indicam as prioridades das operações.

Quando houver um empate de prioridade entre duas ou mais parcelas, a prioridade passa a ser a da parcela mais á esquerda da expressão, cujo operador está em empate de prioridade.

a + b - c

R1

R2

Somente o uso de parênteses pode quebrar esta ordem de prioridade. Se numa mesma expressão existir parênteses aninhados (um dentro do outro), a prioridade será do parênteses mais interno. a / (a + b) - (2 * (b + c)) R2 R1 R4 R3 R5 4.2 - OPERADORES RELACIONAIS

Os operadores relacionais são utilizados para a comparação entre dois objetos do mesmo tipo.

O resultado de uma operação relacional será sempre um valor do tipo lógico (falso ou verdadeiro).

(3)

Operador Significado Exemplo de uso > maior que A > B, 4 > 3 < menor que 2 * A < B ** 2 <> diferente de A + B <> C = igual a A = 0 <= menor ou igual a B * A <= 0 >= maior ou igual a 'a' >= 'h'

Os operadores relacionais são binários, isto é, eles precisam, sempre ter um operando a sua esquerda e outra a sua direita. O valor da expressão relacional depende da avaliação dos valores dos operandos e da aplicação do operador. Os únicos resultados possíveis são os pertencentes ao conjunto lógico ([falso, verdadeiro], [não, sim]).

Para a correta avaliação da expressão relacional devemos, primeiro avaliar o lado esquerdo da expressão, após o que avaliaremos o lado direito e em seguida aplicamos o operador sobre o resultado obtido. Assim, se tivermos a seguinte expressão:

A + B > D - B

a prioridade da expressão será:

A + B > D - B

Rl R2

R3

O resultado R3 representa o valor da terceira parcela da expressão, o qual deverá ser do tipo lógico, enquanto Rl e R2, deverão ser do tipo numérico (devido a aplicação de operadores aritméticos).

Quanto à prioridade dos operadores relacionais, padronizamos que os operadores aritméticos têm maior prioridade, e que não existe prioridade entre os operadores relacionais.

Anteriormente definimos que os operadores relacionais são utilizados para relacionar, sempre, dois objetos do mesmo tipo, assim, não é possível construirmos relações do tipo:

-3 > X <= 2

Pois nela pretendemos relacionar o objeto com os valores -3 e 2, ou seja, estamos tentando relacionar três valores em uma única expressão relacional. Matematicamente isto é possível, pois existe uma semântica definida para esta expressão (queremos um valor de X que seja maior que -3 e que seja menor ou igual a 2). Note que, existe uma operação (implícita) de conjunto entre as duas relações, realizada pelo operador lógico E. Estas expressões que envolvem mais de uma relação são chamadas de expressões lógicas e serão definidas na seção 4.3.

(4)

Quando avaliamos a expressão relacional: A > B

Estamos perguntando: o valor de A é maior que o valor de B?

Assim, se o valor de A for maior que a de B, então o resultado produzido pela expressão é verdadeiro, caso contrário (se o valor de B for maior ou igual ao valor de A) o resultado produzido será falso.

Quando a relação for entre objetos numéricos, o resultado da comparação será feito considerando-se a ordem de grandeza que rege estes objetos:

-1 > -2, 3.0001 > 3, 4 >= 4.

Quando a relação for aplicada sobre objetos do conjunto dos caracteres, a ordem de grandeza será dada pela ordem lexicográfica (ordem alfabética) dos caracteres. Assim,

‘A’ < ‘B’, ‘C’ < ‘D’, ‘E’ < ‘F’, ....

4.3 - OPERADORES LÓGICOS

Os operadores lógicos são utilizados para fazer a conjunção, ou a disjunção, ou a negação de valores lógicos. Como o próprio nome diz, os operadores lógicos devem utilizar como operandos expressões ou variáveis que produzam resultados lógicos, as expressões que se utilizam destes operadores são chamadas de expressões lógicas.

Dentro de um algoritmo os operadores lógicos são largamente empregados nas tomadas de decisão e nos processos de repetições, que envolvam mais de um critério de seleção ou de repetição para ser satisfeito o aspecto lógico da solução do problema.

O resultado produzido por uma expressão lógica será sempre do tipo lógico. Os operadores lógicos são os seguintes:

E - usado na conjunção de proposições OU - usado na disjunção de proposições NÃO - usado na negação de proposições

Uma proposição é qualquer tipo de elemento que possa produzir um resultado lógico, mas no nosso caso, ela poderá ser uma variável lógica, e/ou uma expressão relacional e/ou uma outra expressão lógica.

Os operadores E e OU são operadores binários, isto é, eles necessitam ter operandos a sua esquerda e a sua direita:

(5)

O operador E faz a conjunção entre as proposições A e B, isto é, A e B devem produzir resultados verdadeiros, simultaneamente, para que a expressão A e B seja verdadeira, qualquer combinação entre A e B, fará com que a expressão produza o valor falso.

Assim, poderíamos ter as seguintes combinações de valores entre A e B utilizando o operador E:

possíveis valores de A possíveis valores de B Valores prod. A E B

falso falso falso

falso verdadeiro falso

verdadeiro falso falso

verdadeiro verdadeiro verdadeiro

Já o operador OU faz a disjunção entre as proposições, isto é, ele faz uma escolha alternativa entre as proposições A e B, e esta escolha, será sempre que possível pelo valor verdadeiro. Para que o resultado de uma operação lógica que utilize este operador seja verdadeiro, basta que apenas uma das duas proposições (A ou B) produza o valor verdadeiro.

Para o operador OU teríamos a seguinte tabela:

possíveis valores de A possíveis valores de B Valores prod. A OU B

falso falso falso

falso verdadeiro verdadeiro

verdadeiro falso verdadeiro

verdadeiro verdadeiro verdadeiro

O operador lógico NÃO é um operador unário, isto é, ele necessita de um operando à sua direita:

NÃO A NÃO B

E o mesmo é utilizado na negação da proposição. Se a preposição é verdadeira, o operador produz o resultado falso, e se a preposição é falsa, ele produz resultado verdadeiro.

possíveis valores de A valores produzidos por NÃO A

falso verdadeiro

verdadeiro falso

Agora, nós temos como representar expressões do tipo: y <= x < z

Na seguinte forma:

(6)

Ou seja, para esta expressão produzir o valor verdadeiro, o valor de x deve ser maior ou igual ao valor de y e ao mesmo tempo ter valor menor que o valor de z.

Entre os operadores lógicos existe uma ordem de prioridade de cálculo em uma expressão:

Operadores Ordem de prioridade

NÃO lª.

E 2ª.

OU 3ª.

Esta ordem de prioridade só pode ser quebrada com o uso de parênteses.

Com relação aos outros tipos de operadores, a ordem de prioridade ficará da seguinte forma:

Operadores Ordem de prioridade

NÃO 1ª.

** 2ª.

*, /, E 3ª.

+, -, OU 4ª.

<, >, =, ... 5ª.

Assim, a prioridade de cálculo da expressão:

NÃO ((A > B) OU (A + B < C) E (C < D)) seria:

NÃO ( ( A > B ) OU ( A + B < C ) E ( C < D ) ) R1 R2 R4 R3 R5 R6 R7

Note que, apesar do operador NÃO ter a maior prioridade de cálculo, o mesmo foi aplicado por último devido ao uso de parênteses.

Os operadores relacionais e lógicos serão largamente empregados nos capítulos 6 e posteriores.

Referências

Documentos relacionados

Se você apresentar qualquer tipo de irritação ocular ou qualquer novo problema nos olhos, como vermelhidão dos olhos ou inchaço das pálpebras, entre em contato com seu

O INSTITUTO MANTENEDOR DE ENSINO SUPERIOR DA BAHIA LTDA - IMES, Instituição Educacional constituída como pessoa Jurídica de Direito Privado, com observância do Artigo 44,

Relatou sobre o registro do condomínio e explicou que só não foram transferidas para esse condomínio as partes comuns que ainda estão afetadas.. Ruas, áreas

Possibilitando assim a descrição do comportamento destas empresas, no que diz respeito à forma como inovam e às relações que estabelecem com os diferentes parceiros, sejam

Quase 70% das mulheres entrevistadas a partir dos 40 anos de idade tiveram um pedido médico para realização de mamografia, e esse percentual foi mais alto entre as que tinham plano

Dadas essas circunstâncias, vários estudos a respeito das normas e da contabilização dos arrendamentos vem sendo desenvolvidos no Brasil e no exterior, sob diversos

0 presente trabalho e urn mergulho num espa9o. U m espa9o que foi construido atraves de uma experiencia reflexiva e pratica, nos espa9os de loucura e arte

SOB MEDIDA LOCAL 32000 MIN/COMERCIAL SOB MEDIDA LOCAL 3600 MINUTOS/COMERCIAL SOB MEDIDA LOCAL 36000 MIN RETENCAO 2 SOB MEDIDA LOCAL 36000 MIN/COMERCIAL SOB MEDIDA LOCAL