No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

No se trata de lo que quieres comprar, sino de quién quieres ser. Aprovecha el precio especial.

Antes: $249

Currency
$209

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

14 Días
0 Hrs
31 Min
46 Seg

Operaciones

11/23
Recursos

Aportes 29

Preguntas 6

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

?: se le conoce como operador ternario
Su estructura sería así:
condicional ? verdadero : falso

Les dejo un resumen de los ejemplos vistos con algunos comentarios de los tipos de datos y lo que hacen algunas operaciones. Espero les sirva:

void main() {
  //Operaciones Aritméticas
  int valor1 = 7;
  int valor2 = 3;
  // Suma
  int resultadoSuma = valor1 + valor2;
  print("El resultado de la suma es: $resultadoSuma");
  
  //Resta
  int resultadoResta = valor1 - valor2;
  print("El resultado de la resta es: $resultadoResta");
  
  //Division: El resultado de la división siempre es Double
  double resultadoDiv = valor1 / valor2;
  print("El resultado de la division es: $resultadoDiv");
  
  //Producto: El resultado del producto, depende del tipo de dato ingresado:
  // int * int = int
  // double * double = double
  // int * double = double
  
  int resultadoProd = valor1 * valor2;
  print("El resultado del prodcuto es: $resultadoProd");
 
  //Parte entera del Resultado de una División ~/
  int resultadoIntDiv = valor1 ~/ valor2; 
  print("La parte entera de la división es: $resultadoIntDiv");
  
  //Operador módulo %: Nos devuelve el resto entero de una división
  int resultadoModDiv = valor1 % valor2;
  print("El resto entero de la división es: $resultadoModDiv");
}
void main() {
  //Operaciones de Asignación
  int valor1 = 8;
  int valor2 = 2;
  
  //Asignamos a valor1 la suma de valor1 + valor2 
  valor1 += valor2; 
  print("El resultado de valor1 + valor2: $valor1");
  
  //Esto es válido para el resto de las operaciones
}
void main() {
  //Operaciones de Asignación
  int valor1 = 8;
  int valor2 = 2;
  
  //Asignamos a valor1 la suma de valor1 + valor2 
  valor1 += valor2; 
  print("El resultado de valor1 + valor2: $valor1");
  
  //Esto es válido para el resto de las operaciones
}
void main() {
  //Operaciones Lógicas
  bool llueve = true;
  bool haceFrio = false; 
  
  //Operación Or: es falsa solo cuando ambas condiciones son falsas, el resto de los casos es verdadera
  bool llevoAbrigo = llueve || haceFrio;
  print("$llueve || $haceFrio == $llevoAbrigo");
  
  //Operador And: Es verdadero solo si ambas variables son verdaderas, el resto de los casos es falsa
  bool llevoAbrigoAND = llueve && haceFrio;
  print("$llueve && $haceFrio == $llevoAbrigoAND");
  
  //Operador Ternario ?: Funciona como un if de forma abreviada
  //Operador Negación !: Nos devuelve el valor opuesto de la variable, si es true nos devuelve false y viceversa.
  print(!llueve);
}
void main() {

  int n1 = 4; 
  int n2 = 3; 
  
  print(n2 ~/ n1); //0
  print(n2 / n1); //0.75
  print(n2 % n1); //3
  
}

El modulo nos regresa el residuo entero de una división. En este caso es 3 porque el cuatro no cabe en el tres, por lo que el tres original sigue sobrando.

En el caso de la opción que nos regresa cero es porque no hay residuo entero en esa división, es decir. 0.75 no es entero pero si hacemos 5~/4 obtenemos 1.25 que podemos descomponer en 1 + 0.25 por lo tanto tenemos que el residuo entero es 1.

El operador … ?: se e conoce como Elvis por que se parece al cantante.

Operadores

✨ Concepto clave
Una operación es la definición de una acción que se desee ejecutar dependiendo de su concepto y ámbito.

.
De manera general, en Dart tenemos los siguientes operadores según su categoría:
.

.

Test Operators

Si deseamos realizar una inspección sobre un determinado objeto (recordando que los tipos son objetos), tendremos los siguientes operadores:
.

.
De ellos, podemos realizar la siguiente asignación:

(employee as Person).firstName = 'Bob';

O, la siguiente condicional:

employee.firstName = (employee is Person) ? 'Bob' : 'Frank';

Assignment Operators


