Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string,...
Transcript of Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string,...
![Page 1: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/1.jpg)
Manuseamento de stringsRight(string, length) Os length caracteres mais á direita
Left(string, length) Os length caracteres mais á esquerda
Private Sub Command1_Click()Dim a, b as string a = "Olá mundo" b = Left(a, 5)End Sub
b= “Olá m”
Private Sub Command1_Click()Dim a, b as string a = "Olá mundo" b = Right(a, 5)End Sub
b= “mundo”
![Page 2: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/2.jpg)
Manuseamento de strings
StrComp(str1, str2) Compara duas strings retorna Se str1 > str2 = 1 Se str1 = str2 = 0 Se str1 < str2 = -1
A < B a < b A < a aaA < aaa aa < ab
Numerar caracteres dentro da string
Str1 = “Olá ” Str2 = “Mundo”
Str3 = Str1 & Str2 Str3= “Olá Mundo”
Ex: StrComp(“A”,”a”) -1 Ex: StrComp(“a”,”A”) 1
Ex: StrComp(“a”,”a”) 0
![Page 3: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/3.jpg)
Algumas notas sobre a aula anterior
As variáveis são constituídas por letras, números e _ (underscore)
Declarar variáveis
Evita erros
Melhora o controlo das necessidades de memória
Atribuir valores a uma variável
25 = var1
ERRADO
Var1=25
Correcto
Máximo 255 caracteres
![Page 4: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/4.jpg)
Funções e Procedimento
Um programa deve de ser dividido em pequenos módulos e cada um deles com um objectivo bem determinado
Modularidade
Vantagens
Facilita a pesquisa de erros
Reutilização do código
Os comentários são indispensáveis ao fácil entendimento do programa e por conseguinte à sua reutilização
Dividir para reinar
Facilita a construção do programa
Dividir um problema grande em vários pequenos
![Page 5: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/5.jpg)
Funções e Procedimento
Adicionar uma nova função ou procedimento
Tools Add procedure
Adicionar um Modulo ou Form ao projecto
Project Add Module Project Add Form
Funções e procedimentos são pequenos blocos de código com um objectivo bem definido
As funções têm um tipo e devolvem sempre algo desse tipo(um número, uma string, um objecto ou um boolean)
Os procedimentos executam uma determinada tarefa não têm um tipo nem devolvem dados
![Page 6: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/6.jpg)
Private Function nomeDaFunção(parametro1 as tipo, ....) as tipo Corpo da função
nomeDaFunção = 25 (valor) RetornoEnd Function
Definição de funções
Public Function nomeDaFunção(parametro1 as tipo, ....) as tipo Corpo da função
nomeDaFunção = 5*3.14^2 (expressão) RetornoEnd Function
Funções e Procedimento
Função conhecida só dentro do modulo onde está inserida
Função conhecida em qualquer local do projecto
![Page 7: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/7.jpg)
Public Static Function nomeDaFunção(parametro1 as tipo, ....) as tipo Corpo da função
nomeDaFunção = nomeDeOutraFunção(argumento ) * 2End Function
Todas as variáveis usadas na função são estáticas
Funções e Procedimento
Chamada de uma função
Public Function nomeDaFunção(parametro1 as tipo, ....) as tipo Dim var1 as double
var1 = nomeDeOutraFunção(argumento1 , ...) End Function
![Page 8: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/8.jpg)
Procedimentos
Private Sub nomeDoProcedimento(parametro1 as tipo, ....) Corpo do procedimento
End Sub
Public Sub nomeDoProcedimento (parametro1 as tipo, ....) Corpo do procedimento
End Sub
Funções e Procedimento
Procedimento conhecido só dentro do modulo onde está inserido
Procedimento conhecido em qualquer local do projecto
![Page 9: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/9.jpg)
Public Static Sub nomeDoProcedimento (parametro1 as tipo, ....) Corpo do procedimentoEnd Sub
Todas as variáveis usadas na função são estáticas
Funções e Procedimento
Chamada de um procedimento
Public Sub nomeDoProcedimento(parametro1 as tipo, ....) as tipo Dim var2 as integer var3 as string
Call nomeDeOutroProcedimento(argumento1, ...)
End Sub
![Page 10: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/10.jpg)
Funções e ProcedimentoArgumentos vs Parâmetros
1 – O número de argumentos tem de ser igual ao nº de parâmetros
2 – A ordem é importante o 1º argumento corresponde ao 1º parâmetro o 2º argumento ao 2º parâmetro e assim sucessivamente
3 – O tipo de cada argumento tem de ser igual ao parâmetro correspondente
4 – Os nomes NÃO são importantes, NÃO existe qualquer correspondência entre os nomes dos argumentos e dos parâmetros
![Page 11: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/11.jpg)
VariáveisVariáveis Locais
São conhecidas só dentro das funções ou procedimentos onde são declaradas e o espaço que ocupam em memória é libertado logo que as funções / procedimentos terminam
Sempre que uma função ou procedimento é invocado todas as variáveis são inicializadas
Perdem-se Todos os valores
Declaração
Dim nomeVariavel as tipo
Static nomeVariavel as tipoNão perde o valor quando a função
ou procedimento terminar
Dentro da função ou procedimento
Variável estática
![Page 12: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/12.jpg)
Variáveis
Variáveis Globais
PrivateA variável é global no modulo onde foi declarada
Conhecida em todas as funções e procedimentos desse modulo
Declaração No topo do modulo fora de qualquer função ou procedimento
Private nomeVariavel as tipo
Dim nomeVariavel as tipo
Permanecem em memória desde o inicio até ao fim do programa (mantém os dados)
![Page 13: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/13.jpg)
VariáveisPublic
A variável é global em todo o projecto
Conhecida em todas as funções e procedimentos do projecto
Declaração No topo de um modulo fora de qualquer função ou procedimento
Public nomeVariavel as tipo
Como utilizar
nomeForm.nomeVariavel = 25
nomeModulo.nomeVariavel = 25
NOTA: Se utilizadas fora do modulo onde estão declaradas
![Page 14: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/14.jpg)
Variáveis
As variáveis globais private não devem de ser utilizadas
Tornam a programação difícil de perceber
Perde a modularidade
Não deve de utilizar as variáveis globais Public nos seus programas
Tornam a programação difícil de perceber
![Page 15: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/15.jpg)
Operadores lógicos
Menor<
Menor ou igual<=
Maior que>
Maior ou igual>=
Igual=
Diferente<>
![Page 16: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/16.jpg)
IF ... Then ... Else
If condição then Código que será executado se a condição for verdadeira
else Código que será executado se a condição for falsa
End If
![Page 17: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/17.jpg)
IF ... Then ... ElseIf condição_1 then Código que será executado se a condição1 for verdadeira
ElseIf condição_2 then Código que será executado se a condição2 for verdadeira
. . .
ElseIf condição_n then Código que será executado se a condição_n for verdadeira
else Código que será executado se todas as condições forem falsas
End If
![Page 18: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/18.jpg)
Private Sub cmdCalcular_Click() Dim diametro As Double, raio As Double diametro = val(txtDiametro.Text) ' Ler o valor da caixa de texto raio = diametro / 2 txtRaio.Text = raio txtArea.Text = areaCirculo(raio) txtPerimetro.Text = perimetroCirculo(raio)
![Page 19: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/19.jpg)
picOutput.ClspicOutput.Print "O raio de um circulo com "; diametro; "de diâmetro
é "; Format(raio, "#,###.##")picOutput.Print "A área de um circulo com "; diametro; "de
diâmetro é "; Format(areaCirculo(raio), "#,###.##")
picOutput.Print "O perímetro de um circulo com "; diametro; "de diâmetro é "; Format$(perimetroCirculo(raio), "#,###.##")
End Sub
![Page 20: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/20.jpg)
Private Sub txtDiametro_KeyPress(KeyAscii As Integer)
If KeyAscii = 44 Then ‘ ascii 44 , KeyAscii = 46 ‘ ascii 46 . End IfEnd Sub
'Objectivo: Substituir a virgula pelo ponto‘Parâmetro: código asci da tecla pressionada
![Page 21: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/21.jpg)
'objectivo: Terminar o programaPrivate Sub cmdSair_Click() End 'termina o programaEnd Sub
'Objectivo: Activar o botão de cmdCalcular
Private Sub txtDiametro_Change() cmdCalcular.Enabled = True 'activa o botão que
acciona o calculo cmdCalcularEnd Sub
![Page 22: Manuseamento de strings Right(string, length)Os length caracteres mais á direita Left(string, length)Os length caracteres mais á esquerda Private Sub Command1_Click()](https://reader035.fdocuments.us/reader035/viewer/2022062418/552fc0fc497959413d8ba289/html5/thumbnails/22.jpg)
No modulo Funções
Const PI = 3.1416
Public Function areaCirculo(raio as Double) as Double areaCirculo = PI * raio ^ 2 End Function
Public Function perimetroCirculo(raio as Double) as Double perimetroCirculo = PI * raio * 2 End Function