A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Processamento de Dados & Cálculo Numérico Processamento de Dados & Cálculo Numérico Módulo 2.

Apresentações semelhantes


Apresentação em tema: "Processamento de Dados & Cálculo Numérico Processamento de Dados & Cálculo Numérico Módulo 2."— Transcrição da apresentação:

1 Processamento de Dados & Cálculo Numérico Processamento de Dados & Cálculo Numérico Módulo 2

2 Módulo 2 p.2 Considerações importantes PropriedadesPropriedades –As propriedades são variáveis que podem ser modificadas Em tempo de desenvolvimento  quando estamos “desenhando” a interface gráfica do programa –Isto é feito através do Object Inspector Em tempo de execução  quando estamos executando o programa –Isto é feito através de comandos implementados nos eventos de outros objetos –É importante notar que, quando necessitamos modificar propriedades durante a execução do projeto, temos sempre que dizer primeiro qual o objeto que terá sua propriedade modificada e, depois, qual a propriedade RegraNomeDoObjeto.Propriedade := ;Regra  NomeDoObjeto.Propriedade := ;

3 Módulo 2 p.3 Considerações importantes PropriedadesPropriedades –Também, temos que ter cuidado com o tipo de dado que a variável aceita. ExemplosExemplos:  –Text é uma variável do tipo string  só aceita textos  –Width é uma variável do tipo numérico  só aceita números  –Caption é uma variável do tipo string  só aceita textos –Fizemos então:  TextEdit1AA:= StrToFloat(Edit1.Text);  Variáveis  Text de Edit1 e A  TextEdit2BB:= StrToFloat(Edit2.Text);  Variáveis  Text de Edit2 e B  TextEdit3CC:= StrToFloat(Edit3.Text);  Variáveis  Text de Edit3 e C  TextEdit4X1Edit4.Text:= FloatToStr(X1);  Variáveis  Text de Edit4 e X1  TextEdit5X2Edit5.Text:= FloatToStr(X2);  Variáveis  Text de Edit5 e X2

