Operadores nada mais são do que caracteres que nos permitem diversas operações, não só com números. Essas operações podem ser aritméticas, lógicas, de comparação, enfim, a quantidade delas é grande e vou falar sobre os mais importantes e mais usados.

Vamos começar pelos operadores aritméticos, que são os mais usados.

Operador Sua função Exemplo Comentário
+ Soma x = 2+3; Nesse exemplo a variável terá o valor 5
- Subtração x = 15-5 Aqui o x valerá 10
* Multiplicação x = 3*4 x valerá 12
/ Divisão x = 20/2 O valor 10 será inserido em x
% Pegar o resto da divisão x = 7%3 x receberá o valor 1, já que 7 dividido por 3 dá 2 e sobra 1

Ainda sobre operadores aritméticos, vale citar o de dupla soma (++) e dupla subtração (--). Eles são chamados de incremento e decremento, respectivamente, e podem alterar em uma unidade o valor contido na variável. A maneira de utilizá-los é simples. Se eles forem usados antes da variável, ela sofrerá a ação deles antes de ser processada. Se forem usados depois dela, então ela será processada e em seguida sofrerá a ação deles. Resumindo...

Operadores

Operadores

Parece complicado, mas é simples, vejam: imaginemos uma variável x que tenha o valor 5 armazenado nela e com a qual faremos algumas impressões, ok? Agora vejam os exemplos:


Operador Sua função Valor Inicial Valor Final Comentário
x++ Incrementar em uma unidade após o uso da variável, pois o duplo incremento está colocado depois da variável. 5 6 Se estivéssemos mandando o código imprimir esse valor na tela, ele imprimiria o valor 5 e em seguida incrementaria em uma unidade, deixando a variável com o valor 6. 
++x Incrementar em uma unidade antes do uso da variável, pois o duplo incremento foi colocado antes da variável. 6 6 Agora a impressão já exibiria o valor 6, pois o incremento veio antes da variável, ou seja, ela já foi utilizada depois de ser incrementada em uma unidade.
x-- Decrementar em uma unidade após o uso da variável. 5 4 Nossa variável seria exibida com o valor 5, pois decrementamos uma unidade após o seu uso.
--x Decrementar em uma unidade antes do uso da variável. 4 4 Seria exibido o número 4, pois a variável sofreu o decremento antes de ser utilizada.

A regra é simples: se o operador vier antes da variável, então ele atuará antes de usa-la, seja para impressão ou uma operação aritmética. Se o operador vier depois da variável, significa que o sistema primeiro fará uso da variável com o seu valor atual, depois acionará o incremento ou decremento.

Operadores de Comparação:

Vou criar duas variáveis para facilitar os exemplos.

var idadePedro = 15;
var idadeMaria = 20;


Operador Sua função Exemplo Comentário
== Efetuar comparações simples, retornando verdadeiro se os valores comparados forem iguais. idadePedro == idadeMaria; O código vai nos retornar o valor falso, pois as idades não são iguais. Também poderíamos usar uma variável e um valor escrito, como: idadePedro == 15; Nesse caso ele retornaria verdadeiro, já que o número comparado é, de fato, igual ao valor da idade de Pedro.
!= Efetuar comparações, mas ele retornará verdadeiro se os valores comparados forem DIFERENTES. O símbolo de exclamação significa negação, ou seja, se NÃO IGUAL, retorne verdadeiro. idadePedro != idadeMaria Vai retornar verdadeiro, já que as idades são diferentes.
> Maior que. Vai retornar verdadeiro se o valor à esquerda for maior que o da direita. 25 > idadeMaria Retornará verdadeiro, já que a idade de Maria é 20.
< Menor que. É o inverso do exemplo acima. Se o número à esquerda for menor, retornará verdadeiro, se não, retornará falso. idadeMaria < idadePedro Retornará falso, pois a idade de Maria não é menor que a de Pedro.
>= Maior ou igual. Retornará verdadeiro se o valor à esquerda for maior ou igual ao da direita. 15 >= idadePedro Retornará verdadeiro, pois Pedro tem 15 anos.
<= Menor ou igual. Retornará verdadeiro se o valor à esquerda for menor ou igual ao da direita. 20 < idadeMaria Retornará verdadeiro, pois Maria tem exatamente 20 anos.

Continuando com os operadores de comparação, temos:

