Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal, tudo bem ?
Estou com um probleminha bem chato que não faço ideia como resolver... Espero que me ajudem! Agradeço desde já.
Vamos lá.
Preciso fazer um calculo com a seguinte expressão:** (ValorAtual/100*10)+parseFloat(ValorAtual)-parseFloat(Saque)+parseFloat(Deposito);**
Até o momento estou obtendo sucesso com a expressão acima. Agora vem o problema.
Após eu obter o resultado da expressão acima, eu preciso substituir a variável ValorAtual com o resultado do mesmo, isso 12 vezes. (12 meses).
Não sei se ficou muito bem explicado, porem eu preciso fazer essa função com valores já definidos e as próximas 12 vezes com valores a definir ou 0.
Vou fazer uma nova explicação com os códigos comentados:
**var ValorAtual = 1000;**
**var Saque = 0; // zero seria o padrão, eu poderia adicionar valores diferentes. (para cada mês, se possivel).**
**var Deposito = 0; // zero seria o padrão, eu poderia adicionar valores diferentes. (para cada mês, se possivel)..**
**var resultado = (ValorAtual/100*10)+parseFloat(ValorAtual)-parseFloat(Saque)+parseFloat(Deposito);**
**Preciso recuperar o primeiro resultado, no exemplo acima seria: 1100**
**Então após recuperar o valor acima, eu precisaria substituir o ValorAtual para 1100.**
**Isso, 12 vezes... Recuperando o valor e substituindo como se fosse um calculo de juros mensais (12 meses).**
Tentei fazer com while mas não obtive exito. Estou parado com a função simples que detalhei acima. Obrigado.
Espero tenham entendido e agradeço desde já!@Felipe Guedes Coutinho Muito obrigado pela resposta, eu utilizei o FOR com a expressão que eu criei e acabou dando certo.
Vou tentar explicar melhor sobre o meses.
Oque eu estou querendo fazer é um sistema de simulação de rendimento, onde o 10% do ValorAtual é somado com ele mesmo, subtraído o valor que você sacou/retirou e adicionando o valor que depositou/entrou.
Os valores de Saque e Deposito seriam adicionados via HTML/INPUT.
Em uma página html tenho 12 quadros que mostram os 12 meses, dentro desses quadros existem 2 campos, SAQUE E DEPOSITO onde eu posso deixar em branco e utilizar o valor 0 ou preencher. Caso preencher alterar os valores seguintes.
O resultado utilizando dessa forma:
for(var i = 0; i < 13; i++){
var resultado = (parseFloat(valoratual)/100*10)+parseFloat(valoratual)-parseFloat(saquev)+parseFloat(depositov);
valoratual = resultado;
console.log(valoratual); //retorna os 12 valores corretamente.
};
Como podemos ver acima, os valores de cada mês, se dependem. Ou seja, eu não sei de que forma eu possa gerar os 12 valores onde eu posso alterar os dados SAQUE E DEPOSITO do mês e eles se atualizarem. um exemplo abaixo:
Utilizando a função acima o resultado será (exemplo);
Valor Atual: 10
Saque: 10
Deposito: 10
Janeiro - Resultado: 11
Fevereiro - Resultado: 12.1
Março - Resultado: 13.3
Abril - Resultado: 14.6
Maio - Resultado: 16.1 (Caso eu alterar os valores de SAQUE e DEPOSITO a partir desse resultado os demais abaixo, atualizam pois o resultado final será outro, e o mês abaixo calcula conforme o resultado final desse mês.).
Junho - Resultado: 17.7
Julho - Resultado: 19.4
Agosto - Resultado: 21.4
Setembro - Resultado: 23.5
Outubro - Resultado: 25.9
Novembro - Resultado: 28.5
Dezembro - Resultado: 31.3
Cada mês teria seu Valor de SAQUE E DEPOSITO, porem os resultados finais tem que se encontrar. O resultado final do mes de janeiro é o valoratual para o mês de fevereiro e assim vai...
é dificil explicar, porem ao entender fica mais facil.
Eu não faço ideia como fazer.
Obrigado, se tiver ficado muito confuso não precisa quebrar a cabeça pra tentar entender não kkkk Obrigado!Pitag346
Fala ai fera, vou te ser sincero, foi um pouco complicado entender o que você precisa, mas no final das contas eu consegui entender ou pelo menos eu acho que consegui.
Vamos lá, primeiro, o que parece é que você quer fazer um Simulador de Juros em uma conta e dependendo do valor do Saque ou do Deposito os meses seguintes precisam refletir essas ações, estou certo?
Então assim, por você não ter disponibilizado nenhum código, tomei a liberdade de fazer algo do começo ao fim.
Por favor, se você testar e for algo relevante, não deixe de me agradecer, afinal de contas levei um tempo para tentar fazer algo para que você possa aproveitar. o código ficou um pouco extenso e complexo para quem não entende de JavaScript.
Segue o código, LEIA AS REGRAS PARA PODER USAR O CÓDIGO DA MELHOR MANEIRA, pois não existem todos os tratamentos, está bem "crú" o código.
<style>
table {
border-collapse: separate;
border-spacing: 1px 8px;
margin-top: -8px;
} border: 1px solid #97B0E6;
border-left-width: 0;
min-width: 120px;
height: 18px;
} border-left-width: 1px;
}
textarea, input, select {
box-shadow: 0 0 0 0;
border: 0 none;
outline: 0;
} color: #97B0E6 !important;
} box-shadow: 0 1px 3px rgba(0, 0, 255, 0.12), 0 1px 2px rgba(0, 0, 255, 0.24);
} box-shadow: 0 2px 5px 0 rgba(0, 0, 255, 0.16), 0 2px 10px 0 rgba(0, 0, 255, 0.12);
} transition: all .3s ease-out;
transition-property: all;
transition-duration: .3s;
transition-timing-function: ease-out;
} background-color: #FFFFFF;
text-align: center
border: 0;
padding: 0px;
width: 70px;
height: 20px;
display: inline-block;
margin: 5px;
cursor: pointer;
border-radius: 4px;
}
</style>
<script>
function clearCampos() {
for (var i = 1; i <= 12; i++) {
document.getElementById('m'+i).value = " ";
document.getElementById('s'+i).value = " ";
document.getElementById('d'+i).value = " ";
}
}
function AtivarValor() {
clearCampos();
var valorMes = document.getElementById('st').value;
var sizeMes = document.getElementById('st').value.length;
if(sizeMes == 0) {
valorMes = 0.00;
} else {
while (valorMes.indexOf(".") >= 0) { valorMes = valorMes.replace(".", ""); }
valorMes = valorMes.replace(',', '.');
};
var juros = parseFloat(valorMes) * (parseFloat(document.getElementById('taxaJuros').value) / 100 );
for (var i = document.getElementById('MesAtivar').value; i < 13; i++) {
//Calcula juros de 10% em cima do valor digitado.
var calc_total = parseFloat(valorMes) * (1 + parseFloat(document.getElementById('taxaJuros').value) / 100 );
//Novo Valor do Mês.
valorMes = calc_total;
//Realiza tratamento na variável para colocar
//pontos das casas de milhares
//virgual das casas de decimais.
var numero = calc_total.toFixed(2).split('.');
numero[0] = numero[0].split(/(?=(?:...)*$)/).join('.');
//Atribui resultado para os campos.
document.getElementById('m'+i).value = numero;
};
};
function SaqueMes() {
if (document.getElementById('MesAcionar').value >= 1 && document.getElementById('MesAcionar').value <= 6) {
document.getElementById('SaqueText1').style.visibility='visible';
document.getElementById('SaqueText1').style.display='';
document.getElementById('SaqueSaldo1').style.visibility='visible';
document.getElementById('SaqueSaldo1').style.display='';
};
if (document.getElementById('MesAcionar').value >= 7 && document.getElementById('MesAcionar').value <= 12) {
document.getElementById('SaqueText2').style.visibility='visible';
document.getElementById('SaqueText2').style.display='';
document.getElementById('SaqueSaldo2').style.visibility='visible';
document.getElementById('SaqueSaldo2').style.display='';
};
document.getElementById('s'+document.getElementById('MesAcionar').value).value = document.getElementById('s0').value;
var valorSaque = document.getElementById('s0').value;
var sizeSaque = document.getElementById('s0').value.length;
if(sizeSaque == 0) {
valorSaque = 0.00;
} else {
while (valorSaque.indexOf(".") >= 0) { valorSaque = valorSaque.replace(".", ""); }
valorSaque = valorSaque.replace(',', '.');
};
var valorMesSacado = document.getElementById('m'+document.getElementById('MesAcionar').value).value;
var sizeMesSacado = document.getElementById('s0').value.length;
if(sizeMesSacado == 0) {
valorMesSacado = 0.00;
} else {
while (valorMesSacado.indexOf(".") >= 0) { valorMesSacado = valorMesSacado.replace(".", ""); }
valorMesSacado = valorMesSacado.replace(',', '.');
};
var saqueMes = document.getElementById('MesAcionar').value;
var saldo = parseFloat(valorMesSacado) - parseFloat(valorSaque);
var valorMes = saldo;
var numero = saldo.toFixed(2).split('.');
numero[0] = numero[0].split(/(?=(?:...)*$)/).join('.');
document.getElementById('m'+document.getElementById('MesAcionar').value).value = numero;
for (var i = parseFloat(document.getElementById('MesAcionar').value) + 1; i <= 12; i++) {
//Calcula juros de 10% em cima do valor digitado.
var calc_total = parseFloat(valorMes) * (1 + parseFloat(document.getElementById('taxaJuros').value) / 100 );
//Novo Valor do Mês.
valorMes = calc_total;
//Realiza tratamento na variável para colocar
//pontos das casas de milhares
//virgual das casas de decimais.
var numero = calc_total.toFixed(2).split('.');
numero[0] = numero[0].split(/(?=(?:...)*$)/).join('.');
//Atribui resultado para os campos.
document.getElementById('m'+i).value = numero;
};
};
function DepositoMes() {
if (document.getElementById('MesAcionar').value >= 1 && document.getElementById('MesAcionar').value <= 6) {
document.getElementById('DepositoText1').style.visibility='visible';
document.getElementById('DepositoText1').style.display='';
document.getElementById('DepositoSaldo1').style.visibility='visible';
document.getElementById('DepositoSaldo1').style.display='';
};
if (document.getElementById('MesAcionar').value >= 7 && document.getElementById('MesAcionar').value <= 12) {
document.getElementById('DepositoText2').style.visibility='visible';
document.getElementById('DepositoText2').style.display='';
document.getElementById('DepositoSaldo2').style.visibility='visible';
document.getElementById('DepositoSaldo2').style.display='';
};
document.getElementById('d'+document.getElementById('MesAcionar').value).value = document.getElementById('d0').value;
var valorDeposito = document.getElementById('d0').value;
var sizeDeposito = document.getElementById('d0').value.length;
if(sizeDeposito == 0) {
valorDeposito = 0.00;
} else {
while (valorDeposito.indexOf(".") >= 0) { valorDeposito = valorDeposito.replace(".", ""); }
valorDeposito = valorDeposito.replace(',', '.');
};
var valorMesDepositado = document.getElementById('m'+document.getElementById('MesAcionar').value).value;
var sizeMesDepositado = document.getElementById('d0').value.length;
if(sizeMesDepositado == 0) {
valorMesDepositado = 0.00;
} else {
while (valorMesDepositado.indexOf(".") >= 0) { valorMesDepositado = valorMesDepositado.replace(".", ""); }
valorMesDepositado = valorMesDepositado.replace(',', '.');
};
var depositoMes = document.getElementById('MesAcionar').value;
var saldo = parseFloat(valorMesDepositado) + parseFloat(valorDeposito);
var valorMes = saldo;
var numero = saldo.toFixed(2).split('.');
numero[0] = numero[0].split(/(?=(?:...)*$)/).join('.');
document.getElementById('m'+document.getElementById('MesAcionar').value).value = numero;
for (var i = parseFloat(document.getElementById('MesAcionar').value) + 1; i <= 12; i++) {
//Calcula juros de 10% em cima do valor digitado.
var calc_total = parseFloat(valorMes) * (1 + parseFloat(document.getElementById('taxaJuros').value) / 100 );
//Novo Valor do Mês.
valorMes = calc_total;
//Realiza tratamento na variável para colocar
//pontos das casas de milhares
//virgual das casas de decimais.
var numero = calc_total.toFixed(2).split('.');
numero[0] = numero[0].split(/(?=(?:...)*$)/).join('.');
//Atribui resultado para os campos.
document.getElementById('m'+i).value = numero;
};
};
function DescMesAtivar() {
if (document.getElementById('MesAtivar').value == 1) {
document.getElementById("DescMesAtivar").innerHTML = 'Janeiro';
};
if (document.getElementById('MesAtivar').value == 2) {
document.getElementById("DescMesAtivar").innerHTML = 'Fevereiro';
};
if (document.getElementById('MesAtivar').value == 3) {
document.getElementById("DescMesAtivar").innerHTML = 'Março';
};
if (document.getElementById('MesAtivar').value == 4) {
document.getElementById("DescMesAtivar").innerHTML = 'Abril';
};
if (document.getElementById('MesAtivar').value == 5) {
document.getElementById("DescMesAtivar").innerHTML = 'Maio';
};
if (document.getElementById('MesAtivar').value == 6) {
document.getElementById("DescMesAtivar").innerHTML = 'Junho';
};
if (document.getElementById('MesAtivar').value == 7) {
document.getElementById("DescMesAtivar").innerHTML = 'Julho';
};
if (document.getElementById('MesAtivar').value == 8) {
document.getElementById("DescMesAtivar").innerHTML = 'Agosto';
};
if (document.getElementById('MesAtivar').value == 9) {
document.getElementById("DescMesAtivar").innerHTML = 'Setembro';
};
if (document.getElementById('MesAtivar').value == 10) {
document.getElementById("DescMesAtivar").innerHTML = 'Outubro';
};
if (document.getElementById('MesAtivar').value == 11) {
document.getElementById("DescMesAtivar").innerHTML = 'Novembro';
};
if (document.getElementById('MesAtivar').value == 12) {
document.getElementById("DescMesAtivar").innerHTML = 'Dezembro';
};
};
function DescMesAcionar() {
if (document.getElementById('MesAcionar').value == 1) {
document.getElementById("DescMesAcionar").innerHTML = 'Janeiro';
};
if (document.getElementById('MesAcionar').value == 2) {
document.getElementById("DescMesAcionar").innerHTML = 'Fevereiro';
};
if (document.getElementById('MesAcionar').value == 3) {
document.getElementById("DescMesAcionar").innerHTML = 'Março';
};
if (document.getElementById('MesAcionar').value == 4) {
document.getElementById("DescMesAcionar").innerHTML = 'Abril';
};
if (document.getElementById('MesAcionar').value == 5) {
document.getElementById("DescMesAcionar").innerHTML = 'Maio';
};
if (document.getElementById('MesAcionar').value == 6) {
document.getElementById("DescMesAcionar").innerHTML = 'Junho';
};
if (document.getElementById('MesAcionar').value == 7) {
document.getElementById("DescMesAcionar").innerHTML = 'Julho';
};
if (document.getElementById('MesAcionar').value == 8) {
document.getElementById("DescMesAcionar").innerHTML = 'Agosto';
};
if (document.getElementById('MesAcionar').value == 9) {
document.getElementById("DescMesAcionar").innerHTML = 'Setembro';
};
if (document.getElementById('MesAcionar').value == 10) {
document.getElementById("DescMesAcionar").innerHTML = 'Outubro';
};
if (document.getElementById('MesAcionar').value == 11) {
document.getElementById("DescMesAcionar").innerHTML = 'Novembro';
};
if (document.getElementById('MesAcionar').value == 12) {
document.getElementById("DescMesAcionar").innerHTML = 'Dezembro';
};
};
</script>
<table border="0" bordercolor="#97B0E6">
<tr>
<td colspan="3">
Saldo R$ <input type="text" id="st" size="100" tabindex="1" value="10,00" placeholder="Seguir sempre o padrão da moeda Brasileira R$ 1.000,00" autofocus>
</td>
<td colspan="1">
Mês:
<select id="MesAtivar" tabindex="2" onchange="DescMesAtivar()">
<option selected>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
<option>7</option>
<option>8</option>
<option>9</option>
<option>10</option>
<option>11</option>
<option>12</option>
</select><label id="DescMesAtivar">Janeiro</label>
</td>
<td colspan="1">Taxa Juros: <input type="text" id="taxaJuros" tabindex="3" placeholder="Taxa sempre com ponto ou 2 ou 2.5 sem %." value="10" ></td>
<td><button type="submit" onclick="AtivarValor()" tabindex="4" >Ativar</button></td>
</tr>
</tr>
<td colspan="2">Mês:
<select id="MesAcionar" tabindex="5" onchange="DescMesAcionar()">
<option selected>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
<option>7</option>
<option>8</option>
<option>9</option>
<option>10</option>
<option>11</option>
<option>12</option>
</select><label id="DescMesAcionar">Janeiro</label>
</td>
<td colspan="2">Saque R$ <input type="text" id="s0" placeholder="Seguir sempre o padrão da moeda Brasileira R$ 1.000,00" value="1,00" tabindex="6" >
<button type="submit" onclick="SaqueMes()" tabindex="7" >Sacar</button></td>
<td colspan="2">Deposito R$ <input type="text" id="d0" placeholder="Seguir sempre o padrão da moeda Brasileira R$ 1.000,00" value="1,00" tabindex="8" >
<button type="submit" onclick="DepositoMes()" tabindex="9" >Depositar</button></td>
</tr>
<tr><th colspan="6" align="left">Resultados</th></tr>
<tr>
<td width="20%">Janeiro</td>
<td width="20%">Fevereiro</td>
<td width="20%">Março</td>
<td width="20%">Abril</td>
<td width="20%">Maio</td>
<td width="20%">Junho</td>
</tr>
<tr>
<td>R$ <input type="text" id="m1" readonly></td>
<td>R$ <input type="text" id="m2" readonly></td>
<td>R$ <input type="text" id="m3" readonly></td>
<td>R$ <input type="text" id="m4" readonly></td>
<td>R$ <input type="text" id="m5" readonly></td>
<td>R$ <input type="text" id="m6" readonly></td>
</tr>
<tr id="SaqueText1" style="visibility:hidden;display:none">
<td>Saque Janeiro</td>
<td>Saque Fevereiro</td>
<td>Saque Março</td>
<td>Saque Abril</td>
<td>Saque Maio</td>
<td>Saque Junho</td>
</tr>
<tr id="SaqueSaldo1" style="visibility:hidden;display:none">
<td>R$ <input type="text" id="s1" readonly ></td>
<td>R$ <input type="text" id="s2" readonly ></td>
<td>R$ <input type="text" id="s3" readonly ></td>
<td>R$ <input type="text" id="s4" readonly ></td>
<td>R$ <input type="text" id="s5" readonly ></td>
<td>R$ <input type="text" id="s6" readonly ></td>
</tr>
<tr id="DepositoText1" style="visibility:hidden;display:none">
<td>Deposito Janeiro</td>
<td>Deposito Fevereiro</td>
<td>Deposito Março</td>
<td>Deposito Abril</td>
<td>Deposito Maio</td>
<td>Deposito Junho</td>
</tr>
<tr id="DepositoSaldo1" style="visibility:hidden;display:none">
<td>R$ <input type="text" id="d1" readonly ></td>
<td>R$ <input type="text" id="d2" readonly ></td>
<td>R$ <input type="text" id="d3" readonly ></td>
<td>R$ <input type="text" id="d4" readonly ></td>
<td>R$ <input type="text" id="d5" readonly ></td>
<td>R$ <input type="text" id="d6" readonly ></td>
</tr>
<tr>
<td>Julho</td>
<td>Agosto</td>
<td>Setembro</td>
<td>Outubro</td>
<td>Novembro</td>
<td>Dezembro</td>
</tr>
<tr>
<td>R$ <input type="text" id="m7" readonly></td>
<td>R$ <input type="text" id="m8" readonly></td>
<td>R$ <input type="text" id="m9" readonly></td>
<td>R$ <input type="text" id="m10" readonly></td>
<td>R$ <input type="text" id="m11" readonly></td>
<td>R$ <input type="text" id="m12" readonly></td>
</tr>
<tr id="SaqueText2" style="visibility:hidden;display:none">
<td>Saque Julho</td>
<td>Saque Agosto</td>
<td>Saque Setembro</td>
<td>Saque Outubro</td>
<td>Saque Novembro</td>
<td>Saque Dezembro</td>
</tr>
<tr id="SaqueSaldo2" style="visibility:hidden;display:none">
<td>R$ <input type="text" id="s7" readonly ></td>
<td>R$ <input type="text" id="s8" readonly ></td>
<td>R$ <input type="text" id="s9" readonly ></td>
<td>R$ <input type="text" id="s10" readonly ></td>
<td>R$ <input type="text" id="s11" readonly ></td>
<td>R$ <input type="text" id="s12" readonly ></td>
</tr>
<tr id="DepositoText2" style="visibility:hidden;display:none">
<td>Deposito Julho</td>
<td>Deposito Agosto</td>
<td>Deposito Setembro</td>
<td>Deposito Outubro</td>
<td>Deposito Novembro</td>
<td>Deposito Dezembro</td>
</tr>
<tr id="DepositoSaldo2" style="visibility:hidden;display:none">
<td>R$ <input type="text" id="d7" readonly ></td>
<td>R$ <input type="text" id="d8" readonly ></td>
<td>R$ <input type="text" id="d9" readonly ></td>
<td>R$ <input type="text" id="d10" readonly ></td>
<td>R$ <input type="text" id="d11" readonly ></td>
<td>R$ <input type="text" id="d12" readonly ></td>
</tr>
</table>
***Regras.***
-
Para o valor de ativação se você for usar casas decimais, nunca colocar PONTO no lugar da VIRGULA exemplo 10.00 (NÃO) 10,00 (SIM). pois fiz um tratamento para que o JavaScript faça o calculo corretamente, você ainda pode usar o ponto caso tenha casas de milhar como por exemplo o valor 1.000.000,00 mas caso use o ponto para as casas de decimais, não esquecer que para as casas de decimais deve por virgula, pois ele não entende VIRGULA como separador de casas decimais, essa regra você deve usar para o VALOR DE ATIVAÇÃO, VALOR DE SAQUE e VALOR DE DEPOSITO.
-
Para o valor de TAXA DE JUROS, não colocar VIRGULA. apenas PONTO. exemplo de taxa de juros de 2,5% você deve colocar 2.5 apenas.
-
Recomendo você a copiar o código em um arquivo e abrir. para o seu primeiro teste clique apenas nos botões, ATIVAR, depois SAQUE e depois DEPOSITO, pois já coloquei valores iniciais nos campos para os cálculos como exemplo. Feito isso, brinque com os MESES DE ATIVAÇÃO. altere o mês para se iniciar em um mês diferente de 1 Janeiro. é uma simulação caso a pessoa abra uma conta poupança em um mês qualquer.
-
Depois altere o MÊS DE AÇÃO DA CONTA que corresponde ao SAQUE e ao DEPOSITO e clique nos botões para efetuar o saque no mês selecionado e o deposito no mês selecionado, você pode alterar os meses para cada botão.
-
Os valores de SAQUE e DEPOSITO iram aparecer em uma linha no referido mês.
Claro que existem coisas a se fazer, mas acho que isso é mais ou menos o que eu entendi sobre a sua necessidade e atende a regra que você pediu:
"Maio - Resultado: 16.1 (Caso eu alterar os valores de SAQUE e DEPOSITO a partir desse resultado os demais abaixo, atualizam pois o resultado final será outro, e o mês abaixo calcula conforme o resultado final desse mês.)."
Eu espero ter ajudado, foi um desafio legal de se fazer e brincar, até eu vou guardar esse código, pois achei que ficou bacana para se brincar.
Se você por acaso conseguir usar o meu código e melhorar de acordo com a sua necessidade, vou te pedir que compartilhe com todos aqui, combinado? Valeu.
** PRECISO DE AJUDA - Vejá meu problema aqui [Problemas com SELECT](/topic/584129-select-de-3-tabelas-sem-relacionamento-com-sum-com-range-de-data/?tab=comments#comment-2282365)*
Espero ter ajudado de alguma forma.
Att***Felipe Guedes Coutinho***@Felipe Guedes Coutinho , perdão pela demora amigo. Acabei ficando sem acesso a internet.
Muito obrigado mesmo, solucionou meu problema! e ACHEI SEU CÓDIGO INCRÍVEL!
por algum motivo não estou conseguindo reagir ao post!
Mas eu agradeço muito.
Pitag346
Não ficou muito bem explicadoo que você precisa.
Porém pelo o que entendi você precisa atualizar o valorAtual com o novo calor calculado após expressão, certo?
Basta você atribuir o resultado para o valorAtual