Oi Pedro,
Você pode postar o seu código pra gente te ajudar no problema fazendo favor?
<meta charset= "utf=8">
<script>
function pulaLinha(){
document.write("<br>");
}
function mostra(frase){
document.write(frase);
pulaLinha()
}
function soma(a,b,c,d){
mostra(a+b+c+d);
return mostra()
}
var prova= parseInt(prompt("quantos ponto vc fez na 1º prova?"));
var prova2= parseInt(prompt("quantos pontos vc fez na 2º prova?"));
var prova3= parseInt(prompt("quantos pontos vc fez na 3º prova"));
var prova4= parseInt(prompt("quantos pontos vc fez na 4º prova"));
var total = soma(prova,prova2,prova3,prova4);
var pontos = 240
if (total < pontos){
mostra("vc está reprovado.");
}
if (total > pontos){
mostra("vc passou de ano");
}
if (total ==pontos){
mostra("vc passou por pouco, agradeça a deus.");
}
mostra("deus é fiel");
</script>
Bom dia @Pedro.
Segue abaixo o código com o que poderia estar dando errado no seu código, está comentado a parte original e a solução que seria mais cabível para seu código.
<meta charset= "utf=8">
<script>
function pulaLinha(){
document.write("<br>");
}
function mostra(frase){
document.write(frase);
pulaLinha()
}
// Original
/*
function soma(a,b,c,d){
mostra(a+b+c+d);
return mostra()
}
*/
// Solução
function soma(a,b,c,d){
return a+b+c+d;
}
var prova= parseInt(prompt("quantos ponto vc fez na 1º prova?"));
var prova2= parseInt(prompt("quantos pontos vc fez na 2º prova?"));
var prova3= parseInt(prompt("quantos pontos vc fez na 3º prova"));
var prova4= parseInt(prompt("quantos pontos vc fez na 4º prova"));
var pontos = 240;
var total = soma(prova,prova2,prova3,prova4);
// Aqui mostra a variável total recebendo o retorno da função soma
mostra("Pontos: " + total);
if (total < pontos){
mostra("vc está reprovado.");
}
if (total > pontos){
mostra("vc passou de ano");
}
if (total == pontos){
mostra("vc passou por pouco, agradeça a deus.");
}
</script>
A situação é que quando você criou a função de somar você pediu para que a função mostrasse para você a soma e fez o retorno da função mostra vazio, o que estaria fazendo retornar um "undefined" e não executar os ifs, pois não se encontra o valor para fazer as condições acontecerem.
Então logo a melhor forma de arrumar isso foi, pedindo na função soma o retorno do valor e guardando ela na variável total para assim fazer as condicionais executarem da forma correta.
obg David...