Respostas no Fórum
-
AutorPosts
-
Luiz Eduardo Araujo
ParticipanteSimm show demais, eu apanhei pra fazer e consegui entender o que rolou por trás graças a pergunta porque fiquei testando e pesquisando ehueuhe, obrigado mano <3
Luiz Eduardo Araujo
ParticipanteNo meu caso só não se encaixou por que a partir do laço com a posição 0 ele já usaria o valor passado no NUM pro total… por exemplo:
var sumI = 0
var total = 0for (var i = 0; i <= num; i++){
sumI += i
total = num + sumI
}Vamos supor que eu passe o valor 2 pro num, ele faria o seguinte:
0 é menor ou igual a 2? Sim, então sumI = 0 + 0, total = 2 + 0.
1 é menor ou igual a 2? Sim, então sumI = 0 + 1, total = 2 + 1.
2 é menor ou igual a 2? Sim, então sumI = 1 + 2, total = 2 + 3.Sendo assim mesmo percorrendo a posição 0 ele adicionou o valor de Num no total, o que não acontece na outra função:
var total = 0
for (var i = 0; i <= num; i++){
total += i
}Supondo de novo o valor 2 para o num:
0 é menor ou igual a 2? Sim, então total = 0 + 0, total = 0.
1 é menor ou igual a 2? Sim, então total = 0 + 1, total = 1.
2 é menor ou igual a 2? Sim, então total = 1 + 2, total = 3.—————————————————————————————–
Conclusão: Na função de cima ele só daria errado se eu usasse o <= começando pela posição 0 porque ele já sai desse ponto de partida com o valor de num adicionado no total. É mais ou menos isso ashusahu
Luiz Eduardo Araujo
ParticipanteNa real, pelo teste que fiz aqui no vscode, esse último e penúltimo que mandei tanto faz inicializar por 0 ou por 1 até porque se inicializar por 0 ele vai fazer total = total + i, e nesse caso ambos são zero então daria na mesma uheuehhue
Luiz Eduardo Araujo
ParticipanteJá se por acaso nós começarmos com o 0 no contador e passar o parâmetro do for de i <= num ai poderíamos realmente fazer da forma que você falou que ficaria assim:
function sum(num){
var total = 0
for (var i = 0; i <= num; i++){
total += i
}
return total
}console.log(sum(5))
Luiz Eduardo Araujo
Participantesobre o <=, seria necessário apenas se o contador inicializasse a partir do número 1, já se inicializarmos do número 0 não tem problemas utilizarmos apenas o <
Luiz Eduardo Araujo
ParticipanteNão entendi muito bem a dúvida mas vou tentar explicar a lógica:
a função é justamente pra receber o Num que será o valor passado no console.log(NomeDaFunção(NUM)), exemplo se eu fizer um console.log(sum(5)), ele fará o seguinte:
Minha posição que foi declarada como a variável I será percorrida até o valor 4 (< num). Todo o valor adquirido através desse contador ele somará no sumI, ou seja, 1+2+3+4 logo terá o valor 10 na variável sumI.
Após isso juntamos os valores na variável total que será = 5 (num) + 10 (sumI).
No final da função é dado o retorno do total que será igual 15.
—————————————————————————-Também consegui chegar a solução dessa forma:
function sum(number){
var total = 0for(var i = 1; i <= number; i++){
total += i;
}
return total;
}
console.log(sum(5))Luiz Eduardo Araujo
ParticipanteCara quebrei cabeça aqui pra fazer kkk, mas acho que deu certo:
function sum(num){
var sumI = 0
var total = 0for (var i = 0; i < num; i++){
sumI += i
total = num + sumI
}return total
}console.log(sum(10))
-
AutorPosts