NUNCA MAIS PASSE RAIVA POR NÃO CONSEGUIR RESOLVER UM PROBLEMA COM O EXCEL - GARANTIDO!
UNIVERSIDADE DO VBA - Domine o VBA no Excel Criando Sistemas Completos - Passo a Passo - CLIQUE AQUI
Objetivos
Abordar os conceitos sobre os Operadores demonstrando o seu uso com exemplos para um melhor aprendizado.
Pré-requisitos
É necessário que o leitor tenha acompanhado o artigo anterior, pois os artigos obedecem a uma seqüência.
Nota: Este artigo faz parte do curso de “Linguagem C – Básico’”.
Os operadores indicam ao compilador a necessidade de se fazer manipulações matemáticas ou lógicas.
Os operadores aritméticos são usados para calcular expressões matemáticas. Sendo classificados em duas categorias: os binários ou unários. Os operadores unários atuam na inversão de valores. Veja a tabela abaixo.
Operador binário | Descrição |
= |
Atribuição |
+ |
Soma |
- |
Subtração |
/ |
Divisão |
% |
Modulo (obtém o resto da divisão) |
Operador unário | Ação |
- |
Sinal negativo |
+ |
Sinal positivo |
Tabela – Operadores aritméticos
O operador de atribuição (=) já foi estudado no artigo “Linguagem C - Princípios básicos” para explicar como inicializar uma variável.
O exemplo abaixo imprime os resultado na tela das operações de soma, subtração, multiplicação, divisão e o modulo entre dois números dados. Ilustrando assim o uso dos operadores aritméticos.
Saída do programa:
69+24=93
69-24=45
69x24=1656.000
69/24=2.875
69 mod 24=21.000
Operadores de incremento e decremento
O operador de incremento (++) soma 1 ao seu operando enquanto que o de decremento (--) subtrai um. Eles podem ser pré-fixados ou pós-fixados conforme mostra a tabela abaixo:
Operador | Instrução | Pós-fixado | Pré-fixado |
++ |
var = var+1; |
var = var++; ou var++; |
var = ++var; ou ++var; |
-- |
var = var-1; |
var = var--; ou var--; |
var= --var; ou --var; |
Tabela – Operadores de incremento e decremento
No caso das instruções mostradas acima não existe diferença, podemos aplicar tanto o pós-fixado quanto o pré-fixado. Mas quando esses operadores são usados em outras expressões necessita-se de cuidado, pois o uso incorreto pode ocasionar resultados inesperados. A diferença entre eles é que o pré-fixado incrementa a variável para depois executar a instrução e a pós-fixado executa a instrução para depois fazer o incremento da variável. Veja o exemplo abaixo:
Saída do programa:
var=6
var2=6
O programa acima incrementa a variável var e coloca o valor na var2 que no nosso caso será 6. Já o código abaixo coloca o valor da variável var na var2 que é 5 para depois incrementar a variável var.
Saída do programa:
var=6
var2=5
São combinações de operadores que simplificam as instruções e que geralmente são usados por programadores experientes. Dessa forma uma instrução escrita da forma:
Var= var operador + expressão
Pode ser reduzida obedecendo à sintaxe:
Var operador= expressão
Veja alguns exemplos utilizando duas variáveis (var e expr) que devem ser declaradas em seus programas.
Instrução normal | Instrução reduzida |
var = var + expr; | var+=expr; |
Var=var – expr; | Var-=expr; |
Var=var/expr; | Var/=expr; |
Var=var*expr; | Var*=expr; |
Esses operadores são responsáveis pelas comparações de expressões nos programas. A lista completa se encontra abaixo:
Operador | Descrição |
> |
Maior |
>= |
Maior igual |
< |
Menor |
<= |
Menor igual |
== |
Igualdade |
!= |
Diferente |
Tabela – Operadores relacionais
É importante distinguir (=) de (==). O primeiro atribui um valor e o segundo comprara expressões.
O próximo exemplo demonstra a analise de algumas expressões retornando 0 para falso e 1 para verdadeiro. Esses dados são todos impressos na tela (veja a saída do programa).
Saída do programa:
Valor 0 indica expressão falsa e 1 expressao verdadeira.
98==10 é 0
98!=10 é 1
98<=10 é 0
98>=10 é 1
98<10 é 0
98 >10 é 1
Os operados lógicos servem para interligar mais de uma operação relacional. E assim como os relacionais retornam zero para falso e um para verdadeiro.
Operador |
Descrição |
&& |
AND |
|| |
OR |
! |
NOT (operador de negação) |
Tabela – Operadores lógicos
Exemplo de utilização de operadores lógicos:
Saída do programa:
O número 76 esta entre 65 e 80
Nesse programa o operador lógico (&&) faz a ligação das operações relacionais (x>65) e (x<=80), verificando se o número dado (x) está entre essa faixa. A instrução if será estudada no próximo artigo.
Como já sabemos a linguagem C é considerada de baixo nível, pois permite a manipulação de bits. Isto é feito através dos operadores bit a bit listados a seguir.
Operador |
Descrição |
& |
AND |
| |
OR |
^ |
XOR (OR exclusivo) |
<< |
Deslocamento para esquerda |
>> |
Deslocamento para direita |
Tabela – operadores bit a bit
Embora a descrição na tabela seja parecida com as dos operadores Lógicos eles não devem ser confundidos. Os operadores bit a bit são muito usados em rotinas de modens e de impressoras.
Tem como função forçar para que uma expressão seja de um determinado tipo. Sua sintaxe é:
(tipo de dado) expressão
O tipo de dado pode ser qualquer um dos definidos pelo padrão ANSI. Um exemplo da utilização deste operador pode ser visto no programa mostrado neste artigo para exemplificar o uso dos operadores aritméticos. Nesse programa o operador cast é usado para forçar a divisão de dois números inteiros ser do tipo float.
Este operador é usado em tempo de execução e tem como objetivo retornar o tamanho em bytes da variável.
Saída do programa:
A variavel x do tipo float tem o tamanho=4 bytes
A variavel y do tipo double tem o tamanho=8 bytes
A variavel z do tipo char tem o tamanho=1 bytes
Precedência é a prioridade com que os operadores são executados pelo compilador. Caso os operadores tenham o mesmo nível de precedência eles são analisados da esquerda para direita.
Prioridades dos operadores aritméticos | |
Alta | Incremento(++), decremento (--) |
Menos unitário (-) | |
Multiplicação(*), divisão(/), modulo(%) | |
Baixa | Soma(+), subtração(-) |
A precedência dos operadores pode ser mudada utilizando parentes. Para entender melhor veja o exemplo abaixo, onde as duas expressões são iguais, porém o uso de um parêntese fez mudar a precedência obtendo assim resultados diferentes.
4/2*5+1=11
4/2*(5+1)=12
Conclui-se que os operadores são indispensáveis em nossos programas e que a linguagem C possui um número muito grande de operadores. Alguns inclusive serão mostrados mais adiante, por exemplo, os operadores de ponteiro, devido serem muito complexos.
Contato: Telefone: (51) 3717-3796 | E-mail: webmaster@juliobattisti.com.br | Whatsapp: (51) 99627-3434
Júlio Battisti Livros e Cursos Ltda | CNPJ: 08.916.484/0001-25 | Rua Vereador Ivo Cláudio Weigel, 537 - Universitário, Santa Cruz do Sul/RS, CEP: 96816-208
Todos os direitos reservados, Júlio Battisti 2001-2024 ®
LIVRO: MACROS E PROGRAMAÇÃO VBA NO EXCEL 2016 - CURSO COMPLETO E PRÁTICO
DOMINE A PROGRAMAÇÃO VBA NO EXCEL - 878 PÁGINAS - CLIQUE AQUI