Aprendiendo operadores y expresiones (Lenguaje C)

in #steemstem6 years ago (edited)

Saludos a toda la comunidad


Es un placer estar de nuevo con ustedes, me he puesto un poco ausente estas ultimas 2 semanas debido a mis pasantias, estoy laborando tiempo completo y por ello debo esperar al fin de semana para poder respirar un poco, pero bueno he preparado un tutorial muy bueno espero les resulte de utilidad, se trata de los operadores y expresiones, son conceptos básicos de programación fundamentales a la hora de realizar nuestros programas. Cuando hablamos de operadores nos referimos a los distintos procesos que realizan los programas de computadoras que se apoyan en las numerosas operaciones de tipo aritméticas o matemáticas cada una de diferente complejidad, en este tutorial mostraré como C hace uno de los operadores y expresiones para la resolución de operaciones.


Comencemos conociendo conceptos clave


Nos permitirán tener una mayor comprensión del tema que vayamos abordando, son buenas prácticas que debemos tomar en cuenta si queremos no solo aprender de un tutorial sino también indagar más acerca del tema.

  • Asignación
  • Asociatividad
  • Conversión explícita
  • Manipulación de bits
  • Prioridad/precedencia

Los programas realizados en lenguaje C contienen sentencia de programas y expresiones, así como tambien datos, pero ¿Qué es una expresión? la conocemos comúnmente como una ecuación matemática, algo tan sencillo como eso, vamos a ver el siguiente ejemplo: 10 + 5 como podemos ver, el simbolo + es el operador y los números 10 y 5 son los operandos. En conclusión las expresiones son secuencias de operaciones y operandos que especifican un cálculo.

Aprendiendo la asociatividad


Vamos a poner como ejemplo la siguiente expresión: 9*8+10, el compilador va a realizar primero la multiplicación ya que toma como prioridad la multiplicación es decir la prioridad más alta y seguidamente lo hará con la suma, el resultado de esto será: 82, si queremos tener una estructura más estricta o forzar un orden debemos usar los paréntesis. El orden de operaciones quedaría de la siguiente forma: 9 * (8 + 10) el resultado que tendríamos es de 162 ya que 8 + 10 se realiza en primer lugar .

Figura 1: Ejemplo de asociatividad

Haciendo uso de paréntesis


Estos podrían utilizarse para cambiar el orden de evaluación en una determinada expresión ya sea por su prioridad y asociatividad, las subexpresiones entre paréntesis se deben evaluar según el modo estándar para luego combinar los resultados que se evaluarán con la expresión completa, por ejemplo si se da el caso en que los paréntesis están anidados se van a ejecutar en primer lugar los paréntesis más internos. Consideremos el siguiente ejemplo:

Figura2: Ejemplo de un error de compilación dada una expresión

Como podemos observar en el ejemplo, debemos tener mucho cuidado en la escritura de expresiones en el que contengan 2 o más operaciones para de esta manera asegurar que se evalúan en el orden previsto, en el ejemplo nos encontramos con un error de paréntesis ya que falta uno al final de la derecha

Ahora vamos con operadores de incrementación y decrementación


Una de las características mas útiles que nos ofrece C son los operadores de incremento y decremento, ellos nos permiten sumar o restar 1 a su argumento, respectivamente cada vez que estos se aplican a una variable.

Figura3: Tabla de operadores ++ y --

Para verlo de una manera más práctica vamos a hacer uso del software Dev y veamos como es que el compilador va a interpretar nuestro código. Empecemos con un ejemplo que nos demuestre el funcionamiento de los operadores ++ y --

Código



Resultado



Cabe destacar que en este contexto el orden de los operadores es irrelevante. Sin embargo se cumple con la función deseada, es bastante útil, vamos con el siguiente ejemplo.

Código



Resultado



Para este ejemplo podemos visualizar las diferencias que existen entre operadores de pre incremento y post incremento, lo bueno de usar estos operadores es que nos permite reducir el código que escribimos además de mejorar la velocidad de nuestros programas que vayamos a desarrollar, un ejemplo de esto podría ser a la hora de lidiar con punteros de cadenas, pasemos a nuestro último ejemplo.

Código



Resultado




Los distintos operadores nos permiten incluso realizar dibujos en C de ciertas formas, incluso podríamos modificar el programa de manera que escriba alguna palabra dentro del rectángulo pero eso podría ser tema para otra sesión de programación en C.

Fuente y despedida

Espero que les haya gustado este nuevo post de programación en C, próximamente estaré subiendo nuevos tutoriales, ando de pasantías y por ello solo podré hacerlo en fines de semana, sin embargo manténganse atentos que vendré con mejor contenido para ustedes, sin más que aportar los dejo con la fuente de toda esta información, nos vemos en una próxima oportunidad.

  • Libro: Programación en C: Metodología, algoritmos y estructura de datos
  • Autor: Luis Joyanes Aguilar

Sort:  

holaaa!! @greylml, a penas vi el msj en discord quise pasarme y leer tu publicacion! particularmetne me gusta mucho la programacion en la uni vi microprocesadores y diseño digital. alli trabajamos con un programa llamado MicroC. Tengo tiempo que no me meto con la programación pero de verdad que es una de mis pasiones. lo ultimo donde trabaje con ella fue programando en Arduino. Saludos!

Hola @saulrico que interesante, yo en la Universidad trabaje con pic-c y arduino en conjunto con proteus, me alegra tener seguidores amantes de la programación estaré al tanto de tu contenido, saludos amigo.

Como ingeniero civil, puedo decir, que el manejo de la programación facilita muchas labores de cálculo. Gracias por compartir este conocimiento tan útil. Saludos @greylml!

Para eso estamos @eliaschess333 pronto subiré más contenido de interés :)

hola amigo saludos. en varias oportunidades hice cursos de lenguaje c++ y fue genial incluso recuerdo el primer ejercicio que fue HOLA MUNDO jajaja creo que todos pasamos por alli.

@eleonardo de hecho si jeje cuando haces tú primer Hola mundo quieres ir por más y eso es lo interesante no se sabe lo que puedes llegar a lograr, un saludo.

Buen post @greylml, como suelo decir a mis estudiante el lenguaje C es el creador de todo, actualmente existen muchos lenguajes de programación pero todo programador debe conocer un lenguaje tan fundamental como C y también su versión que añade Programación Orientada a Objetos C+++.

Asi es @ydavgonzalez de hecho los motores gráficos 2D de mugen fueron creados con C y gracias a eso tenemos unos divertidos juegos de pelea hechos por nosotros mismos. Es muy divertido deberías investigarlo

Muy bueno. en mi caso me gustaría aprender Matlab.

Wow @atheneav mis respetos, Matlab es bastante potente, es la base de wolfram Alpha la app de matemáticas más potente que existe.

Buenas @greylml, este post se ha votado a través del Proyecto Cervantes 'Posts de Calidad'. Un saludo.

Muchas gracias por tomarme en cuenta @cervantes :)

Te felicito, pues es un post muy trabajado, merecedor del voto @cervantes

Muchas gracias amigo @jmhb85 un saludo.

Coin Marketplace

STEEM 0.35
TRX 0.12
JST 0.040
BTC 70541.68
ETH 3582.21
USDT 1.00
SBD 4.74