Elementos Básicos en La Programación en C++ Entre Llaves
Elementos Básicos en La Programación en C++ Entre Llaves
C++ es un lenguaje de programación diseñado a mediados de los años 1980 por Bjarne
Stroustrup. La intención de su creación fue el extender al exitoso lenguaje de programación
C con mecanismos que permitan la manipulación de objetos. En ese sentido, desde el punto
de vista de los lenguajes orientados a objetos, el C++ es un lenguaje híbrido.
{} Entre llaves
Una llave de apertura “{“siempre debe ir seguida de una llave de cierre “}”, si no es así el
compilador dará errores. El entorno de programación de Arduino incluye una herramienta
de gran utilidad para comprobar el total de llaves. Sólo tienes que hacer click en el punto de
inserción de una llave abierta e inmediatamente se marca el correspondiente cierre de ese
bloque (llave cerrada).
; Punto y coma
Los bloques de comentarios, o comentarios multi-línea son áreas de texto ignorados por el
programa que se utilizan para las descripciones del código o comentarios que ayudan a
comprender el programa. Comienzan con / * y terminan con * / y pueden abarcar varias
líneas.
Debido a que los comentarios son ignorados por el compilador y no ocupan espacio en la
memoria de Arduino pueden ser utilizados con generosidad.
// Línea de comentarios
Una línea de comentario empieza con / / y terminan con la siguiente línea de código. Al
igual que los comentarios de bloque, los de línea son ignoradas por el programa y no
ocupan espacio en la memoria.
Una línea de comentario se utiliza a menudo después de una instrucción, para proporcionar
más información acerca de lo que hace esta o para recordarla más adelante.
VARIABLES
int; es numérico sirve para números enteros sin punto decimal (1,2,3,4.. )
float; es numérico y sirve para números con parte fraccionaria, es decir con punto decimal (
1.2, 1.3, 1.4, ….)
char; es de tipo carácter y cadena de caracteres, es decir que puedes asignar desde una
letra, símbolo o numero hasta una palabra o serie de caracteres ( a, 2, !, &, hola, etc.)
bool; es de tipo verdadero o falso, este tipo de dato mostrara en pantalla un “1” en caso de
ser true o “0” en caso de ser false.
La función de cada operador depende del tipo que se esté utilizando, veamos cada uno de
ellos.
Tipos de operadores
Operadores de asignación.
Como su nombre lo dice su función es asignar un valor especifico a una variable mediante
una asignación simple (=) o por dos operadores, llamados operadores compuestos.
Operador Acción
= Asignación Básica
*= Asigna Producto
/= Asigna División
+= Asigna Suma
-= Asigna Resta
%= Asigna Modulo
<<= Asigna
Desplazamiento
Izquierda
Asigna
>>= Desplazamiento
Derecha
Asigna OR entre
|=
Bits
Los últimos 5 operadores de asignación requieren un tipo de dato especifico, por ello se
utiliza el tipo entero (int). El resto utiliza cualquier tipo para las variables siempre y cuando
no sean constates.
Operadores Aritméticos.
Son aquello símbolos que nos permiten hacer operaciones o cálculos simples. Los
operadores de decremento e incremento, suman o restan por defecto un 1 al valor de la
variable. Suelen ser usados como mayor frecuencia en ciclos repetitivos.
– Resta
+ Suma
* Multiplicación
/ División
% Módulo
— Decremento
++ Incremento
Permiten evaluar una la igualdad y la magnitud, es decir si dos variables son iguales,
diferentes o menores, a su vez permite comprobar o bien probar la veracidad de una
condición, propuesta o pregunta, la respuesta es de valor booleano (verdadero que es igual
1 por defecto, y falso que le corresponde el 0).
Operador Acción
< Menor
> Mayor
Menor o
<=
igual
Mayor o
>=
igual
== Igual
¡= Diferente
Dentro del código, en la parte del if, primero compara si c es mayor, por lo tanto sea cual
sea el mensaje que haya dentro del bloque correspondiente ({ }), se ejecutara o e mostrar.
Operadores Lógicos
Producen un resultado booleano, les corresponden lógicos los cuales están relacionados con
cierto o falso, podría decirse que ayudan a “unir” propiedades. Función de la siguiente
manera.
Operador Acción
|| Disyunción (O) or
! Negación
Operadores de dirección.
Operador Nombre
* Deferencia o in dirección
Son operadores que permiten hacer movimiento a nivel de bits, es decir manejar flags. Que
son variables de tipo entero que puede tomas dos valores.
Estos operadores utilizan la numeración hexadecimal que tiene una relación directa a 4
dígitos binarios, la cual puedes encontrar en una tabla ASCII o bien buscando una tabla
específica para esta numeración.
El operador AND (&): compara dos bits; si los dos son 1 el resultado es 1, en otro caso el
resultado será 0.
El operador OR (): compara dos bits; si cualquiera de los dos bits es 1, entonces
el resultado es 1; en otro caso será 0.
El operador XOR (): dará como resultado un 1 si cualquiera de los dos
operandos es 1, pero no los dos a la vez.
El operador de complemento (): Este operador devuelve como resultado el
complemento a uno del operando:
Existe un último operador, este a diferencia del resto es ternario, es decir utiliza tres
variables u operandos es (?) y sirve para escribir expresiones condicionales. Su formato es
el siguiente
ESTRUCTURAS SELECTIVAS
1. Simple → (Si_entonces)
2. Doble → (Si_entonces_sino)
4. Múltiple → ( Si_múltiple)
Permite ejecutar una acción o grupo de acciones solo si se cumple una determinada
condición, es decir, donde la condición “C” es un grupo de condiciones a evaluarse. El
bloque “A” representa la operación o conjunto de operaciones a realizar si la condición “C”
es verdadera.
También se puede decir que se evalúa la condición “C” si es verdadero (true) se ejecuta
todas las sentencias que están dentro de las llaves (en C++), hasta el Finsi (en
pseudocódigo) para luego continuar con la siguiente línea de código que esta después.
En caso que la condición “C” sea falsa (false) no se ejecutara las sentencias dentro de las
llaves (en C++), hasta el Finsi (en pseudocódigo), y el control pasa a la siguiente
instrucción de programa (en orden descendente).
En el caso de que haya una sola sentencia a ejecutarse cuando la condición a evaluar sea
verdadera se pueden omitir los corchetes, en caso de que haya más de dos sentencias el uso
de corchetes es obligatoria.
Permite seleccionar una ruta de dos posibles, en base a la verdad (V) o falsedad (F) de la
condición.
SENTENCIAS ANIDADAS
Una estructura de decisión puede estar anidada dentro de otra estructura de decisión, hay
que tener en cuenta que el anidamiento sea total.
Se debe mantener el concepto que una estructura de decisión debe tener una sola entrada y
una sola salida tanto para la estructura que anida como para la estructura anidada.
La estructura selectiva múltiple permite que el flujo del diagrama se bifurque por varias
ramas en el punto de la toma de decisión(es), esto en función del valor que tome el selector.
Así si el selector toma el valor 1 se ejecutará la acción 1, si toma el valor 2 se ejecutará la
acción 2, si toma el valor N se realizará la acción N, y si toma un valor distinto de los
valores comprendidos entre 1 y N, se continuará con el flujo normal del diagrama
realizándose la acción N + 1.
La entrada y salida de datos en C++ es simple (al menos para los casos más comunes). Con
esto hago una comparación entre C++ y Java, pues leer una entrada del usuario por teclado
en C++ es bastante simple mientras que en Java implica una serie de conceptos adicionales
que la hacen un tanto más complicada. Por suerte para nosotros en esta sección veremos
cómo leer por teclado en C++, en otras palabras, asignar a una variable el valor que el
usuario escriba por el teclado. Adicional a esto veremos también cómo mostrar texto por
pantalla en C++, es decir, salida de datos.
Vamos a comenzar primero con aprender a mostrar texto por pantalla en C++. Este orden
se debe a que cuando queremos pedirle algún dato al usuario primero debemos hacerle
saber lo que queremos que ingrese y para hacérselo saber debemos mostrarle un mensaje
con las indicaciones, por tal motivo es importante primero saber mostrar texto en pantalla
en C++ y luego a leer texto por teclado en C++.
Mostrar texto por pantalla en C++ es muy simple. Para imprimir una salida de texto en C++
se hace uso de la instrucción cout<< es importante tener en cuenta que la instrucción cout
siempre va acompañada de << para controlar el flujo de datos que sale. No te fijes mucho
en ellos, solo ten siempre presente que cout viene acompañado de << para tener cout<<
como resultado.
Tal como mencioné hace un momento, la lectura de datos en C++ es bastante simple. Leer
datos por teclado en C++ se hace usando el comando cin >> es importante notar el uso de
los dos signos >> que son usados para controlar el flujo de datos. No te preocupes mucho
por ellos, solo ten en cuenta que cada vez que vaya a usar la instrucción cin debes agregarle
>> para quedar con un cin>>. Una manera muy sencilla de recordar esta instrucción es que
in significa entrar y como estamos programando en C++ le añadimos la letra C al comienzo
quedando así cin>> (sin olvidar los >>).
Veamos unos ejemplos simples para leer datos en C++. Recuerda como dije más arriba que
lo ideal para leer datos es indicarle al usuario qué es lo que esperamos que ingrese por lo
que en estos ejemplos usaremos también lo recién aprendido (mostrar texto por pantalla).