.
Donde sí deseamos asigna solamente un valor, cuando la variable es null tendríamos b ??= value;.
.
o si deseamos asignar y si aquel valor fuese null tendríamos:

String? person = name ?? 'anonymous'; // anonymous

También, si deseamos definir un objeto a partir de otro mediante el cascade operator:

var product = Product()
  ..size = Size.MEDIUM
  ..price = Price.LOW
  ..quantity = 4;

Algunos operadores están mal escritos, tanto en la lámina con en el comentario del código del profe. Por ejemplo, el != aparece =!, y también el >= aparece como =>. Ojalá pudieran corregirlo por favor.

Utilice el tipo de dato dynamic en el valor1 para no tener que crear una nueva variable de tipo double al momento de hacer la división. Creí que por ser el resultado un entero no necesitaría ser almacenada en un double pero no es así.

void main() {
  //Operaciones de Asignación
  // +=, -=, *=, /=, ~/= y %=
  dynamic valor1 = 8;
  int valor2 = 2;
  
  //Usando +=
  print('$valor1 += $valor2');
  valor1 += valor2;
  print('Resultado: $valor1');
  valor1 = 8;
  
  //Usando -=
  print('$valor1 -= $valor2');
  valor1 -= valor2;
  print('Resultado: $valor1');
  valor1 = 8;
  
  //Usando *=
  print('$valor1 *= $valor2');
  valor1 *= valor2;
  print('Resultado: $valor1');
  valor1 = 8;
  
  //Usando /=
  print('$valor1 /= $valor2');
  valor1 /= valor2;
  print('Resultado: $valor1');
  valor1 = 8;
  
  //Usando ~/=
  print('$valor1 ~/= $valor2');
  valor1 ~/= valor2;
  print('Resultado: $valor1');
  valor1 = 8;
  
  //Usando %=
  print('$valor1 %= $valor2');
  valor1 %= valor2;
  print('Resultado: $valor1');
}

Gente les dejo una tabla de valores por si no la conocen

Para || (OR)
true || true = true
true || false = true
false || true = true
false || false = false

Para && (AND)
true && true = true
true && false = false
false && true = false
false && false = false

Para ! (NEGACION)
!true = false
!false = true

?:
Seria un operador ternario:

//TipoDeVariable nombreVarialbe = Condicion ? Resultado1 : Resultado2
var valor1;
var valo2;
var resultado = valor1 == 1 ? valor1 : valor2
println(resultado).

Operador ternario, podría decir que es ese

jajaja yo creo que se le dice Elvis operator

dato para no olvidar

Se le llama operador ternario al ?:

void main() {
//Ejemplo de operador ternario ?
int valor1 = 12;
int valor2 = 10;

String resultado = valor1>valor2 ? “mayor”:“menor”;
print(“el $valor1 es $resultado que $valor2”);
}

void main() {
int valor1 = 8;
int valor2 = 2;

//operaciones aritmeticas + , - ,* ,/, ~/,%
//int resul= val1 + val2; //suma

// int resul= val1 - val2; //resta

//int resul= val1 * val2; //multiplicacion

//double resul= val1 / val2; // div

//int resul= val1 ~/ val2; // resultado de la divicion a entero

//int resul= val1 % val2; //residuo entero de la divicion

//operaciones de asignacion +=, -=, *=, /= ,~/= y =%

/* print("$valor1 %= $valor2 “);
valor1 %= valor2;
print(”$valor1"); */

//operaciones de relacionales == , =! ,=> ,>,< y <=
//int letra1 = 5;
//int letra2 = 5;

// bool resultado = letra1 >= letra2;

// print ("$letra1 >= $letra2 = $resultado");

//operaciones logicas || ,&& , ! ,?;
bool llueve = true;
bool haceFrio = true;
bool llevoAbrigo= llueve && haceFrio;

print("$llueve && $haceFrio = $llevoAbrigo ");

}

//Operaciones logicas
//||, &&, ! y ?
void main() {
bool deudas = true;
bool falta_de_dinero = true;

bool estudiar_en_Platzi = deudas || falta_de_dinero;
print("$deudas || $falta_de_dinero = $estudiar_en_Platzi");
}

A tener en cuenta al momento de comparar, por mas que tengan la misma asignacion, tener en cuenta Mayusculas y Minusculas.

Este es mi codigo, aprendiendo Dart.

