Variáveis numéricas:

Basicamente existem apenas dois tipos de variáveis: valores e letras. Um valor numérico, que é geralmente expresso por um conjunto de caracteres (letras), é uma expressão de quantidade. Por exemplo: 237 representa a quantidade de duzentas e trinta e sete coisas. Um bocado de coisas.

A representação desta quantidade pode ser "237". Usamos aqui três letras: "2", "3" e "7" para informar a quantidade 237. Isto pode parecer um tanto primário mas a não compreensão deste pequeno detalhe pode significar horas e mais horas debugando um programa que teima em não funcionar direito.

O usuário (ou jogador) se comunica com o programa (via teclado) unicamente por intermédio de letras. Para informar um valor, o usuário digita digamos 237. Tecla "2", tecla "3" e tecla "7". O programa recebe a informação "237" e, se é um valor, precisa converter "237" em 237.

Note que usamos as aspas para indicar que "237" é uma palavra e não o valor em sí. No máximo podemos dizer que "237" é a representação do valor 237 na base decimal. Na base hexadecimal, o valor 237 será representado (escrito) por "ED"; na base binária, o mesmo valor 237 será representado por "11101101". O valor é o mesmo, mas a forma como o representamos pode variar de acordo com nossos interesses.

As variáveis numéricas, em nossos programas, representam valores. Elas possuem nomes e características especiais. Por exemplo: uma variável chamada Medida poderia conter valores que representam a medida de alguma coisa. A distância entre uma cidade e outra, por exemplo.

Se dissermos que Medida:= 10, então estamos informando ao programa que o valor contido em Medida será igual a 10 unidades. Medida, portanto, é uma variável numérica que pode ser usada pelo nosso programa. Como? Veja um exemplo:

Medida:= Medida + 5;

Agora fizemos uma operação aritmética, dizendo ao programa que, ao valor atual de Medida, queremos adicionar mais cinco unidades. Medida então passará a conter o valor 15.

Até aqui definimos algumas variáveis como sendo do tipo integer. No Delphi existem diversos tipos à nossa disposição. Os principais são:

Shortint (inteiros pequenos) - As variáveis shortint não tem a parte fracionária e contém valores inteiros pequenos (entre -128 e 127). Uma variável shortint requer apenas um byte de memória.

Smallint (inteiros) - As variáveis smallint não tem a parte fracionária e contém valores inteiros relativamente pequenos (entre -32.768 e 32.767). Uma variável smallinteger requer dois bytes de memória.

Integer ou Longint (inteiros longos) - As variáveis integer não tem a parte fracionária e contém valores inteiros grandes (entre -2.147.483.648 e 2.147.483.647). Uma variável longint requer quatro bytes de memória.

Byte - As variáveis byte não tem a parte fracionária, nem são sinalizadas. Contém valores inteiros entre 0 e 255. Uma variável byte requer um byte de memória.

Word - As variáveis word não tem a parte fracionária, nem são sinalizadas. Contém valores inteiros entre 0 e 65.535. Uma variável word requer dois bytes de memória.

Single - As variáveis single podem ter a parte fracionária com até 8 dígitos significativos. Uma variável single requer quatro bytes de memória.

Real - As variáveis real podem ter a parte fracionária com até 12 dígitos significativos. Uma variável real requer seis bytes de memória.

Double - As variáveis double podem ter a parte fracionária com até 16 dígitos significativos. Uma variável double requer oito bytes de memória.

Extended - As variáveis extended podem ter a parte fracionária com até 20 dígitos significativos. Uma variável extended requer dez bytes de memória.

Nosso primeiro pensamento pode ser no sentido de definir todas as variáveis como extended e assim desfrutar da maior precisão possível. Mas isso tem um preço extremamente alto. Não tanto em termos de espaço de memória gasto, mas em termos de processamento.

O computador só lida com zeros e uns. Um valor em formato extended será "traduzido" para binário antes de ser manipulado pelo programa. Isto demanda processamento feito por rotinas internas complexas.

O ideal é definir o tipo de variável que mais se adapta à aplicação que estamos projetando. Por exemplo, valores que não precisam de muita precisão podem dispensar a parte fracionária.

Na verdade, o tipo integer é uma espécie de tipo que serve para quase tudo. É sinalizado (pode ser negativo ou positivo) e abrange uma boa faixa de valores, além de gastar pouca memória e já estar num "tamanho" quase natural para que o processador o entenda.

O grande cuidado a ser tomado, com as variáveis numéricas é evitar ao máximo misturar, em operações aritméticas, muitos tipos diferentes.



online