4 Módulo 2 p.4 PropriedadesPropriedades –Poderíamos ter feito: Ao invés de Delta := B*B - 4*A*C; Delta := sqr (StrToFloat(Edit2.Text) ) – 4 *StrToFloat(Edit1.Text) * StrToFloat(Edit3.Text ); –economizaríamos 3 variáveis  A, B e C Ao invés de X1 := (-B + sqrt(Delta))/(2*A); Edit4.Text := FloatToStr ((- StrToFloat(Edit2.Text ) + sqrt(Delta))/(2 *StrToFloat(Edit3.Text); –economizaríamos 2 variáveis  X1 e X2 (se fosse feito o mesmo para X2) Considerações importantes

5 Módulo 2 p.5 EventosEventos externasnos –São ações externas que serão executadas nos objetos ExemplosExemplos: –Clicar num botão –Digitar um caractere numa caixa de texto –Clicar numa imagem –Essas ações são seguidas por tarefas a serem executadas pelo programa ExemplosExemplos: –Ao clicar num botão »altera-se a cor do formulário –Ao digitar um texto uma caixa de texto »verifica-se se o caractere digitado é uma letra »caso afirmativo, avisamos que somente sejam digitados números –Ao clicar numa imagem »a imagem é maximizada Evento Considerações importantes

6 Módulo 2 p.6 MétodosMétodos pelosnos –São ações internas que serão executadas pelos (e nos) objetos –Para que qualquer mudança ocorra em uma propriedade de um objeto, um método deverá ser acionado Isto pode ser feito pelo Delphi (escondido do usuário) Ou pode ser feito pelo próprio programador –NomeDoObjeto.Método –NomeDoObjeto.Método ou –NomeDoObjeto.Propriedade.Método –Exemplos –Exemplos: Encerrar a aplicação  fecha-se o projeto –O programador deve acionar o método Terminate do objeto Application Esconder um formulário –O programador deve acionar o método Hide do objeto Form Mostrar um formulário que está escondido –O programador deve acionar o método Show do objeto Form –Essas ações são seguidas por modificações na propriedade do objeto acionado pelo método. Considerações importantes

7 Módulo 2 p.7 MétodosMétodos –São as estruturas de controle que atuam sobre as propriedades de um objeto. –Formam a parte “viva” do objeto, pois além de suprirem todas as ações necessárias ao funcionamento do mesmo, ainda cuidam da consistência destas operações, executando todas conversões necessárias. –Quando um agente externo solicita uma alteração numa propriedade, por exemplo, o método vai checar se os valores passados são válidos e aí decidir se os converte ou simplesmente nega-se a completar a operação. Às vezes, ao mudar o valor de uma propriedade, o método se encarrega de checar as demais propriedades relacionadas e, em caso de incompatibilidade, se encarrega de fazer os devidos acertos. Os métodos, portanto, é que dão inteligência ao objeto. –Os métodos são procedures ou functions que realizam uma operação com o objeto. Considerações importantes

8 Módulo 2 p.8 Evento Objeto Considerações importantesMétodo Método Método Método Método Método Método Método Atributos

9 Módulo 2 p.9  automóvelUm exemplo da nossa realidade  O objeto “automóvel” –pertence a uma classe meios_de_transporte. –possui as seguintes propriedades ou atributos: marca, tipo de combustível, cor e ano de fabricação. –Entre suas ações peculiares, que chamaremos de métodos, podemos destacar: acelerar, frear, ligar os faróis, acender as luzes do freio. –Entre os métodos acima, alguns necessitam de um estímulo externo (uma intervenção do usuário) para serem executados, a esse estímulo chamaremos de evento: colocar a chave na ignição, girar a chave, pisar no freio, pisar no acelerador, girar o volante e abrir a porta. –Observe que nem todo evento executa uma ação. Colocar a chave na ignição, por exemplo, não dispara nenhuma ação, a menos que você vire a chave, que é outro evento. Considerações importantes

10 Módulo 2 p.10 bicicletaOutro exemplo da nossa realidade: bicicleta –pertence à classe meios_de_transporte. –possui as seguintes propriedades ou atributos: marca, Cor, ano de fabricação, tamanho do quadro, tamanho da roda, engrenagens. –Entre suas ações peculiares, métodos, podemos destacar: acelerar, frear, mudar a marcha, consertar. –Entre os métodos acima, alguns necessitam de um estímulo externo: pedalar, torcer o guidom. Considerações importantes

11 Módulo 2 p.11 Observe também que os objetos não precisam responder com a mesma ação a um determinado evento. –No caso do automóvel é conveniente que isso aconteça, mas nada impede que se projete um automóvel que, ao se ligar o limpador de pára-brisas, ele responda acendendo os faróis, por exemplo. Os métodos e eventos podem provocar alterações no estado do objeto. –O estado do objeto é indicado pelo conjunto de seus atributos. Por exemplo, quando damos partida no automóvel mudamos seu estado de desligado para ligado. Considerações importantes

12 Módulo 2 p.12 o Primeiro Projeto Parte 2 Resolvendo Equações de Segundo GrauResolvendo Equações de Segundo Grau Ax2 + Bx +C = 0Ax2 + Bx +C = 0

13 Módulo 2 p.13 Primeiro Projeto – Parte 2 Os BugsOs Bugs –Se entrarmos com letras nas caixas de texto de entrada StrToFloat(Edit#.Text) letras não podem ser transformadas em números –As caixas de texto de saída não estão dimensionadas para qualquer número Se o número real deve ser formatado Melhorias AdicionaisMelhorias Adicionais –Adicionar um botão que apague as caixas de texto É imprescindível caso o usuário queira fazer novos cálculos –Adicionar a parte do programa em que as raízes imaginárias são calculadas –Melhorar a interface gráfica do programa

14 Módulo 2 p.14 Resolvendo os Bugs – AResolvendo os Bugs – A –Para evitar que o usuário entre com letras nas caixas de texto de entrada OrdChr ifOnKeyPressEsse problema pode ser resolvido com as funções Ord e Chr em um comando if no evento OnKeyPress do objeto Edit. –A função Ord retorna o valor ASCII de um caractere qualquer, enquanto a Chr gera o caractere quando for dado um número ASCII. OnKeyPressPara acionar o evento OnKeyPress do objeto Edit –selecione o objeto –No Object Inspector, clique na página Events OnKeyPress –Procure o evento OnKeyPress Clique duas vezes neste espaço! Primeiro Projeto – Parte 2

15 Módulo 2 p.15 O procedimento deverá ser programado da seguinte maneira: Procedure TForm1.Edit1KeyPress (Sender:TObject); begin if ((Ord(Key) Ord('9'))) and ((Ord(Key) <> Ord(8)) and (Ord(Key) <> Ord(',')) and (Ord(Key) <> Ord('-'))) then Key := Chr(0); end; Faça isto para as três caixas de textoFaça isto para as três caixas de texto –O resultado será: mesmo que o usuário tente digitar letras nas caixas, nada acontecerá! Primeiro Projeto – Parte 2

16 Módulo 2 p.16 Resolvendo os Bugs - BResolvendo os Bugs - B –Para formatar os dados de saída FloatToStr FloatToStrFEsse problema pode ser resolvido trocando-se a function FloatToStr pela function FloatToStrF Onde escrevia-se: Edit4.Text:= FloatToStr(X1); Edit5.Text:= FloatToStr(X2); –Troque por: Edit4.Text:= FloatToStrF(X1,ffGeneral,5,2); Edit5.Text:= FloatToStrF(X2,ffGeneral,5,2); Primeiro Projeto – Parte 2

17 Módulo 2 p.17 Melhorias Adicionais – Tarefinhas !Melhorias Adicionais – Tarefinhas ! –Adicionar um botão que apague as caixas de texto CaptionApagarButton com Caption Apagar OnClick –Evento OnClick Clear »Utilize o método Clear do objeto Edit Edit#.Clear; –Adicionar a parte do programa em que as raízes imaginárias são calculadas –Melhorar a interface gráfica do programa Raizes = PReal  PIm * i Primeiro Projeto – Parte 2

18 Módulo 2 p.18 Revisando Alguns Comandos Transformando String em RealTransformando String em Real Variável do tipo realVariável do tipo string Variável do tipo real Transformando Real em StringTransformando Real em String

19 Módulo 2 p.19 Revisando Alguns Comandos Transformando Real em String - FormatadaTransformando Real em String - Formatada Variável do tipo stringVariável do tipo real   Em Pascal: Write (Variável : 5 : 2)

20 Módulo 2 p.20 Transformando String em InteiroTransformando String em Inteiro Variável do tipo integerVariável do tipo string Variável do tipo integer Transformando Inteiro em StringTransformando Inteiro em String Revisando Alguns Comandos

21 Módulo 2 p.21


Carregar ppt "Processamento de Dados & Cálculo Numérico Processamento de Dados & Cálculo Numérico Módulo 2."

Apresentações semelhantes


Anúncios Google