Não sei o motivo de estar ainda chamando os dois valores juntos. E ainda não aparecer a operação.
import 'dart:io';
void main() {
double numeroUm = 0;
double numeroDois = 0;
String operacao = "";
List<String> operacoes = <String>["+,-,/,*"];
String? entrada = stdin.readLineSync();
void soma() => print("Resultado: ${numeroUm + numeroDois}");
void subtracao() => print("Resultado: ${numeroUm - numeroDois}");
void divisao() => print("Resultado: ${numeroUm / numeroDois}");
void multiplicacao() => print("Resultado: ${numeroUm * numeroDois}");
void calcular() {
switch (operacao) {
case "+":
soma();
break;
case "-":
subtracao();
break;
case "*":
multiplicacao();
break;
case "/":
divisao();
break;
default:
print("Operação inválida");
}
}
void getOperacao() {
print("Digite uma operação");
entrada = stdin.readLineSync();
if (entrada != null) {
if (operacoes.contains((entrada))) {
operacao = entrada!;
}
}
}
print("Digite o primeiro valor:");
if (entrada != null && entrada != "") {
numeroUm = double.parse(entrada!);
}
print("Digite o segundo valor:");
entrada = stdin.readLineSync();
if (entrada != null && entrada != "") {
numeroDois = double.parse(entrada!);
}
calcular();
}