Exercício 7: Colocando limites

Colocando limites

Vamos fazer um stop no nosso caminho e olhemos as funções Math.max e Math.min, que podem nos economizar mais trabalho do que parece.

Precisamos de uma função que diga quanto dinheiro fica na sua conta (que tem um determinado saldo) se você extrai uma quantia de dinheiro.

// o saldo é $100, a quantidade a extrair, $30
 extrair(100, 30) 
70 //ficam $70 ($100 - $30 =  $70) 

Mas, como não queremos que você fique em negativo, se o valor a ser extraído for maior que o saldo, nosso saldo deve ficar em zero.

 extrair(100, 120)
0 //Ups, queríamos extrair mais dinheiro do que tínhamos.
  //Ficamos com $0

Como você pode ver, isso é quase uma subtração entre saldo e quantidade, com a exceção de que estamos colocando um limite inferior: não pode dar menos de zero.

Em outras palavras (prepare-se!, isso pode explodir sua cabeça ) extrair devolve o máximo entre a subtração saldo - quantidade e 0.

Você se anima a completar a solução que está no editor?

Dá-me uma dica!

Você não está convencido de que o valor máximo entre o saldo - monto e 0 resolva nosso problema? Compare esses exemplos com os dois anteriores:

 Math.max(100 - 30, 0)
70 // dá o máximo entre 70 e 0, que é 70  

 Math.max(100 - 120, 0)
0 // dá o máximo entre -20 e 0, que é 0

Você deve fazer o login antes de começar a enviar suas soluções

Opa! Sua solução não pode ser executada

  • Verifique se o seu programa não possui recursão ou um loop infinito
  • Verifique se você tem uma conexão com a internet
  • Espere um pouco e tente novamente

Estamos processando sua solução

Se não mostrar automaticamente em alguns segundos, pressione F5