1
resposta

[Desafio 03]

Programa de calculadora simples com funções separadas para adição, subtração, multiplicação e divisão:

function adicao(a, b) {
  return a + b;
}

function subtracao(a, b) {
  return a - b;
}

function multiplicacao(a, b) {
  return a * b;
}

function divisao(a, b) {
  if (b !== 0) {
    return a / b;
  } else {
    return 'Error: Divisão por zero';
  }
}

function calculadora(a, b, operacao) {
  switch (operacao) {
    case 'adicao':
      return adicao(a, b);
    case 'subtracao':
      return subtracao(a, b);
    case 'multiplicacao':
      return multiplicacao(a, b);
    case 'divide':
      return divisao(a, b);
    default:
      return 'Operação invalida';
  }
}

// Exemplos de uso:
console.log(calculadora(10, 5, 'adicao')); // 15
console.log(calculadora(10, 5, 'subtracao')); // 5
console.log(calculadora(10, 5, 'multiplicacao')); // 50
console.log(calculadora(10, 5, 'divisao')); // 2
1 resposta

Olá, Rodrigo! Como vai?

O código está ótimo, parabéns! Devemos apenas ter atenção a um pequeno detalhe que pode causar um problema: no switch da função calculadora, estamos usando 'divide' em vez de 'divisao', o que faz com que a operação de divisão não seja reconhecida corretamente. Dessa forma, podemos deixar nosso código da seguinte maneira:

function adicao(a, b) {
  return a + b;
}

function subtracao(a, b) {
  return a - b;
}

function multiplicacao(a, b) {
  return a * b;
}

function divisao(a, b) {
  if (b !== 0) {
    return a / b;
  } else {
    return 'Error: Divisão por zero';
  }
}

function calculadora(a, b, operacao) {
  switch (operacao) {
    case 'adicao':
      return adicao(a, b);
    case 'subtracao':
      return subtracao(a, b);
    case 'multiplicacao':
      return multiplicacao(a, b);
    case 'divisao': // Corrigido aqui
      return divisao(a, b);
    default:
      return 'Operação invalida';
  }
}

// Exemplos de uso:
console.log(calculadora(10, 5, 'adicao')); // 15
console.log(calculadora(10, 5, 'subtracao')); // 5
console.log(calculadora(10, 5, 'multiplicacao')); // 50
console.log(calculadora(10, 5, 'divisao')); // 2

Espero ter ajudado!

Um forte abraço e bons estudos!