Calcular elementos de um vetor em Javascript

25/04/2022

0

Olá, Boa tarde!
Eu estou com dificuldade em chamar os elementos de um vetor de uma função chamada calculo1, calculo2 e calculo3 e usar na função calcular.
Alguém sabe como posso fazer isso?

Segue o código:
function calcula(parm) {
var retorno = 0;

return retorno
}

function calculo1() {
e1 = [1,1,0]
resposta = calcula(e1);
document.getElementById('resposta1').innerHTML = resposta;
}

function calculo2() {
e2 = [1,3,1]
resposta = calcula(e2);
document.getElementById('resposta2').innerHTML = resposta;
}

function calculo3() {
e3 = [2,2,3]
resposta = calcula(e3);
document.getElementById('resposta3').innerHTML = resposta;
}
John

John

Responder

Posts

26/04/2022

Diego Marinho

Você quer calcular os valores do array usando a função "calcula()", e chamar essa função dentro "calculo1()" , "calculo2()" , "calculo3()" ?
Exemplo :
function calculo3() {
e3 = [2,2,3]
resposta = calcula(e3);
document.getElementById('resposta3').innerHTML = resposta;
}
que seria : 2 + 2 + 3 = 7

Se for isso :
Você não precisa fazer uma função pra cada calculo . Existe um conceito na programação que consiste em usar uma mesma função em diversas situações, quando for possível.
Com isso. Seria interessante você pensar da seguinte forma:


e1 = [1,1,0]
e2 = [1,3,1]
e3 = [2,2,3]


function calculo(x){
    return x.reduce((a,b)=>a+b,0)
}

function calculoOutput(a, query){
    document.querySelector(query).textContent = calculo(a)
}

calculoOutput(e1 ,'#resposta1')
calculoOutput(e2 ,'#resposta2')
calculoOutput(e3 ,'#resposta3')




Note que o parâmetro "query" da função "calculoOutput()" se refere ao nome do elemento do HTML onde você quer que exiba o resultado .
Como no seu código você usa ids para se referir aos elementos que reproduzirão o resultado , é necessário o uso do símbolo (#) à frente de "resposta1", "resposta2", "resposta3". Se utilizasse classes seria o ponto (.)
A estrutura do algoritmo ficou divido em duas partes, uma função para calcular e outra pra exibir no display.
Responder

26/04/2022

John

Você quer calcular os valores do array usando a função "calcula()", e chamar essa função dentro "calculo1()" , "calculo2()" , "calculo3()" ?
Exemplo :
function calculo3() {
e3 = [2,2,3]
resposta = calcula(e3);
document.getElementById('resposta3').innerHTML = resposta;
}
que seria : 2 + 2 + 3 = 7

Se for isso :
Você não precisa fazer uma função pra cada calculo . Existe um conceito na programação que consiste em usar uma mesma função em diversas situações, quando for possível.
Com isso. Seria interessante você pensar da seguinte forma:


e1 = [1,1,0]
e2 = [1,3,1]
e3 = [2,2,3]


function calculo(x){
    return x.reduce((a,b)=>a+b,0)
}

function calculoOutput(a, query){
    document.querySelector(query).textContent = calculo(a)
}

calculoOutput(e1 ,'#resposta1')
calculoOutput(e2 ,'#resposta2')
calculoOutput(e3 ,'#resposta3')




Note que o parâmetro "query" da função "calculoOutput()" se refere ao nome do elemento do HTML onde você quer que exiba o resultado .
Como no seu código você usa ids para se referir aos elementos que reproduzirão o resultado , é necessário o uso do símbolo (#) à frente de "resposta1", "resposta2", "resposta3". Se utilizasse classes seria o ponto (.)
A estrutura do algoritmo ficou divido em duas partes, uma função para calcular e outra pra exibir no display.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar