Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

filipecrosk

Loop invertido

Recommended Posts

Olá galera,

 

 

alguem sabe como fazer um loop ao contrario??

pq eu estou precisando fazer uma função de forma que ela vá regredindo..

 

tenho uma variavel que me retorna por exemplo o numero 38 ai preciso que faca um loop de 38 ate 1

 

alguem sabe como fazer isso???

 

veja minha tentativa:

 

total = 38

 

if len(total) > 1 thenvalor = 0 for x = 1 to len(total)	valor = valor + Mid(total,x,1)	response.Write Mid(total,x,1) & " - "& valor &"<br>"	response.Write "total:"& total &"<BR>"nextend if

nesse codigo eu verifico se na variavel "total" tem mais de um caracter e ai eu separo essa variavel e somo cada caracter... mas ai preciso fazer com que esse codigo ai fique dentro de um outro LOOP para poder fazer isso ate chegar ao final onde so vai ficar 1 caracter na variavel TOTAL...

 

como fazer isso?? helpme http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

valeu cara...mas esse codigo que você fez ai eu testei aqui e so fez o contrario... hehe o meu codigo somava do primeiro caracter ate o ultimo e o seu faz do ultimo ate o primeiro...1) so que o que preciso é que ele verifique quantos CARACTERES tem na funcao2) se tiver mais de 1 caracter, ele separa os caracteres e somae dá um loop nessa funcao ai ate ficar a variave igual a 1ninguem pode me ajudar nao???

Compartilhar este post


Link para o post
Compartilhar em outros sites

não entendi muito bem o que voce quer no inicio achava que era o que o prog postou agora não sei mais...

Compartilhar este post


Link para o post
Compartilhar em outros sites

é o seguinte cara...

 

estou desenvolvendo um sistema que vai fazer alguns testes....

 

um deles é um teste Numerologico que é feito apartir do nome da pessoa:

 

nome = Ucase(replace(request("nome")," ",""))	conta = Len(nome)	total = 0		for x = 1 to conta	If InStr(Mid(nome,x,1),"A") > 0 Then valor = 1 end if	If InStr(Mid(nome,x,1),"J") > 0 Then valor = 1 end if	If InStr(Mid(nome,x,1),"S") > 0 Then valor = 1 end if	If InStr(Mid(nome,x,1),"B") > 0 Then valor = 2 end if	If InStr(Mid(nome,x,1),"K") > 0 Then valor = 2 end if	If InStr(Mid(nome,x,1),"T") > 0 Then valor = 2 end if	If InStr(Mid(nome,x,1),"C") > 0 Then valor = 3 end if	If InStr(Mid(nome,x,1),"L") > 0 Then valor = 3 end if	If InStr(Mid(nome,x,1),"U") > 0 Then valor = 3 end if	If InStr(Mid(nome,x,1),"D") > 0 Then valor = 4 end if	If InStr(Mid(nome,x,1),"M") > 0 Then valor = 4 end if	If InStr(Mid(nome,x,1),"N") > 0 Then valor = 4 end if	If InStr(Mid(nome,x,1),"E") > 0 Then valor = 5 end if	If InStr(Mid(nome,x,1),"N") > 0 Then valor = 5 end if	If InStr(Mid(nome,x,1),"X") > 0 Then valor = 5 end if	If InStr(Mid(nome,x,1),"F") > 0 Then valor = 6 end if	If InStr(Mid(nome,x,1),"O") > 0 Then valor = 6 end if	If InStr(Mid(nome,x,1),"Y") > 0 Then valor = 6 end if	If InStr(Mid(nome,x,1),"G") > 0 Then valor = 7 end if	If InStr(Mid(nome,x,1),"P") > 0 Then valor = 7 end if	If InStr(Mid(nome,x,1),"Z") > 0 Then valor = 7 end if	If InStr(Mid(nome,x,1),"H") > 0 Then valor = 8 end if	If InStr(Mid(nome,x,1),"Q") > 0 Then valor = 8 end if	If InStr(Mid(nome,x,1),"I") > 0 Then valor = 9 end if	If InStr(Mid(nome,x,1),"R") > 0 Then valor = 9 end if		total = total + valor	response.Write Mid(nome,x,1) & " - "& valor &"<br>"	response.Write "total:"& total &"<BR>"		next
nesse codigo ai eu pego o nome.. separo em caracteres e vejo qual o valor desse caracter e somo..

 

ai agora preciso pegar o resultado e verificar se tem mais de 1 caracter...

 

se tiver mais que um 1 caracter eu preciso separar esse resultado e somar os caracteres

 

ai tenho que fazer um loop nisso ate o resultado ficar com apenas um caracter

 

um exemplo:

 

Menu nome é Filipe ai o resultado da soma do meu nome é 39

ai o resultado(39) tem mais de 1 caracter então preciso dividir

ai ficaria 3 + 9 que é igual a 12

12 também tem mais de 1 caracter então vou separar e somar novamente:

1 + 2 que é igual a 3

 

pronto... é isso ai que preciso...

 

sera que agora fui mais claro?? hehe é meio complicadinho mesmo de explicar esse sisteminha.. e acho um tanto idiota.. mas meu cliente quer ne?? fazer o que?? hehe http://forum.imasters.com.br/public/style_emoticons/default/blush.gif

 

se alguem puder me ajudar.

valeus

 

ops esqueci de falar..

 

é isso ai que preciso... e isso ai eu ate sei fazer. mas não estou sabendo fazer um loop para fazer isso ate que o resultado fique com apenas 1 caracter

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ta chegando o natal...

 

ta ai seu presente

 

Total =  o seu total láNovoTotal = TotalWhile Len(NovoTotal) > 1   NovoTotalAux = 0   Tamanho = Len(NovoTotal)   For I = 1 To Tamanho	  NovoTotalAux = NovoTotalAux + CInt(Mid(NovoTotal, I, 1))   Next   NovoTotal = NovoTotalAuxWendResponse.Write(NovoTotal)

Compartilhar este post


Link para o post
Compartilhar em outros sites
de nada filipe

e aguarde que o seu corola ja ta chegando... papai noel vai lhe entregar..hehe

no aguardo do presente...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.