Entrada, Salida,Variables, Tipos y Objetos de Memoria en C++
En esta parte, vamos a explorar algunos de los conceptos más fundamentales de la programación: entrada, salida y variables. Entender estos conceptos te permitirá comunicarte con la computadora de manera efectiva y controlar cómo interactúa con los datos.
¿Qué es la entrada y la salida?
Cuando pensamos en entrada y salida en un programa, básicamente estamos hablando de cómo los datos fluyen hacia y desde nuestra computadora. Si lo analizamos más de cerca, todo lo que entra o sale no es más que datos. Por ejemplo, cuando escribes algo en el teclado, eso es un tipo de entrada. Cuando el programa te muestra algo en la pantalla, eso es un tipo de salida.
Pero ¿cómo puede un programa leer lo que escribimos en el teclado y luego mostrarlo en pantalla? Para hacer esto, necesitamos un medio para capturar esos datos. En C++, esto se hace a través de comandos específicos. Para la entrada, usamos cin (abreviatura de "character input" o entrada de caracteres), y para la salida, usamos cout (abreviatura de "character output" o salida de caracteres). Estas herramientas nos permiten interactuar con el teclado y la pantalla respectivamente.
¿Cómo maneja la computadora los datos?
Cuando ingresas datos, no basta con simplemente leerlos. Necesitamos un lugar donde almacenarlos temporalmente para poder usarlos más adelante en nuestro programa. Ese lugar es la memoria de la computadora. Imagina la memoria como una enorme estantería llena de pequeños compartimentos donde podemos guardar cosas.
Dentro de la memoria, podemos seleccionar un pequeño espacio para almacenar los datos que hemos ingresado. A este espacio lo llamamos objeto, y cuando le asignamos un nombre que podemos usar en nuestro programa, lo llamamos variable.
¿Qué es una variable?
Una variable es simplemente un nombre que asignamos a un espacio en la memoria donde guardamos un dato. Imagina que tienes una caja donde guardas algo importante, y a esa caja le pones una etiqueta para recordar qué hay dentro. Esa etiqueta es el nombre de la variable, y el contenido de la caja es el valor que almacena la variable.
Tipos de datos: ¿qué estamos guardando?
Para la computadora, toda la memoria es simplemente una serie de números binarios (unos y ceros). Sin embargo, en C++ es importante definir qué tipo de datos estamos tratando, para que la computadora sepa cómo interpretarlos. Esto es lo que llamamos tipos de datos.
- Por ejemplo, si estás trabajando con un nombre de una persona, estarás usando una cadena de texto (en C++ se representa como string).
- Si estás trabajando con la edad de una persona, estarás usando un número entero (en C++ se representa como int).
En C++, siempre debemos declarar el tipo de dato que estamos usando, ya que eso le indica al programa cuánta memoria debe reservar y cómo debe tratar ese dato. Imagina al objeto como una caja en la que puedes poner un valor del tipo del objeto:
El primer objeto representaría un objeto de tipo string llamado nombre que contiene el valor "Daniel" y el segundo representa un objeto de tipo int llamado edad que contiene el valor de 52.
Mi primer programa con entrada en C++
El programa "¡Hola Mundo!" solo mostraba un mensaje en pantalla, sin recibir ni procesar información del usuario. Sin embargo, en los programas reales, los datos de entrada son fundamentales para generar resultados personalizados. Ahora mejoraremos "¡Hola Mundo!" para que solicite el nombre del usuario y muestre un mensaje personalizado. Usando una variable tipo cadena de texto (string) podemos leer un nombre y escribirlo de nuevo de esta manera:
El programa anterior tiene algunos elementos nuevos que no estaban en el programa "¡Hola Mundo!":
- using namespace std; evita que tener que escribir std:: antes de cin y cout
- \n es un carácter especial que inserta un salto de línea, moviendo el texto a la siguiente línea en la consola.Tiene en mismo efecto que std::endl.
- // En C++, todo lo que se escribe después del símbolo // (el carácter / llamado slash, dos veces) es un comentario. Los comentarios son ignorados por el compilador, por lo que no afectan la ejecución del programa. Su propósito es agregar información útil para los programadores, ya sea para explicar partes del código o dejar notas para quienes deban mantener o mejorar el programa en el futuro.
La primera línea dentro de main: cout << "Escriba su nombre (seguido de enter)\n"; muestra un mensaje que solicita al usuario que ingrese su nombre desde el teclado. Este tipo de mensaje se llama prompt y espera que el usuario realice una acción, en este caso, escribir su nombre.
A continuación, se define una variable de tipo string llamada nombre,con la siguiente sentencia: string nombre; la cual reserva un espacio en la memoria para almacenar una cadena de caracteres (esto se ilustra en la figura).
La computadora recoge los caracteres que el usuario escribe hasta que se pulsa la tecla Enter, lo que permite corregir la entrada antes de confirmarla.
Después, la siguiente línea usa cin junto con el operador >> para colocar los caracteres ingresados en la variable nombre, cin >> nombre.
Por ejemplo, si escribimos "Valentina" y presionamos Enter, la cadena "Valentina" se convierte en el valor almacenado en nombre.
Variables, Tipos y Objetos
Una variable es un nombre que se asocia con un objeto en la memoria de la computadora, es decir, con un "contenedor" donde se almacena un valor. Las variables nos permiten acceder a estos objetos y trabajar con ellos. Para comprender su importancia, pensemos en cómo los humanos interactuamos con el mundo.
Usamos símbolos para representar cosas: palabras para nombrar objetos, números para contar, y decisiones basadas en respuestas de "sí" o "no". Esto nos permite comunicar, contar, comparar y tomar decisiones. Las computadoras funcionan de manera similar, pero en lugar de palabras o gestos, usan variables para manejar y procesar información.
Cada variable tiene un tipo de dato que define qué tipo de valor puede almacenar, como números, caracteres, palabras o estados lógicos como true o false. Los tipos de datos ayudan a que la computadora maneje la información de manera ordenada, sin mezclar "peras con manzanas", y permite realizar operaciones coherentes y predecibles.
Los tipos Básicos de Objetos
Existen varios tipos básicos al la hora de programar, cada uno especializado en almacenar un tipo de información, por ejemplo:
- -Enteros (int): Para almacenar números enteros, como el puntaje o la cantidad de vidas en un juego.
- -Flotantes (float): Para manejar números con decimales, útiles para coordenadas o velocidad.
- - Booleanos (bool): Para representar decisiones simples de "sí" o "no" (verdadero o falso).
- - Cadenas (string): Para almacenar texto, como el nombre del jugador o mensajes en pantalla.
- - Caracteres (char): Para representar un solo carácter, útil en controles simples o teclas.
Cada uno de estos tipos tiene un propósito específico y ayuda a que el programa funcione correctamente, evitando confusiones o errores.
La raíz de los tipos de datos
Los tipos de datos que usamos hoy en programación tienen su origen en las necesidades matemáticas y lógicas del ser humano. Los números enteros (int) se crearon para manejar las cuentas y los cálculos sencillos. Los números flotantes (float) nacieron de la necesidad de representar valores más precisos, como coordenadas o mediciones que no siempre son enteras.
Por otro lado, el tipo booleano (bool) surgió de la lógica binaria: la capacidad de representar decisiones simples como "verdadero" o "falso", esenciales para la toma de decisiones en cualquier programa. Cada tipo de dato tiene su propósito en la programación, ayudando a manejar y organizar la información de forma lógica y eficiente.
Así, las variables y sus tipos nos permiten construir programas que interactúan de manera confiable y ordenada con la información.
La Operación de Entrada es Sensible al Tipo de Dato.
La entrada con el operador >> se lee de acuerdo al tipo de dato de la variable que lee. Por ejemplo:
//Un Programa que lee Nombre y Edad
#include
using namespace std;
int main()
{
cout << "Escriba su Nombre y su Edad \n";
string nombre; // variable tipo cadena de texto
int edad; // variable tipo numero entero
cin >> nombre; // Lee una cadena
cin >> edad; // Lee un numero entero
cout << "Hola, "<< nombre << "( edad " << edad << " )\n";
return 0;
}
Si escribimos Dennis 28, el operador >> colocara a Dennis en nombre, el numero 28 en edad y escribe en la salida lo siguiente:
Hola, Dennis (edad 28 )
¿Por que no pone (todo) tanto a Dennis y el 28 en la variable nombre. Por convención, la lectura de cadena se termina al encontrar un espacio en blanco, una nueva linea o un carácter de tabulación. Los espacios en blanco también son ignorados por >>.
Resumen:
En esta sección, has aprendido que:
- - La entrada es la información que la computadora recibe, usualmente a través de un teclado, y la salida es la información que la computadora envía, como lo que se muestra en la pantalla.
- - Los datos que ingresamos o mostramos necesitan un lugar donde almacenarse, ese lugar es la memoria.
- - Un objeto es una porción de memoria que usamos para guardar datos, y una variable es el nombre que le damos a esa porción.
- - Es fundamental definir el tipo de dato que vamos a usar en C++, para que la computadora pueda interpretarlo correctamente.
Código Fuente del Primer Programa con Entrada en C++ :
#include
using namespace std;
int main(){
cout << "Escriba su nombre (seguido de enter)\n";
string nombre; // nombre es una variable de tipo string
cin >> nombre; // guarda los caracteres en nombre
cout << "¡Hola, " << nombre << "!\n";
}






Comentarios
Publicar un comentario