Anuncios

Bienvenidos sean a este post, hoy hablaremos del condicional por excelencia.

Anuncios

Cuando nos referimos a este condicional no es solamente porque es el mas utilizado en cualquier lenguaje de programacion sino tambien porque nos permitira dotarle de cierta «inteligencia» a nuestros codigos porque nos dara la posibilidad de poder determinar que conducta tomara el mismo dependiendo de nuestras decisiones o valores en el codigo, veamos su sintaxis mas basica:

if condicion
{
	... instrucciones ...
}
Anuncios

Esta es su forma mas basica donde verificamos una condicion y en caso de ser verdadera procede a ejecutar el bloque de instrucciones, en caso de no ser verdadera omite el bloque de instrucciones pero tambien disponemos de una opcion para operar esta condicion:

if condicion
{
	... instrucciones ...
}
else
{
	... instrucciones ...
}
Anuncios

Observen que el primer bloque es igual al anterior pero ahora agregamos el else para captar la condicion que no se cumplio anteriormente y ejecutara ese bloque de instrucciones para tomar una accion, por ejemplo notificar el error de la condicion anterior, pero que sucede si necesitamos una nueva condicion y que no sea ejecutada por else?, aca entra en accion else if de la siguiente forma:

if condicion

{
	... instrucciones ...
}
else if condicion

{
	... instrucciones ...
}
else
{
	... instrucciones ...
}
Anuncios

En este caso podemos agregar una nueva condicion para verificar si se cumple, en caso de cumplirse la condicion ejecuta el bloque de instrucciones asociado, lo bueno de esta opcion es que podemos usar todas las que sean necesarias para nuestro codigo, en cambio else solamente se puede usar una vez y siempre ira al final, como se ve arriba, por ultimo tanto else if como else son opcionales y el unico obligatorio es el primer bloque, para entender el concepto vamos a realizar un ejemplo.

Anuncios

Para ello vamos a crear un nuevo proyecto que llamaremos condicion, una vez creado modificaremos el codigo de main.rs con el siguiente:

main.rs

use std::io;

fn main() 
{
	let mut entrada: String = String::new();

	for _ in 0..3
	{
		io::stdin().read_line(&mut entrada).unwrap();
		let n: i32 = entrada.trim().parse().unwrap();

		if n < 0 {
			println!("{} es negativo", n);
		} else if n > 0 {
			println!("{} es positivo", n);
		} else {
			println!("Es cero");
		}
		entrada.clear();
	}
}
Anuncios

Un codigo simple pero efectivo, primero importamos el paquete io para poder utilizarlo directamente, despues en el main crearemos una variable de tipo String para leer el dato que ingresaremos por medio de read_line, esta se llamara entrada y de esta forma la dejaremos en blanco para que reciba cualquier dato, lo siguiente sera un bucle for para hacer tres repeticiones de nuestro codigo.

Anuncios
Nota:
Sobre el parametro _ hablaremos en un proximo post.
Anuncios
Anuncios

Nuestra primera linea en el bucle for sera justamente para ingresar un valor por medio de read_line, observen que como destino utilizamos la variable que definimos anteriormente, luego definimos otra variable pero esta vez de formato numerico y por medio de trim y parse convertimos el valor ingresado de tipo String en el formato de esta nueva variable, recuerden que en todo los casos utilizamos a unwrap para manejar un posible error, despues viene lo que realmente nos interesa como son las condiciones.

Anuncios
Anuncios

En este caso tenemos una primer condicion donde verificamos si el valor almacenado en la variable n es menor a 0, en caso de ser verdadero procede a mostrar un mensaje en pantalla indicando que el valor de n es negativo, luego tennemos la siguiente condicion donde verificamos si n es mayor a 0, en caso de ser verdadero procedemos a indicar que este numero es positivo, por ultimo tenemos el else, es decir cuando n no sera mayor o menor a 0 por lo tanto como dice el mensaje este es igual a 0, por ultimo utilizamos al metodo clear para limpiar el buffer que usamos para almacenar el dato que ingresamos por medio de la linea de comandos, con todo esto podemos compilarlo y probarlo, para ello veamos el siguiente video

Anuncios

Como pueden ver en el video tenemos realizada las tres condiciones posibles donde primero pasamos un numero mayor a cero y nos informa que es positivo, luego pasamos a cero y nos dice que es este y por ultimo un numero menor a cero para indicar que es negativo, y pudimos repetirlo gracias a la cantidad de veces que repetimos el codigo mediante el for, se que quedo una cosa en el tintero pero eso lo veremos en el proximo post.

Anuncios
Nota:
Un tema que no aclare es que las condiciones para este lenguaje no usamos parentesis a diferencia de la gran mayoria de los lenguajes.
Anuncios

En resumen, hoy hemos visto al condicional por excelencia, como es su estrucutura y su sintaxis, tambien hemos visto un pequeño ejemplo para ver como nos brinda cierta «inteligencia» a nuestros codigos permitiendo que tome una determinada conducta, espero les haya sido util sigueme en tumblr, Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.

Anuncios

Donación

Es para mantenimento del sitio, gracias!

$1.50