Constantes
Uma constante é semelhante a uma variável, o que a difere é que no caso da constante o seu valor é fixo e deve ser informado junto com sua declaração.
Sintaxe de declaração:
[No da Constante] = [Valor da Constante];
Alguns exemplos para a definição de Constantes:
const
Min = 0;
Max = 100;
Centro = (Max - Min) div 2;
Beta = Chr(225);
Num_Letras = Ord('Z') - Ord('A') + 1;
Mens_Ola = 'Instrução inválida';
Mens_Erro = ' Erro: ' + Mens_Ola + '. ';
PosErr = 80 - Length(MensErro) div 2;
Ln10 = 2.302585092994045684;
Ln10R = 1 / Ln10;
DigNumericos = ['0'..'9'];
LetrasAlpha = ['A'..'Z', 'a'..'z'];
AlphaNum = LetrasAlpha + DigNumericos;
No nosso exemplo para constate crie um novo projeto e configure o formulário como mostrado:
|
|
||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
||||||||||||||||||||||||
|
|
Figura 1 – Projeto com constantes
No evento OnClick do BtnCalc digite o código em negrito:
01 |
procedure TForm1.BtnCalcClick(Sender: TObject); |
02 |
const |
03 |
Taxa = 0.005; |
04 |
var |
05 |
JuroDia, TotalJuro, TotalPgto: Currency; |
06 |
begin |
07 |
JuroDia := StrToFloat( EdVrParc.Text ) * Taxa; |
08 |
TotalJuro := JuroDia * StrToFloat( EdAtraso.Text ); |
09 |
TotalPgto := StrToFloat( EdVrParc.Text ) + TotalJuro; |
10 |
ShowMessage('Juro ao Dia : ' + FloatToStr( JuroDia ) +#13+ |
11 |
'Juro Total : ' + FloatToStr( TotalJuro ) +#13+ |
12 |
'Total a Pagar : ' + FloatToStr( TotalPgto ) ); |
13 |
end; |
Compile, execute o projeto e em seguida teste o programa.
A palavra reservada const na linha 02 indica que iremos iniciar a declaração de constantes, o que ocorre na linha 03 onde entramos com a constante Taxa = 0.005.
As linhas 04 e 05 dispensam explicações
Na linha 07 temos a função StrToFloat que semelhante a função StrToInt recebe um valor do tipo string, só que nesse caso o retorna o valor como um tipo Extended, em seguida multiplica esse valor pela constante Taxa e atribui o resultado a variável JuroDia.
A linha 08 atribui a multiplicação da variável JuroDia com o valor digitado no componente EdAtraso(transformando antes o conteúdo da propriedade Text num tipo Extende) e atribuindo esse valor a variável TotalJuro.
A linha 09 atribui à variável TotalPgto a soma do valor digitado no componente EdVrParc com o valor da variável TotalJuro.
Nas linhas 10, 11 e 12 temos a função FloatToStr que faz o inverso da função StrToFloa, ou seja, recebe um valor do tipo Extended e transforma em um valor do tipo string. Nessas linhas também temos o procedimento ShowMessage que mostra o valor de uma string passada como parâmetro numa caixa de mensagem. O símbolo # retorna o caractere correspondente da tabela ASCII, nesse caso informamos o número 13 que quebra a linha assim como acontece com um editor de texto após teclarmos <ENTER>.