• Nenhum resultado encontrado

No formulário da calculadora, selecione o botão btnIgual e pressione a tecla Delete. O botão de igual desaparecerá do formulário, mas o seu código continuará no editor de códigos. Abra o editor de códigos, e ob- serve que a procedure TfrmCalculadora.btnIgualClick continua no mes- mo lugar. Exclua também o label com X.

Modifique o formulário frmCalculadora como o exemplo a seguir, inserin- do e dimensionando um novo botão:

Selecione o novo botão, copie ( ) e cole ( ) mais três botões semelhantes. Depois posicione-os de acordo com a figura:

Algumas propriedades podem ser alteradas ao mesmo tempo para um grupo de objetos selecionados. Como exemplo, selecione todos os bo- tões criados anteriormente e altere as propriedades Font.Size e Font.Style de todos ao mesmo tempo.

Como o símbolo de divisão é encontrado na fonte Symbol, é necessário alterar o propriedade Font.Name do botão e depois, abrir o Mapa de caracteres do Windows e procurar pelo símbolo da divisão na fonte Symbol, copiando e colando para a propriedade Caption deste botão. Provavelmente o caractere que aparecerá na caixa de propriedade não será o mesmo do botão, pois a fonte da Object Inspector não é Symbol, portanto não se preocupe com este problema. Faça o mesmo processo para o botão de raiz.

O procedimento para o antigo botão btnIgual será agora aproveitado no botão btnMultiplicacao. Selecione o botão btnMultiplicacao e na Object Inspector abra a página Events escolhendo a opção btnIgualClick para o evento OnClick. Fazendo com que este procedimento que antes era de um botão agora possa ser disparado por outro.

As duas variáveis Valor1 e Valor2 que antes pertenciam a apenas um procedimento, agora deverão ser utilizadas pelos procedimentos das outras operações. Para que isso ocorra, retire-as do procedimento TfrmCalculadora.btnIgualClick e declare-as na seção Implementation da unidade. Será usada também a função FormatFloat para formatar a apresentação do resultado.

Substitua o tipo de operação em btnIgualClick, e nos demais botões, utilizando as ferramentas Copiar e Colar.

Os operandos das quatro operações são:

/

Divisão

*

Multiplicação

-

Subtração

+

Soma

A função exponenciação está programada em uma unidade do Delphi, que possui diversas funções matemáticas complexas, chamada Math. Uma delas é a função Power(base, expoente) que será utilizada para efetuar a operação de raiz disparada pelo botão btnRaiz.

Depois digite o código associado ao evento OnCLick do botão btnRaiz.

Todo bom programador coloca em seu código linhas de comentário para que ele ou outra pessoa possam guiar-se no código durante uma manu- tenção, pois com o tempo, o caminho para determinado resultado pode ser esquecido. No Delphi as linhas de comentário são precedidas por

DEPURAÇÃO

Quando construímos uma aplicação, é possível errarmos na sintaxe du- rante a digitação, fornecendo parâmetros errados ou trocando nomes de variáveis, ou então, criarmos erros lógicos que são detectados como saídas incorretas do programa. Para resolver estes problemas o Delphi possui várias ferramentas que controlam a execução do programa for- necendo uma execução passo-a-passo e exibindo valores de parâmetros. Quando o Delphi compila o programa

(Ctrl+F9) e encontra algum erro de sin- taxe ele mostra a linha onde está o erro, dando uma dica do problema, na parte inferior da janela do Code Editor.

Praticaremos a depuração de programas construindo um aplicativo que nos dê como saída uma lista com os seguintes números: 18, 21, 24, 27 e 30. Construa um formulário com um botão e um quadro de lista - ListBox ( ), sem alterar nenhuma propriedade dos componentes: Entre com o seguinte código, exatamente como está, para o botão:

Compile o programa pressionando Ctrl+F9, e observe os erros de sinta- xe encontrados pelo Delphi. São erros que indicam a não declaração ou existência da variável T e do objeto Lista. A linha destacada em verme- lho indica aonde o compilador parou.

Declare a variável T como do tipo inteiro semelhante à i e altere a propri- edade Name da ListBox para Lista, e compile novamente.

Desta vez foi apresentado um erro onde o tipo de dado requerido é um

String mas o fornecido pela variável T é Integer. Para corrigir, transfor-

me o conteúdo da variável T em String utilizando a função IntToStr() na linha onde ocorreu o erro.

Lista.Items.Add (IntToStr(T));

Após esta correção, o compilador não detectará mais nenhum erro de sintaxe. Portanto, execute este exemplo pressionando F9.

Observe que a saída do programa não corresponde à desejada, consta- tando a existência de erros lógicos neste projeto.

A função digitada está incorreta pois ela não varia em função do valor de i, altere então a seguinte linha:

T:= 3*5+I;

Mesmo após a inclusão da variável I, a saída do programa ainda não está como desejada.

Para continuar a resolução deste problema, acompanhe o programa pas- so-a-passo verificando o valor das variáveis em cada momento. Primei- ro insira um ponto de parada (Breakpoint), onde o programa será exe- cutado até este ponto e depois pára.

Para inserir um Breakpoint, dê um clique na barra do lado esquerdo da linha que deseja ser a parada. Quando desejar remover o Breakpoint basta dar um novo clique na mesma posição.

Quando for dado um clique no botão, o programa começará a executar e irá parar na linha do Breakpoint exibindo o Code Explorer. Para continuar a executar o programa passo-a-passo pressione F7, até a linha que está indicada na figura abaixo como linha corrente.

Verifique o valor atual de uma variável posicionando o ponteiro sobre ela, e aguardando uns instantes para o Delphi mostrar seu valor.

Avance o programa aos passos até a finalização, acompanhando a vari- ação dos valores.

A saída somente estará correta quando 5+I estiver entre parênteses -

(5+I), executando primeiro a soma e depois a multiplicação.

Digite os parênteses e execute o programa, que agora apresentará a saída correta.

Documentos relacionados