El operador :? es conocido como operador ternario… Pero en Kotlin lo conocí como el Elvis Operator XD

Un pequeño ejemplo de la tabla de multiplicar

Saludos, les comparto un ejercicio con operaciones lógicas.

Existe también el null-aware operator
??

int a;  //null
print(a ?? 3) //print-3
void main ( ) {
  print('El resultado nos devolverá un valor True o False');
  String valor1 = 'Hola';
  String valor2 = 'Adios';
  bool resultado = valor1 == valor2;
  print('Valor1 es igual a: $valor1');
  print('Valor2 es igual a: $valor2');
  print('El resultado de comprarar valor1 == valor2 es igual a: $resultado');
}

El resultado nos devolverá un valor True o False
Valor1 es igual a: Hola
Valor2 es igual a: Adios
El resultado de comprarar valor1 == valor2 es igual a: false


void main ( ) {
  print('El resultado nos devolverá un valor True o False');
  String valor1 = 'Hola';
  String valor2 = 'Hola';
  bool resultado = valor1 == valor2;
  print('Valor1 es igual a: $valor1');
  print('Valor2 es igual a: $valor2');
  print('El resultado de comprarar valor1 == valor2 es igual a: $resultado');
}

El resultado nos devolverá un valor True o False
Valor1 es igual a: Hola
Valor2 es igual a: Hola
El resultado de comprarar valor1 == valor2 es igual a: true


void main() {
// Operaciones de Asignación
// += , -= , *= , /= , ~/= y =%
  double valor1 = 8;
  int valor2 = 2;
  print('Valor1 es $valor1');
  print('Valor2 es $valor2');
  print('Si: $valor1 /= $valor2');
  valor1 /= valor2;
  print('El nuevo valor numérico de valor1 es: $valor1');
}

Valor1 es 8
Valor2 es 2
Si: 8 /= 2
El nuevo valor numérico de valor1 es: 4


void main() {
// Operaciones de Asignación
// += , -= , *= , /= , ~/= y =%
  int valor1 = 8;
  int valor2 = 2;
  print('Valor1 es $valor1');
  print('Valor2 es $valor2');
  print('Si: $valor1 ~/= $valor2');
  valor1 ~/= valor2;
  print('El nuevo valor numérico de valor1 es: $valor1');
}

Valor1 es 8
Valor2 es 2
Si: 8 ~/= 2
El nuevo valor numérico de valor1 es: 4


void main() {
// Operaciones de Asignación
// += , -= , *= , /= , ~/= y =%
  int valor1 = 8;
  int valor2 = 2;
  print('Valor1 es $valor1');
  print('Valor2 es $valor2');
  print('Si: $valor1 *= $valor2');
  valor1 *= valor2;
  print('El nuevo valor numérico de valor1 es: $valor1');
}

Valor1 es 8
Valor2 es 2
Si: 8 *= 2
El nuevo valor numérico de valor1 es: 16

void main() {
// Operaciones de Asignación
// += , -= , *= , /= , ~/= y =%
  int valor1 = 8;
  int valor2 = 2;
  print('Valor1 es $valor1');
  print('Valor2 es $valor2');
  print('Si: $valor1 -= $valor2');
  valor1 -= valor2;
  print('El nuevo valor numérico de valor1 es: $valor1');
}

Valor1 es 8
Valor2 es 2
Si: 8 -= 2
El nuevo valor numérico de valor1 es: 6

Así lo veo

void main() {
// Operaciones de Asignación
// + = , - = , * = , / = , I / = y = %
  int valor1 = 8;
  int valor2 = 2;
  print('Valor1 es $valor1');
  print('Valor2 es $valor2');
  print('Si: $valor1 += $valor2');
  valor1 += valor2;
  print('El nuevo valor numérico de valor1 es: $valor1');
}

El resultado en pantalla es:

Valor1 es 8
Valor2 es 2
Si: 8 += 2
El nuevo valor numérico de valor1 es: 10
Operador Ternario en acción: ```js void main() { bool llueve = true; bool haceFrio = true; bool llevoAbrigo = (llueve && haceFrio) ? true : false; print(llevoAbrigo); } ```void main() { bool llueve = true; bool haceFrio = true; bool llevoAbrigo = (llueve && haceFrio) ? true : false; print(llevoAbrigo); }
![](</Users/juanrosa/Desktop/Captura de pantalla 2023-11-22 a la(s) 10.37.47.png>)