La escuela de matemática del Barrio Especial de Nerima está enseñando a sus estudiantes las operaciones aritméticas básicas y requieren una calculadora en Dart que permita a los niños elegidos jugar con estas operaciones.
Por lo que requieren el código fuente de un programa que tenga las siguientes variables:
Con las siguientes funciones:
Al finalizar la ejecución del código debe mostrar el siguiente mensaje dónde 12.2 es el resultado de la operación:
El resultado de la operación es: 12.2
¡Comparte tu código!
Jesús Salvador Rojas Terrones
EstudianteMelvin Salas
ProfesorJuan Carlos Mezquita Gutierrez
EstudianteMelvin Salas
ProfesorJuan Carlos Mezquita Gutierrez
EstudianteCarlos Andres Osorio Diaz
EstudianteMelvin Salas
ProfesorIvan Ezequiel Mazzalay
EstudianteArturo Eddin Saavedra Gómez
EstudianteAlberto Aleman Rocha
Estudianteleandro lion
EstudianteMelvin Salas
ProfesorWilson Huanca Callisaya
EstudianteMelvin Salas
ProfesorAndres Villanueva Tabares
EstudianteMelvin Salas
ProfesorGuillermo Pizarro
EstudianteVidale C.
EstudianteMelvin Salas
ProfesorBrandon Manzo
EstudianteMelvin Salas
ProfesorAnghelo Alexander Pintado Valverde
EstudianteBrahiam Stiven Suarez Sanchez
EstudianteMario Adrián Chavez
EstudianteRenzo Perez Bartra
EstudianteDavid Fernando Sandoval Gomez
EstudianteCristian Roca
EstudianteCristian Roca
EstudianteJ Maycol Valencia
EstudianteBuen día, comparto mi ejercicio
void main() { int valor1 = 2; int valor2 = 4; List<int> valores = [2, 4, 5]; double result = 0; Operacion oper = Operacion.resta; switch (oper) { case Operacion.suma: result = (valor1 + valor2).toDouble(); break; case Operacion.resta: result = (valor1 - valor2).toDouble(); break; case Operacion.multiplicacion: result = (valor1 * valor2).toDouble(); break; case Operacion.modulo: result = (valor1 % valor2).toDouble(); break; case Operacion.factorial: int factorial = 1; int contador = 1; while (contador <= valor1) { factorial *= contador; contador++; } print(factorial); break; case Operacion.sumatoria: for (int i = 0; i < valores.length; i++) { result = result + valores[i]; } print(result); break; case Operacion.producto: result = 1; for (int i = 0; i < valores.length; i++) { result *= valores[i]; } break; default: print("INGRESA VALORES CORRECTOS"); } if (result < 0) { print("$result NEGATIVO"); } else { print("El resultado de la operacion es: $result"); } } enum Operacion { suma, resta, multiplicacion, modulo, factorial, sumatoria, producto }
Perfecto el manejo de los casos borde :D
Excelente :D Tu primera calculadora con Dart?
Calculadora si, pero ya conocia un poco de Dart.
Hola Darters, les comparto mi código:
!Calculadora
Me encanta el resultado, felicidades :D
Les dejo el resultado de mi código:
void main() { int valor1 = 2; int valor2 = 4; List <int> valores = [2, 3, 6]; dynamic resultado = 0; Operacion operacion = Operacion.producto; switch(operacion){ case Operacion.suma: resultado = valor1 + valor2; print(resultado); break; case Operacion.resta: resultado = valor1 - valor2; if (resultado < 0) { print("NEGATIVO"); } break; case Operacion.multiplicacion: resultado = valor1 * valor2; break; case Operacion.modulo: resultado = valor1 % valor2; break; case Operacion.factorial: resultado = 1; for(int i = valor1; i >= 1; i --){ resultado = resultado * i; } break; case Operacion.sumatoria: for(int i = 0; i < valores.length; i++){ resultado += valores[i]; } break; case Operacion.producto: resultado = 1; for(int i = 0; i < valores.length; i++){ resultado *= valores[i]; } break; default: print("Elige una operación válida"); } print("El resultado de la operación es $resultado"); } enum Operacion { suma, resta, multiplicacion, modulo, factorial, sumatoria, producto }
Aquí está mi aporte, la verdad me gustan mucho estos proyectos para aplicar lo aprendido aun que ya quiero aprender a obtener datos del usuario a través de la consola:)
void main() { //Variable numero 1 double valor1 = 4; //Variable numero 2 double valor2 = 3; //Variable resultado double resultado = 0; //Lista de valores List<double> valores = [10, 12, 3]; //Variable de clase operacion Operacion tipoOperacion = Operacion.resta; switch(tipoOperacion){ case Operacion.suma: resultado = valor1 + valor2; print("El resultado de la operación es: $resultado"); break; case Operacion.resta: resultado = valor1 - valor2; if(resultado < 0){ print("NEGATIVO"); } else { print("El resultado de la operación es: $resultado"); } break; case Operacion.multi: resultado = valor1 * valor2; print("El resultado de la operación es: $resultado"); break; case Operacion.modulo: resultado = valor1 % valor2; print("El resultado de la operación es: $resultado"); break; case Operacion.factorial: resultado = 1; for(double i = valor1; i >= 1; i--){ resultado = i * resultado; } print("El resultado de la operación es: $resultado"); break; case Operacion.sumatoria: for(int i = 0; i < valores.length; i++){ resultado = resultado + valores[i]; } print("El resultado de la operación es: $resultado"); break; case Operacion.producto: resultado = 1; for(int i = 0; i < valores.length; i++){ resultado = resultado * valores[i]; } print("El resultado de la operación es: $resultado"); break; } } enum Operacion { suma, resta, multi, modulo, factorial, sumatoria, producto }
Hola, envió
Perfecto ;)
Buenas, comparto el ejercicio dado
void main() { double valor1 = 5; double valor2 = 5; List<int> valores = [3,4,5,6]; double resultado = 0; Operacion operacion = Operacion.producto; switch (operacion) { case Operacion.suma: resultado = valor1 + valor2; print("El resultado de la operacion suma es: $resultado"); break; case Operacion.resta: resultado = valor1 - valor2; if (resultado < 0) { print("NEGATIVO"); } else { print("El resultado de la operacion resta es: $resultado"); } break; case Operacion.multiplicacion: resultado = valor1 * valor2; print("El resultado de la operacion multiplicacion es: $resultado"); break; case Operacion.modulo: resultado = valor1 % valor2; print("El resultado de la operacion modulo es: $resultado"); break; case Operacion.factorial: double resultadoFacto = 1; for(var i = valor1 ; i >= 1; i--) { resultadoFacto = i * resultadoFacto; } print("El resultado de la operacion factorial es: $resultadoFacto"); break; case Operacion.sumatoria: for( int i = 0; i<= valores.length - 1 ; i++ ) { resultado = resultado + valores[i]; } print("El resultado de la operacion sumatoria es: $resultado"); break; case Operacion.producto: resultado = 1; for( int i = 0; i <= valores.length - 1 ; i++ ) { resultado = resultado * valores[i]; } print("El resultado de la operacion producto es: $resultado"); break; default: print("INGRESA VALORES"); } } enum Operacion { suma, resta, multiplicacion, modulo, factorial, sumatoria, producto }
Me gusta mucho lo que pusiste en default 🥰
¿Yo no entiendo los resultados de mis compañeros, como se supone que llegue al resultado final de 12.2 si valor 1 y valor 2 no los define el ejercicio?
¿Se supone que debo usar algún ciclo for o while para recorrer cada estado del switch y secuencialmente conseguir los resultados hasta llegar a los 12.2 o solo se plantea cada tipo de situación según los visto en la sección?
Hola! Parece un error de redacción, lo revisaré
enum Operacion { SUMA, RESTA, MULTIPLICACION, MODULO, FACTORIAL, SUMATORIA, PRODUCTO } void main(List<String> arguments) { int valor1 = 10; int valor2 = 10; List<int> valores = [1, 2, 3, 4]; dynamic resultado = 0; Operacion opcion = Operacion.PRODUCTO; switch (opcion) { case Operacion.SUMA: resultado = valor1 + valor2; break; case Operacion.RESTA: resultado = valor1 - valor2; if (resultado < 0) { resultado = 'NEGATIVO'; } break; case Operacion.MULTIPLICACION: resultado = valor1 * valor2; break; case Operacion.MODULO: resultado = valor1 % valor2; break; case Operacion.FACTORIAL: resultado = factorial(valor1); break; case Operacion.SUMATORIA: resultado = sumatoria(valores); break; case Operacion.PRODUCTO: resultado = producto(valores); break; } print('El resultado de la operacion es $resultado.'); } int factorial(int numero) { var factorial = 1; for (int i = 1; i <= numero; i++) { factorial *= i; } return factorial; } int sumatoria(List<int> valores) { int total = 0; for (int i = 0; i < valores.length; i++) { total += valores[i]; } return total; } int producto(List<int> valores) { int total = 1; for (int i = 0; i < valores.length; i++) { total *= valores[i]; } return total; }
Adjunto mi código, pase un par de minutos tratando de resolver un problema del tipo TypeError y lo que pasa es que cuando usas dynamic, necesitas asignarle un valor de inicio.
void main() { var valor1 = 4; var valor2 = 3; List<int> valores = [valor1, valor2, 10]; dynamic resultado = 0; Operacion tipo = Operacion.suma; switch (tipo) { case Operacion.sum: resultado = valor1 + valor2; break; case Operacion.rest: resultado = valor1 - valor2; break; case Operacion.mult: resultado = valor1 * valor2; break; case Operacion.mod: resultado = valor1 % valor2; break; case Operacion.fact: resultado = valor1 ~/ valor2; break; case Operacion.suma: for (int i = 0; i < valores.length; i++) { resultado += valores[i]; } break; case Operacion.prod: for (int j = 0; j < valores.length; j++) { resultado *= valores[j]; } break; } print("El resultado de la operación es: $resultado"); } enum Operacion { sum, rest, mult, mod, fact, suma, prod}
Gracias por tu solución :D
Aqui esta mi prueba realizada:
void main() { int valor1 = 7; int valor2 = 5; List<int> valores = [2, 4, 6]; dynamic resultado = 0; Operacion operacion = Operacion.producto; switch (operacion) { case Operacion.suma: { resultado = valor1 + valor2; } break; case Operacion.resta: { resultado = valor1 - valor2; if (resultado < 0) { print("NEGATIVO"); } } break; case Operacion.multiplicacion: { resultado = valor1 * valor2; } break; case Operacion.modulo: { resultado = valor1 % valor2; } break; case Operacion.factorial: { resultado = 1; for (int i = 1; i <= valor1; i++) { resultado = resultado * i; } } break; case Operacion.sumatoria: { for(int valor in valores) { resultado += valor; } } break; case Operacion.producto: { resultado = 1; for(int valor in valores) { resultado *= valor; } } break; } print("El resultado de la operación es: $resultado"); } enum Operacion { suma, resta, multiplicacion, modulo, factorial, sumatoria, producto }
Muy bien el tomar en cuenta los casos bordes +1
Mi aporte:
void main() { num valor1 = 0; num valor2 = 2; List<num> valores = [1, 6, 8, 7]; num resultado; Operacion opc = Operacion.FACTORIAL; switch (opc) { case Operacion.SUMA: resultado = valor1 + valor2; print("$valor1 + $valor2 = $resultado"); break; case Operacion.RESTA: resultado = valor1 - valor2; print("$valor1 - $valor2 = $resultado"); if (resultado < 0) print("NEGATIVO"); break; case Operacion.MULTIPLICACION: resultado = valor1 * valor2; print("$valor1 * $valor2 = $resultado"); break; case Operacion.MODULO: resultado = valor1 % valor2; print("$valor1 % $valor2 = $resultado"); break; case Operacion.FACTORIAL: resultado = 1; for (int i = 1; i <= valor1; i++) { resultado *= i; } print("El factorial de $valor1 es $resultado"); break; case Operacion.SUMATORIA: resultado = 0; for (num i in valores) resultado += i; print("La sumatoria de la lista $valores es $resultado"); break; case Operacion.PRODUCTO: resultado = 1; for (num i in valores) resultado *= i; print("El producto de la lista $valores es $resultado"); break; default: print("Operación desconocida"); } } enum Operacion { SUMA, RESTA, MULTIPLICACION, MODULO, FACTORIAL, SUMATORIA, PRODUCTO } ```void main() {   num valor1 = 0;   num valor2 = 2;   List\<num> valores = \[1, 6, 8, 7];   num resultado;   Operacion opc = Operacion.FACTORIAL;       switch (opc) {   case Operacion.SUMA:   resultado = valor1 + valor2;   print("$valor1 + $valor2 = $resultado");   break;   case Operacion.RESTA:   resultado = valor1 - valor2;   print("$valor1 - $valor2 = $resultado");   if (resultado < 0) print("NEGATIVO");   break;   case Operacion.MULTIPLICACION:   resultado = valor1 \* valor2;   print("$valor1 \* $valor2 = $resultado");   break;   case Operacion.MODULO:   resultado = valor1 % valor2;   print("$valor1 % $valor2 = $resultado");   break;   case Operacion.FACTORIAL:   resultado = 1;   for (int i = 1; i <= valor1; i++) {   resultado \*= i;   }   print("El factorial de $valor1 es $resultado");   break;   case Operacion.SUMATORIA:   resultado = 0;   for (num i in valores) resultado += i;   print("La sumatoria de la lista $valores es $resultado");   break;   case Operacion.PRODUCTO:   resultado = 1;   for (num i in valores) resultado \*= i;   print("El producto de la lista $valores es $resultado");   break;   default:   print("Operación desconocida");   }  } enum Operacion {   SUMA,   RESTA,   MULTIPLICACION,   MODULO,   FACTORIAL,   SUMATORIA,   PRODUCTO }
void main() {
// Declaración de las variables relevantes para el problema
double valor1 = 0;
double valor2 = 3;
List<double> listaDeValores = [2, 3, 4, 5];
Operacion operacion = Operacion.factorial;
double resultado = 0;
// Logica de la calculadora
switch (operacion) {
case Operacion.suma:
resultado = valor1 + valor2;
break;
case Operacion.resta:
resultado = valor1 - valor2;
if (resultado < 0) {
print("NEGATIVO");
}
break;
case Operacion.multiplicacion:
resultado = valor1 * valor2;
break;
case Operacion.modulo:
resultado = valor1 % valor2;
break;
case Operacion.factorial:
if (valor1 == 0) {
resultado = 1;
break;
}
for (int i=1; valor1 > i; i++) {
resultado *= i;
}
break;
case Operacion.sumatoria:
for (var numero in listaDeValores) {
resultado += numero;
}
break;
case Operacion.producto:
for (var numero in listaDeValores) {
resultado *= numero;
}
break;
default:
print("Operación invalida ingresada");
}
print("El resultado de la operacion es: $resultado");
}
enum Operacion {
suma,
resta,
multiplicacion,
modulo,
factorial,
sumatoria,
producto
}
Bueno compañeros esta seria mi solucion al problema.
Hola, les comparto mi ejercicio, incluyo comentarios de todo:
void main() { int valor1 = 2; //Declaro que existe una variable llamada valor1 int valor2 = 4; //Declaro que existe una variable llamada valor2 List<int> valores = [ 1,2,3,4,5,6,7,8,9 ]; //Declaro que existe una lista de valores llamada valores Operacion operaciones = Operacion.sumatoria; /* Declaro que existe una Operación llamada operacioness, * la forma de calcularla es lo que sea que pongas luego del signo "=" * Debajo de todo, fuera del código void main, enumero todas las funciones * que puedes usar para Operacion operaciones * Son: suma, resta, multiplicacion, division, modulo, factorial, sumatoria y producto*/ int resultadoSuma = valor1 + valor2; int resultadoResta = valor1 - valor2; int resultadoMultiplicacion = valor1 * valor2; double resultadoDivision = valor1 / valor2; int resultadoModulo = valor1 % valor2; int resultadoFactorial = 1; int resultadoSumatoria = 0; int resultadoProducto = 1; /* Declaro que existe una variable para cada resultado. * Estas variables se llaman resultadoSuma,resultadoResta, resultadoMultiplicacion, * resultadoDivision y resultadoModulo. * * La forma de calcular cada variable es lo que dice luego del signo "=" * dependen de lo que pongas en valor1 y valor2. * * Las variables resultadoFactorial, resultadoSumatoria y resultadoProducto * empiezan con un valor fijo porque les vamos a aplicar un ciclo for y una * re asignación de valor cada vez que iteren un ciclo. * * resultadoFactorial y resultadoProducto son multiplicaciones por eso * necesitan empezar con un valor 1. * resultadoSumatoria es una adición por eso necesita empezar con un 0. * */ for (int i = 1; i <= valor1; i++) { resultadoFactorial *= i; } for (int i = 0; i < valores.length; i++) { resultadoSumatoria += valores[i]; } for (int i = 0; i < valores.length; i++) { resultadoProducto *= valores[i]; } /* Dentro de cada ciclo for declaramos: * Existe un indicador i; este i cumple una condición; terminada la iteración súmale uno más al indicador * Dentro de cada llave, esta la re asignación de valor de resultadoFactorial, resultadoSumatoria y resultadoProducto * * resultadoFactorial se compara con valor1. * Un factorial depende de multiplicar todos los valores desde el 1 hasta el valor1. * * resultadoSumatoria y resultadoProducto, se comparan con la cantidad de valores en la lista llamda valores * Una Sumatoria depende de sumar todos los valores de la lista. * Un Producto depende de multiplicar todos los valores de la lista. * * */ switch (operaciones) { case Operacion.suma: print("El resultado de la operación es: $resultadoSuma"); break; case Operacion.resta: if (resultadoResta < 0) { print( "El resultado de la operación es: $resultadoResta (NÚMERO NEGATIVO)"); } else { print("El resultado de la operación es: $resultadoResta"); } break; case Operacion.multiplicacion: print("El resultado de la operación es: $resultadoMultiplicacion"); break; case Operacion.division: print("El resultado de la operación es: $resultadoDivision"); break; case Operacion.modulo: print("El resultado de la operación es: $resultadoModulo"); break; case Operacion.factorial: print("El resultado de la operación es: $resultadoFactorial"); break; case Operacion.sumatoria: print("El resultado de la operación es: $resultadoSumatoria"); break; case Operacion.producto: print("El resultado de la operación es: $resultadoProducto"); break; } /* Declaro este switch con varias respuestas para Operacion operaciones. * Dependiento de la función que coloques luego de "=" el sistema * va a imprimir lo que diga dentro de print ( ) * * En la resta, tiene el if, para que detecte si resultadoResta es un número * negativo, si lo es, coloca entre paréntesis (NÚMERO NEGATIVO) * */ } enum Operacion { suma, resta, multiplicacion, division, modulo, factorial, sumatoria, producto } // Declaro esta lista que enumera los tipos de Operacion.Algo que se pueden realizar. ```void main() {   int valor1 = 2; //Declaro que existe una variable llamada valor1   int valor2 = 4; //Declaro que existe una variable llamada valor2   List\<int> valores = \[ 1,2,3,4,5,6,7,8,9 ]; //Declaro que existe una lista de valores llamada valores   Operacion operaciones = Operacion.sumatoria;   /\* Declaro que existe una Operación llamada operacioness,   \* la forma de calcularla es lo que sea que pongas luego del signo "="   \* Debajo de todo, fuera del código void main, enumero todas las funciones   \* que puedes usar para Operacion operaciones   \* Son: suma, resta, multiplicacion, division, modulo, factorial, sumatoria y producto\*/   int resultadoSuma = valor1 + valor2;   int resultadoResta = valor1 - valor2;   int resultadoMultiplicacion = valor1 \* valor2;   double resultadoDivision = valor1 / valor2;   int resultadoModulo = valor1 % valor2;   int resultadoFactorial = 1;   int resultadoSumatoria = 0;   int resultadoProducto = 1;   /\* Declaro que existe una variable para cada resultado.   \* Estas variables se llaman resultadoSuma,resultadoResta, resultadoMultiplicacion,   \* resultadoDivision y resultadoModulo.   \*    \* La forma de calcular cada variable es lo que dice luego del signo "="   \* dependen de lo que pongas en valor1 y valor2.   \*    \* Las variables resultadoFactorial, resultadoSumatoria y resultadoProducto    \* empiezan con un valor fijo porque les vamos a aplicar un ciclo for y una    \* re asignación de valor cada vez que iteren un ciclo.   \*    \* resultadoFactorial y resultadoProducto son multiplicaciones por eso    \* necesitan empezar con un valor 1.   \* resultadoSumatoria es una adición por eso necesita empezar con un 0.   \* \*/   for (int i = 1; i <= valor1; i++) {   resultadoFactorial \*= i;   }   for (int i = 0; i < valores.length; i++) {   resultadoSumatoria += valores\[i];   }   for (int i = 0; i < valores.length; i++) {   resultadoProducto \*= valores\[i];   }   /\* Dentro de cada ciclo for declaramos:   \* Existe un indicador i; este i cumple una condición; terminada la iteración súmale uno más al indicador   \* Dentro de cada llave, esta la re asignación de valor de resultadoFactorial, resultadoSumatoria y resultadoProducto   \*    \* resultadoFactorial se compara con valor1.   \* Un factorial depende de multiplicar todos los valores desde el 1 hasta el valor1.   \*    \* resultadoSumatoria y resultadoProducto, se comparan con la cantidad de valores en la lista llamda valores   \* Una Sumatoria depende de sumar todos los valores de la lista.   \* Un Producto depende de multiplicar todos los valores de la lista.   \*    \* \*/   switch (operaciones) {   case Operacion.suma:   print("El resultado de la operación es: $resultadoSuma");   break;   case Operacion.resta:   if (resultadoResta < 0) {   print(   "El resultado de la operación es: $resultadoResta (NÚMERO NEGATIVO)");   } else {   print("El resultado de la operación es: $resultadoResta");   }   break;   case Operacion.multiplicacion:   print("El resultado de la operación es: $resultadoMultiplicacion");   break;   case Operacion.division:   print("El resultado de la operación es: $resultadoDivision");   break;   case Operacion.modulo:   print("El resultado de la operación es: $resultadoModulo");   break;   case Operacion.factorial:   print("El resultado de la operación es: $resultadoFactorial");   break;   case Operacion.sumatoria:   print("El resultado de la operación es: $resultadoSumatoria");   break;   case Operacion.producto:   print("El resultado de la operación es: $resultadoProducto");   break;   }   /\* Declaro este switch con varias respuestas para Operacion operaciones.   \* Dependiento de la función que coloques luego de "=" el sistema   \* va a imprimir lo que diga dentro de print ( )   \*    \* En la resta, tiene el if, para que detecte si resultadoResta es un número   \* negativo, si lo es, coloca entre paréntesis (NÚMERO NEGATIVO)   \* \*/ } enum Operacion {   suma,   resta,   multiplicacion,   division,   modulo,   factorial,   sumatoria,   producto } // Declaro esta lista que enumera los tipos de Operacion.Algo que se pueden realizar.
Hola, la respuesta seria:
En Código:
void main() { double valor1 = 22; double valor2 = 9.8; double resultado; Operacion operacion = Operacion.Resta; switch (operacion) { case Operacion.Suma: resultado = (valor1 + valor2).toDouble(); break; case Operacion.Resta: resultado = (valor1 - valor2).toDouble(); break; case Operacion.Modulo: resultado = (valor1 % valor2).toDouble(); break; case Operacion.Factorial: int factoria = 1; int contador = 1; while (contador <= valor1) { factoria *= contador; contador++; } resultado = factoria.toDouble(); break; case Operacion.Producto: resultado = (valor1 * valor2).toDouble(); break; } print("El resultado de la operación es: $resultado"); } enum Operacion { Suma, Resta, Modulo, Factorial, Producto }
void main() {
//Declaración de variables
dynamic value1 = 7;
dynamic value2 = 2.5;
List<int> listado = [2, 2, 3];
dynamic result;
String typeOperation = 'Producto';
if (typeOperation == 'Suma') {
result = value1 + value2;
print('La operación es una $typeOperation" y el resultado es: $result');
} else if (typeOperation == 'Resta') {
result = value1 - value2;
print('La operación es una "$typeOperation" y el resultado es: $result');
} else if (typeOperation == 'Multiplicación') {
result = value1 * value2;
print('La operación es una $typeOperation" y el resultado es: $result');
} else if (typeOperation == 'Modulo') {
result = value1 % value2;
print('La operación es una "$typeOperation" y el resultado es: $result');
} else if (typeOperation == 'Factorial') {
int resultado = 1;
for (int i = 1; i <= value1; i++) {
resultado *= i;
}
result = resultado;
print(
'La operación es "$typeOperation" de $value1 y el resultado es : $result');
} else if (typeOperation == 'Producto') {
int resultado = 1;
for (int i = 0; i < listado.length; i++) {
resultado = resultado * listado[i];
}
result = resultado;
print(
'La operación es una "$typeOperation" y el resultado es: $result');
}
}
Comparto mi resultado :
void main(){ int num1 = 5; int num2 = 2; List<int> valores = [1,2,3,4,5,6,7,8]; int resInt = 0; double resDouble = 0.0; Operacion operacion = Operacion.Producto; switch(operacion){ case Operacion.Suma: resInt = num1 + num2; print('$num1 + $num2 = $resInt'); print('OPERACION - SUMA'); print('El resultado de la operacion es: $resInt'); break; case Operacion.Resta: resInt = num1 - num2; if(resInt < -1){ print('Numero Negativo'); }else{ print('OPERACION - RESTA'); print('$num1 - $num2 = $resInt'); print('El resultado de la operacion es: $resInt'); } break; case Operacion.Multiplicacion: resInt = num1 * num2; print('OPERACION - MULTIPLICACION '); print('$num1 * $num2 = $resInt'); print('El resultado de la operacion es: $resInt'); break; case Operacion.Division: resDouble = num1 / num2; print('OPERACION - DIVISION'); print('$num1 / $num2 = $resDouble'); print('El resultado de la operacion es: $resDouble'); break; case Operacion.Modulo: resInt = num1 % num2; print('OPERACION - Modulo'); print('$num1 % $num2 = $resInt'); print('El resultado de la operacion es: $resInt'); break; case Operacion.Factorial: resInt = 1; for(int i = 1; i <= num1;i++){ resInt *= i; } print('OPERACION - FACTORIAL'); print('El factorial de $num1 es $resInt'); print('El resultado de la operacion es: $resInt'); break; case Operacion.Sumatoria: for(int i = 0;i < valores.length; i++){ resInt += valores[i]; } print('OPERACION - SUMATORIA'); print('El resultado de la operacion es: $resInt'); break; case Operacion.Producto: resInt = 1; for(int i = 0;i < valores.length; i++){ resInt *= valores[i]; } print('OPERACION - PRODUCTO'); print('El resultado de la operacion es: $resInt'); break; default: print('Calculadora Aberiada'); } } enum Operacion { Suma, Resta, Multiplicacion, Division, Modulo, Factorial, Sumatoria, Producto }