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).