Operador Sua função Exemplo Comentário
=== Retornar verdadeiro caso os valores comparados sejam iguais E DE MESMO TIPO. idadeMaria === 20 Retornará verdadeiro, pois a idade de maria é um número e esse número é o 20.
=== Retornar verdadeiro caso os valores comparados sejam iguais E DE MESMO TIPO. idadeMaria === “20” Retornará falso, pois a idade de maria é de 20 anos, mas eu estou comparando uma variável numérica com a string 20. Percebam que ela foi colocada entre aspas.
!== Retornará verdadeiro se os operandos NÃO forem iguais, em valor e tipo. idadeMaria === “20” Retornará verdadeiro, pois embora o valor seja igual, o tipo não é, já que um é numérico e o outro é String
!== Retornará verdadeiro se os operandos NÃO forem iguais, em valor e tipo. idadeMaria === 20 Retornará falso, pois os valores são iguais tanto em valor quanto em tipo, mas a exclamação está negando a afirmação.

Alguns operadores são bem pouco utilizados (quase nunca, na verdade), então não se preocupe se as coisas parecem um pouco confusas por enquanto. Tudo ficará mais simples e claro quando começarmos a utilizar essa teoria em alguma linguagem de programação.

Operadores Lógicos

Esses operadores são utilizados em variáveis isoladas ou expressões e sempre retornam um valor booleano, ou seja, verdadeiro ou falso. Eles são de extrema importância e, se você nunca teve contato com eles, talvez pareça mais complicado do que realmente é. Sendo assim, para facilitar a compreensão, vou criar um grupo de variáveis;

var fruta = “laranja”;
var laranja = “redonda”;
var x = 8;

Percebam que existe uma variável chamada "fruta" com o valor "laranja" armazenado nela e outra variável chamada "laranja", com o valor "redonda" armazenado nela. A coincidência é proposital.


Operador Sua função Exemplo Comentário
&& E lógico. Esse operador irá retornar verdadeiro se, e somente se, ambas as expressões envolvidas forem verdadeiras. fruta == “laranja” && x == 8; Retornará verdadeiro, pois a variável fruta tem o valor “laranja” e x vale 8.
&& E lógico. Esse operador irá retornar verdadeiro se, e somente se, ambas as expressões envolvidas forem verdadeiras. laranja == “quadrada” && x == 8; Retornará falso, pois embora 'x' valha 8, o valor de laranja não é “quadrada”.
|| Ou lógico. Retornará verdadeiro se PELO MENOS UMA das expressões for verdadeira. fruta == “laranja” || x == 54; Retornará verdadeiro, pois embora o valor de x esteja errado, o valor de laranja está correto.
|| Ou lógico. Retornará verdadeiro se PELO MENOS UMA das expressões for verdadeira. fruta == “laranja” || laranja == “redonda”; Também retornará verdadeiro, pois ambas as expressões envolvidas são verdadeiras.
|| Ou lógico. Retornará verdadeiro se PELO MENOS UMA das expressões for verdadeira. fruta == “banana” || x == 9; Retornará falso, pois o valor de fruta não é “banana” e nem x vale 9.
! Não lógico. Ele provoca uma inversão na lógica da expressão, ou seja, retorna verdadeiro se a expressão for falsa e retorna falso se ela for verdadeira. !fruta == “laranja”; Retornará falso, pois embora o valor de fruta seja mesmo “laranja”, a lógica foi invertida pelo operador "!"
|| Não lógico. Ele provoca uma inversão na lógica da expressão, ou seja, retorna verdadeiro se a expressão for falsa e retorna falso se ela for verdadeira. !x == 4; Retornará verdadeiro, pois embora o valor de x esteja errado, o operador ! está invertendo o retorno.

E se você está tendo seu contato com esses operadores pela primeira vez, vale destacar que o operador “Ou lógico” não são dois sinais de exclamação, como pode parecer. Esse sinal é chamado pipe e, nos teclados ABNT ele fica localizado à esquerda da tecla Z. O operador “Não lógico”, sim, é um sinal de exclamação. Bem, para encerrar os operadores que reservei para comentar, só falta falar de mais dois. Aliás, eles não são novos, pois são de adição e subtração, mas agora seu papel é diferente, pois eles atuarão sobre o valor atual da variável. Eles serão representados por += e -=. Vou demonstrá-los com exemplos. As variáveis que vou usar para isso são: var a = 20; var b = 4;


Operador Sua função Exemplo Comentário
+= Acrescentar um determinado valor sobre o valor já existente na variável. a += 5; O resultado dessa operação será com a variável valendo 25, pois ela já possuía o valor 20 e recebeu mais 5 de incremento.
+= Acrescentar um determinado valor sobre o valor já existente na variável. a += b; Agora o resultado será 24, que é composto dos 20 que a variável possuía, mais 4 unidades da variável b.
-= Decrementar um determinado valor sobre o valor já existente na variável. a -= 10; Aqui nossa variável terá o valor 10, pois ela possuía o valor 20 e foi decrementado em 10 unidades.
-= Decrementar um determinado valor sobre o valor já existente na variável. a -= b; A variável terá o valor 16, pois ela possuía o valor 20 e foi decrementado em 4 unidades.

