Euforia - Operadores

O Euphoria fornece um rico conjunto de operadores para manipular variáveis. Podemos dividir todos os operadores Euphoria nos seguintes grupos -

  • Operadores aritméticos
  • Operadores Relacionais
  • Operadores lógicos
  • Operadores de atribuição
  • Operadores diversos

Os operadores aritméticos

Operadores aritméticos são usados ​​em expressões matemáticas da mesma forma que são usados ​​em álgebra. A tabela a seguir lista os operadores aritméticos. Assuma que a variável inteira A contém 10 e a variável B contém 20, então -

Mostrar exemplos

Operador Descrição Exemplo
+ Adição - adiciona valores em ambos os lados do operador A + B dará 30
- Subtração - subtrai o operando direito do operando esquerdo A - B dará -10
* Multiplicação - Multiplica valores em ambos os lados do operador A * B dará 200
/ Divisão - Divide operando esquerdo pelo operando direito B / A dará 2
+ Mais unário - Não tem impacto no valor da variável. + B dá 20
- Menos unário - Isso cria um valor negativo da variável fornecida. -B dá -20

Os operadores relacionais

Existem os seguintes operadores relacionais suportados pela linguagem Euphoria. Suponha que a variável A tenha 10 e a variável B tenha 20, então -

Mostrar exemplos

Operador Descrição Exemplo
= Verifica se os valores de dois operandos são iguais ou não, se sim a condição torna-se verdadeira. (A = B) não é verdade.
! = Verifica se o valor de dois operandos é igual ou não; se os valores não são iguais, a condição se torna verdadeira. (A! = B) é verdade.
> Verifica se o valor do operando esquerdo é maior que o valor do operando direito, se sim, a condição torna-se verdadeira. (A> B) não é verdade.
< Verifica se o valor do operando esquerdo é menor que o valor do operando direito; se sim, a condição torna-se verdadeira. (A <B) é verdade.
> = Verifica se o valor do operando esquerdo é maior ou igual ao valor do operando direito, se sim a condição torna-se verdadeira. (A> = B) não é verdade.
<= Verifica se o valor do operando esquerdo é menor ou igual ao valor do operando direito; em caso afirmativo, a condição torna-se verdadeira. (A <= B) é verdadeiro.

Os operadores lógicos

A tabela a seguir lista os operadores lógicos. Assuma que as variáveis ​​booleanas A possuem 1 e a variável B contém 0, então -

Mostrar exemplos

Operador Descrição Exemplo
e Operador lógico chamado AND. Se ambos os operandos forem diferentes de zero, a condição se torna verdadeira. (A e B) é falso.
ou Operador lógico ou chamado. Se qualquer um dos dois operandos for diferente de zero, a condição se torna verdadeira. (A ou B) é verdade.
xor Operador lógico XOR chamado. A condição é verdadeira se um deles for verdadeiro, se ambos os operandos forem verdadeiros ou falsos, a condição torna-se falsa. (A xor B) é verdade.
não Operador lógico chamado NOT que nega o resultado. Usando este operador, verdadeiro se torna falso e falso se torna verdadeiro não (B) é verdade.

Você também pode aplicar esses operadores a números diferentes de 1 ou 0. A convenção é: zero significa falso e diferente de zero significa verdadeiro .

Os Operadores de Atribuição

Existem os seguintes operadores de atribuição suportados pela linguagem Euphoria -

Mostrar exemplos

Operador Descrição Exemplo
= Operador de atribuição simples, atribui valores de operandos do lado direito para operando do lado esquerdo C = A + B irá atribuir o valor de A + B em C
+ = Adicionar operador de atribuição AND, adiciona o operando direito ao operando esquerdo e atribui o resultado ao operando esquerdo C + = A é equivalente a C = C + A
- = Subtrai o operador de atribuição E, subtrai o operando direito do operando esquerdo e atribui o resultado ao operando esquerdo C - = A é equivalente a C = C - A
* = Operador de atribuição Multiply AND, multiplica o operando direito pelo operando esquerdo e atribui o resultado ao operando esquerdo C * = A é equivalente a C = C * A
/ = Operador de atribuição e divisão, divide o operando esquerdo com o operando direito e atribui o resultado ao operando esquerdo C / = A é equivalente a C = C / A
& = Operador de concatenação C & = {2} é igual a C = {C} & {2}

Note - O símbolo de igual '=' usado em uma instrução de atribuição não é um operador, é apenas uma parte da sintaxe.

Operadores diversos

Existem alguns outros operadores suportados pela Euphoria Language.

O operador

Quaisquer dois objetos podem ser concatenados usando o operador “&”. O resultado é uma sequência com comprimento igual à soma dos comprimentos dos objetos concatenados.

Por exemplo -

#!/home/euphoria-4.0b2/bin/eui

sequence a, b, c
a = {1, 2, 3}
b = {4}
c = {1, 2, 3} & {4}

printf(1, "Value of c[1] %d\n", c[1] )
printf(1, "Value of c[2] %d\n", c[2] )
printf(1, "Value of c[3] %d\n", c[3] )
printf(1, "Value of c[4] %d\n", c[4] )

Isso produz o seguinte resultado -

Value of c[1] 1
Value of c[2] 2
Value of c[3] 3
Value of c[4] 4

Precedência de operadores de euforia

A precedência do operador determina o agrupamento de termos em uma expressão. Isso afeta como uma expressão é avaliada. Certos operadores têm precedência mais alta do que outros; por exemplo, o operador de multiplicação tem precedência mais alta do que o operador de adição.

Por exemplo, x = 7 + 3 * 2

Aqui, x é atribuído a 13, não 20, porque o operador * tem precedência maior do que +.

Portanto, ele primeiro começa com 3 * 2 e, em seguida, adiciona 7.

Aqui, os operadores com a precedência mais alta aparecem na parte superior da tabela, aqueles com a mais baixa aparecem na parte inferior. Em uma expressão, os operadores de precedência mais alta são avaliados primeiro.

Categoria Operador Associatividade
Postfix chamadas de função / tipo  
Unário + -! não Direita para esquerda
Multiplicativo * / Da esquerda para direita
Aditivo + - Da esquerda para direita
Concatenação E Da esquerda para direita
Relacional >> = <<= Da esquerda para direita
Igualdade =! = Da esquerda para direita
E lógico e Da esquerda para direita
OR lógico ou Da esquerda para direita
XOR lógico xor Da esquerda para direita
Vírgula , Da esquerda para direita