Este código de exemplo ajuda a ver para que matrizes podem ser usadas e também mostra um loop em ação.

Digamos que você queira que o usuário insira uma frase e depois que ele saiba quantas vezes eles usaram cada letra do alfabeto. Portanto, se o usuário digitar:

Eu comi meu gato.

Você retornaria uma página que dizia:

a: 2
c: 1
e: 1
i: 1
m: 1
t: 2
y: 1

OK, passo um. Você deseja contar 26 itens diferentes, um para cada letra do alfabeto. Isso quase grita matriz. Então comece com um

Dim LetterCount (26)
para CurrLtr = 1 a 26
LetterCount (CurrLtr) = 0
Próximo

Esse é um bom exemplo de um loop para o próximo. OK, até agora tudo bem. Você tem 26 pontos no zero, esperando para começar a contar. Agora, percorra a frase para ver o que há nela. Digamos que você chame esta frase de CurrText.

Primeiro, você deseja verificar cada letra da frase. Farei isso com um loop do-while para que você possa ver como isso funciona. Então você começaria com:

SenLen = len (CurrText)
CurrCtr = 1
fazer enquanto CurrCtr <= SenLen
CurrLtr = esquerda (CurrText, 1)

Você tem a próxima carta em ordem. Agora, cada letra do curso tem um valor ASCII associado a ela. Esses variam de 65 para A a 90 para Z. Case importa. Então, em seguida, coloque a letra em maiúscula para garantir que ela caia entre 65 e 90 e subtraia 64 para que A = 1 e Z = 26.

CurrLtr = ucase (CurrLtr)
CurrLtrA = asc (CurrLtr)
CurrLtrA = CurrLtrA - 64

Então agora você tem um número de 1 a 26 que indica qual é a letra. O próximo passo é obviamente fácil. Você acabou de incrementar esse balde! Se desejar, certifique-se de ignorar qualquer letra que não seja da letra, se estiver preocupado com a entrada deles no fluxo.

se CurrLtrA> 0 e CurrLtrA <65, então
LetterCount (CurrLtrA) = LetterCount (CurrLTrA) + 1
fim se

E agora, no final do ciclo, você se livra da letra em que estava trabalhando, de modo que, quando você percorre o ciclo, a primeira letra da frase é a próxima em ordem.

CurrText = Direita (CurrText, len (CurrText) - 1)
CurrCtr = CurrCtr + 1
ciclo

Portanto, agora sua matriz está cheia de números que variam de 0 a qualquer que seja, cada um indicando quantas vezes essa letra foi encontrada. Você pode exibi-los da maneira que desejar. Se você quiser usar um loop e a função CHR, que mostra a letra que possui um determinado código ASCII, você pode:

para CurrLtr = 1 a 26
response.write "A carta"
CurrAscii = CurrLtr + 64
CurrLtrA = chr (CurrAscii)
response.write CurrLtrA & "foi encontrado"
response.write LetterCount (CurrLtr) & "times.
"
Próximo

Não deixe de visitar nossos fóruns ou escrever se tiver alguma dúvida!

Introdução ao ASP Ebook

Faça o download deste e-book para obter tudo o que você precisa saber sobre o aprendizado de ASP - de um tutorial passo a passo a listas de funções, código de exemplo, erros e soluções comuns e muito mais! 101 páginas.

Instruções De Vídeo: Programar em C - Contar Caracteres de uma String - Aula 49 (Pode 2024).