22
Funções ic Function minimo(a As Integer, b As Integer) as integer f a < b Then minimo = a lse minimo = b nd If Function Option Explicit ic Function maximo(a As Integer, b As Integer) as integer f a > b Then maximo = a lse maximo = b nd If Function ic Function media(a As Integer, b As Integer) as integer edia = (a + b) / 2 Function

Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

Embed Size (px)

Citation preview

Page 1: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

Funções

Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End IfEnd Function

Option Explicit

Public Function maximo(a As Integer, b As Integer) as integer If a > b Then maximo = a Else maximo = b End IfEnd Function

Public Function media(a As Integer, b As Integer) as integer media = (a + b) / 2End Function

Page 2: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

FunçõesPrivate Sub preencheCaixas() txtMin.Text = minimo(Val(txtA.Text), Val(txtB.Text)) txtMax.Text = maximo(Val(txtA.Text), Val(txtB.Text)) txtMed.Text = media(Val(txtA.Text), Val(txtB.Text))End Sub

Private Sub preencheCaixasA(max As Integer, min As Integer, med As Integer) txtMin.Text = min txtMAx.Text = max txtMed = medEnd Sub

InvocaçãoCall preencheCaixasA(max , min , med )

Call preencheCaixasA(maximo(Val(txtA.Text), Val(txtB.Text), minimo(Val(txtA.Text), Val(txtB.Text) , media(Val(txtA.Text), Val(txtB.Text) )

Page 3: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

FunçõesPrivate Sub txtB_Change() cmdCalcula.Enabled = True Call preencheCaixasEnd Sub

Private Sub cmdCalcula_Click() Call preencheCaixasEnd Sub

Private Sub cmdSair_Click() EndEnd Sub

Private Sub txtA_Change() txtB.Locked = FalseEnd Sub

Page 4: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

O comprimento do arco

Public Function comArco(angulo as integer, raio as integer) as double comArco = angulo * perimetroCirculo(raio) / 360End Sub

Public Function comArcoA(angulo as integer, perimetro as integer) as double comArco = angulo * perimetro(raio) / 360End Sub

Invocação

comArcoA(ang, perimetro)

OUcomArcoA(ang, perimetroCirculo(raio))

Page 5: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

Objectos

Propriedades do Form

Posição inicial do form ao centro StartUpPosition = 2 – CenterScreen

MinButtom MaxButtom

True True

False True

True False

False False

Page 6: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

FRAME

Frame

Os objectos devem de ser colocados logo dentro da FrameNão devem de ser levados de fora para dentro

Page 7: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

Caixas de mensagensMsgBox(prompt[, buttons] [, title] [, helpfile, context])

MsgBox é uma função portanto, Retorna algo

Resultado = MsgBox( Mensagem, Botões, Título, helpfile, context )

Opcional

Page 8: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

Caixas de mensagens

Constantes

Botões

Valores Descrição

vbOKOnly 0 1 botão OK

vbOKCancel 1 2 Botões OK e CancelvbYesNoCancel 3 3 Botões Yes, No e Cancel

vbYesNo 4 2 Botões Yes e No

Page 9: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

Caixas de mensagensRetorno da caixa de mensagensConstante Botão

Constante

Valor retornado

vbOKOnly VbOk 1

vbOKCancelVbOk 1

VbCancel 2

vbYesNoVbYes 6

VbNo 7

vbYesNoCancelVbYes 6

VbNo 7

VbCancel 2

Page 10: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

Private Sub Command1_Click()Dim mensagem As String, botões As Integer, titulo As StringDim resposta As Integer mensagem = "Mensagem" ' Define mensagem botões = vbYesNoCancel ' Define botões titulo = "Título" ' Define título resposta = MsgBox(mensagem, botões, titulo) If resposta = vbNo Then 'se a resposta foi "não" Text1.Text = "No" ElseIf resposta = vbYes Then 'se a resposta foi "sim" Text1.Text = "Yes" Else Text1.Text = "Cancel" 'se a resposta foi "cancelar" End IfEnd Sub

Caixas de mensagens Exemplo

Page 11: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

Controlo de fluxo (Select case)

Select Case expressãoTeste[Case expressãoLista-n [codigoLista-n]] ...[Case Else [codigoLista-caso todas falhem ]]End Select

É executado o código do Caso que coincidir com a expressãoTeste

Page 12: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

Controlo de fluxo (For...To...Next)

For contador = inicio To fim [Step passo] [código]Next [contador]

Ciclo For executa n vezes do inicio até ao fim inclusive (n é um valor conhecido)

O contador é incrementado ou decrementado de acordo com o Step

Opcional

O Step é opcional Quando omitido é considerado = 1

j=0For i = 0 To 5 Step 1 j = j + 1.Next i

Qual o valor do j no final do ciclo?

J = 6

Indiferente a sua utilização

Page 13: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

Controlo de fluxo (For ...To ...Next)Exemplos:

j=0For i = 0 To 5 Step 2 j = j + 1.Next i

Qual o valor do j no final do ciclo?

J = 3

Public Function forExemplo(n As Integer)Dim j, i As Integer For i = 0 To n j = j + 2 Next i txtXpto.Text = "i =" & i & " j=" & j forExemplo = jEnd Function

SE n = 5 Qual o valor do j

e do i no final do ciclo?

I = 6 ; j = 12

Page 14: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

Controlo de fluxo (For ...To ... Next)

For i = 1 To 10

For j = 1 To 10

For k = 1 To 10

L = L + 1

Next k

Next j

Next i

Exemplos:

Qual o valor do j no final do ciclo?

L = 1000

Page 15: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

Controlo de fluxo (Do ... Loop)

Do [Código]Loop Until condição

Ciclo Do ... Loop Until executa 1 ou n vezes até que a condição seja verdadeira

Executa sempre pelo menos UMA vez

J = 0Do j = j + 1.Loop Until j = 5

Qual o valor do j no final do ciclo?

J = 5

Usa-se quando se desconhece o número de vezes que o ciclo é executado

Condição

Page 16: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

Controlo de fluxo (Do ... Loop)

Do [Código]Loop While condição

Ciclo Do ... Loop while executa 1 ou n vezes enquanto a condição for verdadeira

Executa sempre pelo menos UMA vez

J = 0Do j = j + 1.Loop while j < 5

Qual o valor do j no final do ciclo?

J = 5

Usa-se quando se desconhece o número de vezes que o ciclo é executado

Condição

Page 17: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

Controlo de fluxo (While...Wend)

While condição [Código]Wend

Ciclo while ... Wend executa 0 ou n vezes enquanto a condição for verdadeira

J = 0While j < 5 j = j + 1.Wend

Qual o valor do j no final do ciclo?

J = 5

Usa-se quando se desconhece o número de vezes que o ciclo é executado

Condição

Page 18: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

Controlo de fluxo

J = 0While j < 5 j = j - 1.Wend

J = 0Do j = j - 1.Loop while j < 5

J = 0Do j = j + 1.Loop Until j = 0

Os ciclos While ... WendDo ... Loop While Do ... Loop Until

podem ser infinitos

O programa não termina

Ciclos infinitos

Page 19: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

1º PassoNarrativa

Objectos necessários

Duas caixas de texto (textbox) uma para input outra para output

Um botão (commandoButton)

Alterar as propriedades name, capiton, enabled, locked e outras que considere conveniente

Posicione-os de forma lógica

Duas labels (valor de n, resultado do somatório)

Um form

Duas Frames (input, output)

Adicione um novo modulo ao projecto onde será desenvolvida a função “somatorio”

Page 20: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

Verificar se o valor introduzido está dentro da gama pré definida

2º Passo

Se não é um valor aceitável

O programa não avança

É mostrada uma caixa de mensagens (MsgBox) com informação

Narrativa

Após o clik do utilizador

Ler o valor inscrito pelo utilizador

Aguada acção por parte do utilizador para continuar

Volta á posição inicial

3º Passo

4º Passo

Page 21: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

Narrativa

Se é um valor aceitável

O programa avança

É invocada a função “somatorio”

Recolhido o resultado

Inscrito o resultado na caixa de texto de saída

Page 22: Funções Public Function minimo(a As Integer, b As Integer) as integer If a < b Then minimo = a Else minimo = b End If End Function Option Explicit Public

NarrativaFunção “somatorio”

n

i i2

1

i é incrementado de 2 até n

4

2

1

i i

A cada incremento do i é feita a adição de ao valor anteriori

1

Ex: n = 4 4

1

3

1

2

1+ + =

12

13 1,083333

Quantos parâmetros e qual o seu tipo?

Que tipo de dados devolve?

Funcionamento