1
resposta

[Projeto] Apenas para análise

import "dart:io";

void main() {
  double n1 = 0;
  double n2 = 0;
  String operacao = "";
  String? entrada = "";
  List<String> operacoes = <String>["+", "-", "*", "/"];

  void somar() {
    print("Resultado é ${n1 + n2}");
  }

  void subtrair() {
    print("Resultado é ${n1 - n2}");
  }

  void multiplicar() {
    print("Resultado é ${n1 * n2}");
  }

  void dividir() {
    print("Resultado é ${n1 / n2}");
  }

  void calcular() {
    switch (operacao) {
      case "+":
        somar();
        break;
      case "-":
        subtrair();
        break;
      case "*":
        multiplicar();
        break;
      case "/":
        if(n2 != 0){
          dividir();
        } else {
          print("Não pode dividir por 0");
        }
        break;
      default:
        print("Opção inválida!");
        break;
    }
  }

  void getOperacao() {
    print("Digite o operador (+, -, *, /)");
    entrada = stdin.readLineSync();
    if(entrada != null && operacoes.contains(entrada)){
      operacao = entrada!;
    }
  }


  print("Digite o primeiro número");

  entrada = stdin.readLineSync();

  if (entrada != null && entrada != "") {
    n1 = double.parse(entrada!);
  }

  getOperacao();

  print("Digite o segundo número");

  entrada = stdin.readLineSync();

  if (entrada != null && entrada != "") {
    n2 = double.parse(entrada!);
  }

  calcular();
}
1 resposta

Olá, Victor! Tudo bem?

Parabéns pelo código! Ficou excelente a organização e a lógica aplicada.

Continue firme praticando Dart!

Bons estudos!

Sucesso

Imagem da comunidade