É muito simples. E o interessante é que os operadores de incremento e decremento sobre o próprio valor da variável podem ser usados com strings. Vejam esses exemplos:

var a = “Contém ”;
var b = “Bits”;
a += b;

O valor da variável a agora é “Contém Bits”.

Esse eu vou demonstrar na prática, com o seguinte código:

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document </title>
<script type="text/javascript">
function imprimeValor() {
var a = "Contém ";
var b = "Bits";
a += b;
alert(a);
}
</script>
</head>
<body onload="imprimeValor();">
</body>
</html>

Vejam a saída no navegador:

Operadores JavaScript

Só como curiosidade, o processo de “fundir” duas strings dessa forma chama-se concatenação. Bem, com isso encerramos a parte dos principais operadores em JavaScript! E para essa pequena demonstração eu usei uma função JavaScript, que é o assunto que vou comentar no artigo seguinte.


HARDWARE

Entendendo o seu computador

O que há dentro do meu computador?

Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.

  • Gabinetes

  • Placas-Mãe

  • Processadores

  • Memória

  • Fontes

  • Drives Ópticos

  • Discos Rígidos

  • SSD

  • Placas de Som

  • Placas de Vídeo

Você Sabia?

A primeira versão do clássico Mega Man, para Nintendo 8 bits, tem seu recorde de pontos estabelecido em 03/11/2006, por David Archey, que cravou 2.396.700 pontos, terminando o jogo.


O primeiro jogo a fazer uso de uma Inteligência Artificial foi o Mouse in the Maze, criado em 1955, na União Soviética. Você pode saber mais sobre ele clicando aqui.


O filme Mortal Kombat, inspirado no jogo de mesmo nome, faturou 23 milhões de dólares apenas no fim de semana de estreia nos EUA. Ainda sobre este título de sucesso, outra cifra que impressiona é o faturamento ao longo do primeiro ano: 1 bilhão de dólares no mundo todo.


As primeiras máquinas de fliperama do mundo a utilizarem moedas, chamadas de Galaxy Game, custavam mais de 20 mil dólares para serem produzidas. Saiba mais sobre elas aqui.


O primeiro computador a conseguir rodar o jogo Spacewar era o PDP-1, que custava 120 mil dólares e pertencia ao Massachusetts Institute of Technology. O jogo demorou 200 horas para ser desenvolvido, em 1962, e seu criador foi um cientista da computação chamado Steve Russel.


O jogo Final Fantasy X para o Sony Playstation 2 vendeu, apenas no dia do seu lançamento, 1.455.732 cópias, estabelecendo um recorde de vendagem para as primeiras 24 horas de um game. Méritos da SquareSoft, que desenvolveu um excelente produto!


Criar um jogo é muito mais complexo do que parece. São milhares, às vezes, milhões de linhas de código. Isso não é exagero! Apenas o jogo Ultima Online possui 6.006.313 linhas de programação, totalizando 25.103.295 palavras


Desde o seu lançamento, em 1985, o fantástico jogo Tetris vende pelo menos 70 milhões de unidades por ano em todo o mundo! Os dados são oficiais e fornecidos pela THQ, uma das distribuidoras do título.


O personagem Mario só possui bigode porque quando ele foi criado, em 1981, a resolução de tela dos equipamentos disponíveis não permitia que fosse desenhada uma boca, então os desenvolvedores fizeram o grande bigode para contornar essa limitação tecnológica.


Street Fighter 2, lançado para o Super Nintendo no início dos anos 90, foi o principal responsável pelo aumento nas vendas deste console. Graças ao sucesso do título nos Arcades e à perfeita adaptação ao console, muitos consumidores adquiriram o SNES para jogarem o título em casa. Saiba mais.


Ao completar o nível 99 do jogo Duck Hunt, para Nintendo, o jogo retorna ao primeiro nível, mas um bug impede que se acerte os patos neste recomeço. Este é um exemplo do que é chamado no mundo dos games de "Kill Screen".


O épico jogo River Raid, do Atari, foi desenhado e boa parte de sua programação foi feita por uma mulher: Carol Shaw, uma excelente programadora e funcionária da Activision em 1982. Saiba mais sobre a história deste incrível jogo, aqui.


A partida mais longa do clássico Space Invaders durou incríveis 38 horas e 32 minutos e esta façanha foi conseguida por um jogador de apenas 12 anos! O jogo, claro, podia ser pausado para alimentação e descanso, mas ainda assim o recorde, estabelecido no dia 02/09/1980, ainda não foi quebrado. Saiba mais.


A empresa Take-Two pagou à Infogrames mais de 22 milhões de dólares pelos direitos de Civilization, em novembro de 1994. Ainda sobre este título, Sid Meier, um dos seus fundadores, é o profissional da área dos games mais premiado em todo o mundo.