Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

SkySkull

Como aceder a um carácter numa String

Mensagens Recomendadas

SkySkull    0
SkySkull

Boas.

A minha dúvida é relativa à manipulação de Strings. Depois de pedir uma cadeia de caracteres ao utilizador, seq, o objectivo é calcular a entropia dessa sequência, contando quantas ocorrências existem de um determinado carácter. Para isso, tenho um vector ascii() com 128 posições e, em cada posição, estará o contador de cada carácter da String inserida pelo utilizador, ie: "aaa" daria ascii(97) = 3.

Dim cod As Integer
Dim i
Dim n As Variant
Dim x

For i = 1 To tam

    n = Split(Worksheets("Sheet1").Cells(1, 1).Value, 1, tam)
    Worksheets("Sheet1").Cells(5, i).Value = n(0)
    If cod > 0 And cod < 128 Then
        ascii(cod) = ascii(cod) + 1
    End If
    
Next

Na célula (1,1) aparece a string depois de pedir ao utilizador que a introduza através de uma caixa de texto. O problema é que não consigo aceder a um caracter da String, declarando Dim seq As String. Usando o Split, tenho que pôr sempre um carácter de "partição"  :wallbash:

Alguma dica?  :bored:

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
MetalFatigue    1
MetalFatigue

usa a função mid() dentro de um ciclo. Com mid() consegues facilmente ir buscar carácter a carácter.

Se quiseres maior detalhe posso te dar logo a noite.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
SkySkull    0
SkySkull

Muito obrigado. Tenho um trabalho de Inteligência Artificial para entregar quinta-feira, por isso só volto a mexer nisto a partir de quinta. Se tiver alguma dúvida volto aqui a postar :)

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita a nossa Política de Privacidade