Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá, amigos. Tudo bem?
Tenho um for que faz o cálculo de parcelamento de produto, tipo:
01 X R$ 1000,00
02 X R$ 500,00
03 X R$ 333,33
e assim por diante. Na verdade, gostaria de pegar apenas o último registro, o 03 X R$ 333,33. Como faço isso? Lembrando que este for não tem um número de parcelas (registros) definidas.
seria algo assim ?
x= algum valor que vem de outro lugar
i=0
for i=1 to x
...
i = i+1
se colocar um if i = x .... dentro do for, não resolve ?
Porfavor poste o trecho do código para analisarmos como esta...
Apenas para exemplificar, é assim:
For i=1 to 12
y = z / i
If y > b Then Exit For
Next
Ou seja, ele faz alguns cálculos para dividir o valor do produto pelas parcelas, mas dependendo da parcela mínima já pré configurada, ele não pode continuar dividindo. Então apesar de dividir em 12, muitas vezes ele para no 3, no 5... por isso queria saber como pegar o último registro, seja ele qual for.
porque não faz o calculo inverso?
com o total dividido pela parcela mínima para ver o máximo de parcelas possíveis
>
Olá, amigos. Tudo bem?
Tenho um for que faz o cálculo de parcelamento de produto, tipo:
01 X R$ 1000,00
02 X R$ 500,00
03 X R$ 333,33
e assim por diante. Na verdade, gostaria de pegar apenas o último registro, o 03 X R$ 333,33. Como faço isso? Lembrando que este for não tem um número de parcelas (registros) definidas.
Normalmente seria suficiente gravar o novo valor de cada for em uma mesma variável.
Ao final, basta imprimir esta variável que estará com o ultimo valor gravado.
Ou seja, de acordo com o teu exemplo, seria suficiente imprimir o valor da variável "y" ou ainda gravar uma nova variável (newvar) que será alterada sempre depois do "Exit" ...
Quando acontecer o Exit, a nova variável já terá sido gravada com o último valor válido e você poderá usá-la para qualquer outra tarefa.
For i=1 to 12
y = z / i
If y > b Then Exit For
newvar = y
Next
>
Normalmente seria suficiente gravar o novo valor de cada for em uma mesma variável.
Ao final, basta imprimir esta variável que estará com o ultimo valor gravado.
Ou seja, de acordo com o teu exemplo, seria suficiente imprimir o valor da variável "y" ou ainda gravar uma nova variável (newvar) que será alterada sempre depois do "Exit" ...
Quando acontecer o Exit, a nova variável já terá sido gravada com o último valor válido e você poderá usá-la para qualquer outra tarefa.
For i=1 to 12
y = z / i
If y > b Then Exit For
newvar = y
Next
Nossa, muito boa ideia!!! Não sei como não pensei nisso antes, mas que bom que perguntei aqui! Obrigado pela ajuda!!
com assim um FOR não tem numero definido? então não é um FOR
explique melhor