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

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

Passagem de parâmetros por valor txtInOut1.Text = num1 txtInOut2.Text = num2 txtOut.Text = num3 End Sub Private Sub cmdVal_Click() Dim num1 As Integer,

Apresentações semelhantes


Apresentação em tema: "Passagem de parâmetros por valor txtInOut1.Text = num1 txtInOut2.Text = num2 txtOut.Text = num3 End Sub Private Sub cmdVal_Click() Dim num1 As Integer,"— Transcrição da apresentação:

1 Passagem de parâmetros por valor txtInOut1.Text = num1 txtInOut2.Text = num2 txtOut.Text = num3 End Sub Private Sub cmdVal_Click() Dim num1 As Integer, num2 As Integer, num3 As Integer num1 = Val(txtInOut1.Text) num2 = Val(txtInOut2.Text) num3 = passagemPorValor(num1, num2)

2 Passagem de parâmetros por valor Public Function passagemPorValor(ByVal a As Integer, ByVal b As Integer) Dim c As Integer passagemPorValor = a * b c = a a = b b = c End Function

3 Passagem de parâmetros por Referência Private Sub cmdRef_Click() Dim num1 As Integer, num2 As Integer, num3 As Integer num1 = Val(txtInOut1.Text) num2 = Val(txtInOut2.Text) num3 = passagemPorReferencia(num1, num2) txtInOut1.Text = num1 txtInOut2.Text = num2 txtOut.Text = num3 End Sub

4 Public Function passagemPorReferencia(ByRef a As Integer, ByRef b As Integer) Dim c As Integer passagemPorReferencia = a * b c = a a = b b = c End Function Passagem de parâmetros por Referência

5 Passagem de parâmetros Conclusão Quando se usa passagem de parâmetros por referência as alterações feitas nos parâmetros repercutem-se no exterior da função ou procedimento O VB Usa por defeito a passagem de parâmetros por referência

6 Resolução da prática 5 Objectos necessários Duas caixas de texto (textbox) Três botões (commandoButton) Posicione-os de forma lógica Duas labels (valor de n, resultado) Um form Duas Frames (input, output)

7 Propriedades a alterar Caption Input Frame1 Text Frame2 name lblResultado Label2 Caption Output Textbox1 Caption N Label1 Caption Resultado Form1 Name frmOperacoes Caption Operações MaxButton False StartUpPosition 2 – Center Screen Textbox2 Locked True Name txtN Text Name txtResultado

8 Propriedades a alterar CommandButton1 Name cmdAdicao Caption Soma CommandButton2 Name cmdProduto Caption Produto CommandButton3 Name cmdSair Caption Sair

9 Funções necessárias somatorio(n As Integer) As Double No Novo modulo: produto(n As Integer) As Double validarEntrada(n As Integer, minimoAdmissivel As Integer) As Boolean No form: cmdAdicao_Click() cmdProduto_Click() cmdSair_Click() txtN_Change()

10 Sub do Form End Sub 'objectivo: Gere as acções necessárias á execução do produto Private Sub cmdProduto_Click() Dim limiteSup As Integer, resultado As Double limiteSup = Val(txtN.Text) If Module1.validarEntrada(limiteSup, 1) Then resultado = produto(limiteSup) txtN.Text = limiteSup txtResultado.Text = resultado lblResultado.Caption = "Produto" End If

11 Sub do Form 'objectivo: Gere as acções necessárias á execução do somatório Private Sub cmdAdicao_Click() Dim limiteSup As Integer, resultado As Double limiteSup = Val(txtN.Text) If Module1.validarEntrada(limiteSup, 2) Then resultado = somatorio(limiteSup) txtN.Text = limiteSup txtResultado.Text = resultado lblResultado.Caption = "Somatório" End If End Sub

12 Form

13 Sub do Form 'objectivo: termina o programa Private Sub cmdSair_Click() End End Sub 'Objecivo: Sempre que haja alterações na caixa de texto "txtN" ' o Caption e o conteúdo da caixa "txtResultado" são alterados Private Sub txtN_Change() lblResultado.Caption = "Resultado" txtResultado.Text = "" 'Apaga o conteúdo da caixa de texto End Sub

14 Funções do Modulo End Function 'objectivo:Calcula o somatório 1/i de 2 a n parâmetro entrada/saída : n número de vezes 'tipo interger parâmetro saída : 'tipo double Public Function somatorio(n As Integer) As Double Dim i As Integer, resultado As Double resultado = 0 For i = 2 To n resultado = resultado + 1 / i Next i somatorio = resultado

15 Funções do Modulo End Function 'objectivo:Calcula o Produto 1/i de 2 a n parâmetro entrada/saída : n número de vezes tipo interger parâmetro saída tipo double Public Function produto(n As Integer) As Double Dim i As Integer, resultado As Double If n > 1 Then resultado = 1 For i = 2 To n resultado = resultado * 1 / i Next i produto = resultado End If

16 Funções do Modulo 'objectivo:verificar se N está dentro dos limites aceitáveis parâmetro entrada/saída : n -> limite superior requerido pelo utilizador 'tipo interger parâmetro entrada/saida : minimoAdmissivel -> valor mínimo aceitável para n 'tipo interger 'parâmetro saída : 'tipo boolean

17 Funções do Modulo Public Function validarEntrada(n As Integer, minAdmi As Integer) As Boolean Dim cx As Integer If n < minAdmi Then cx = MsgBox(" n = " & n & " não é válido " & Chr(13) & _ "Deseja substituir o valor de n pelo mínimo admissível?" & Chr(13) & _ "n = " & minAdmi, vbYesNo, "Erro") If cx = vbYes Then n = minAdmi validarEntrada = True Else End Function validarEntrada = False End If Else validarEntrada = True End If

19 Funções com ciclos Public Function primos(numero As Long) As Boolean Dim incremento As Long incremento = 2 While (numero Mod incremento And numero <> 1) incremento = incremento + 1 Wend If incremento = numero Or numero = 1 Then primos = True Else primos = False End If End Function

20 Funções com ciclos End Function Public Function primos1(numero As Long) As Boolean Dim incremento As Long incremento = 1 Do incremento = incremento + 1 Loop While (numero Mod incremento And numero <> 1) If incremento = numero Or numero = 1 Then primos1 = True primos1 = False Else End If

21 Funções com ciclos Public Function primos2(numero As Long) As Boolean Dim incremento As Long, bool As Boolean incremento = 1 Do incremento = incremento + 1 bool = numero Mod incremento Loop Until (Not bool Or numero = 1) If incremento = numero Or numero = 1 Then primos2 = True Else primos2 = False End If End Function

22 Funções com ciclos Public Sub pesquisaPrimos(inicio As Long, fim As Long) Dim i As Long For i = inicio To fim If primos(i) Then cboPrimos.AddItem i Next i End Sub ComboBox Adiciona um Item Item a ser adicionado Função que verifica se I é primo


Carregar ppt "Passagem de parâmetros por valor txtInOut1.Text = num1 txtInOut2.Text = num2 txtOut.Text = num3 End Sub Private Sub cmdVal_Click() Dim num1 As Integer,"

Apresentações semelhantes


Anúncios Google