Documentos de Académico
Documentos de Profesional
Documentos de Cultura
aprende.olimpiada-informatica.org/cpp-variables-cin
Requisitos:
No todo lo que hacemos con nuestro programa se muestra por pantalla, por lo que
necesitamos un espacio para nuestro trabajo “interno”. A este espacio le llamamos
“variables”. Podemos entender una variable como una cajita donde guardamos un valor.
Veamos un ejemplo:
#include <iostream>
using namespace std;
int main() {
int numero_de_continentes; //cuarta línea
numero_de_continentes = 5; //quinta línea
cout << "Numero de continentes en la Tierra: ";
cout << numero_de_continentes; //séptima línea
}
Así vemos en la cuarta línea que para crear una variable debemos escribir su tipo seguido del
nombre que queremos dar a esta variable. A esto lo llamamos “declarar” una variable. Es
importante dar a las variables nombres claros que identifiquen para qué las vamos a usar, y
todavía más importante recordar que los nombres de las variables solo pueden tener letras,
números (aunque no en la primera posición) y el carácter “_” ¡En ningún caso el nombre de
una variable puede contener espacios!
1/5
Pero, vaya, hace poco descubrieron un nuevo continente, Zelandia. Así que vamos a hacer
una operación con la variable numero_de_continentes para reflejar este cambio:
#include <iostream>
using namespace std;
int main() {
int numero_de_continentes;
numero_de_continentes = 5 + 1; //quinta línea
cout << "Numero de continentes en la Tierra: ";
cout << numero_de_continentes;
}
Fíjate en la quinta línea ¡Qué maravilla! ¡Puedo realizar operaciones y asignar el resultado a
una variable! (por supuesto también podría haber escrito directamente (
numero_de_continentes = 6; ).
Pero la principal ventaja de una variable es poder cambiar su valor, así que veámoslo usando
el mismo ejemplo:
#include <iostream>
using namespace std;
int main() {
int numero_de_continentes;
numero_de_continentes = 5;
numero_de_continentes = numero_de_continentes + 1;
cout << "Numero de continentes en la Tierra: ";
cout << numero_de_continentes;
}
Hemos añadido una línea. ¿Qué hace? Pues la variable numero_de_continentes, que tenía el
valor 5 pasa a tener el valor… numero_de_continentes + 1 ¿Y eso qué es? Muy sencillo: es el
valor que tiene numero_de_continentes más 1. Es decir, 5 + 1, es decir, 6. A partir de esa
línea numero_de_continentes ya no tiene el valor 5 sino el valor 6, por tanto lo que dirá por
pantalla es que la Tierra tiene 6 continentes.
#include <iostream>
using namespace std;
int main() {
int numero_de_continentes = 5 + 1; // o podemos poner 6 directamente (cuarta
línea)
cout << "Numero de continentes en la Tierra: " << numero_de_continentes; //quinta
línea
}
Vemos en la cuarta línea que en la misma instrucción en la que declaramos una variable
podemos asignarle un valor. Y vemos en la quinta línea que también podemos enviar a la
pantalla variables sin necesidad de usar una instrucción específica para ello, sino “reutilizar”
otro cout para que el código se parezca más a lo que se verá en la pantalla.
2/5
Pero también hay quien cuenta América del norte y América del sur como dos continentes
distintos. Y también podemos contar la Antártida como otro continente. Entonces ¿Cuántos
continentes debemos decir que hay? Lo mejor es que le preguntemos al usuario:
#include <iostream>
using namespace std;
int main() {
int numero_de_continentes_fijos = 5;
cout << “La Tierra tiene un minimo de “ << numero_de_continentes_fijos << “
continentes. Dime cuanto continentes mas consideras tu que tiene la Tierra: “;
//quinta línea
int numero_de_continentes_adicionales; //sexta línea
cin >> numero_de_continentes_adicionales;
int numero_de_continentes = numero_de_continentes_fijos +
numero_de_continentes_adicionales; //octava línea
cout << "Numero de continentes en la Tierra: " << numero_de_continentes;
}
En el ejemplo anterior hay algunas cosas más a destacar. Por ejemplo en la quinta línea
puedes ver cómo enviar un texto algo más complejo a la pantalla, y en la octava línea verás
que la variable numero_de_continentes guarda el resultado de sumar otras dos variables:
numero_de_continentes_fijos y numero_de_continentes_adicionales.
Ahora queremos decir uno de los continentes para demostrar que sabemos de lo que
hablamos. Bueno, le vamos a pedir al usuario que nos diga uno…
#include <iostream>
using namespace std;
int main() {
int numero_de_continentes_fijos = 5;
cout << “La Tierra tiene un minimo de “ << numero_de_continentes_fijos << “
continentes. Dime cuanto continentes mas consideras tu que tiene la Tierra: “;
int numero_de_continentes_adicionales;
cin >> numero_de_continentes_adicionales;
int numero_de_continentes = numero_de_continentes_fijos +
numero_de_continentes_adicionales;
cout << “Dime el nombre de un continente: “;
string nombre_continente; //décima línea
cin >> nombre_continente;
cout << "En la Tierra hay " << numero_de_continentes << " continentes y uno de
ellos es " << nombre_continente;
}
3/5
Fíjate en la décima línea que la variable nombre_continente no es de tipo int, sino de tipo
string. Las variables de tipo string almacenan texto. Y como ves son tan fáciles de usar como
las de tipo int, o incluso más fáciles porque no podemos realizar ninguna operación con ellas
(no puedes sumar una palabra, ni restarla, ni multiplicarla, …).
La primera es que cuando le asignamos un valor literal (un valor escrito directamente en el
código) debemos escribirlo entre comillas dobles. Han de ser comillas dobles y no comillas
simples. Tal como hacemos con el resto de textos en nuestros códigos C++ (por ejemplo los
que mostramos por pantalla con cout).
#include <iostream>
using namespace std;
int main() {
string nuevo_continente = “Zelandia”;
cout << "En ultimo continente descubierto en la Tierra es " << nuevo_continente;
}
La otra cosa es que cuando leemos un string del teclado solo podemos leer una palabra. Si
queremos leer una frase o en general un texto con espacios, tendremos que usar la
instrucción getline():
#include <iostream>
using namespace std;
int main() {
string cancion;
cout << "Dime tu cancion preferida, en minusculas: " << cancion;
getline(cin, cancion);
if (cancion == “god only knows”) {
cout << “Tambien es la cancion favorita de Paul McCartney“;
} else {
cout << “No la conozco pero seguro que es una gran cancion“;
}
}
El formato de esta lectura del teclado es un poco distinto al habitual. Aquí le decimos en la
sexta línea a getline() que lea toda una línea del teclado (cin) y lo guarde en la variable
cancion.
Comentarios
4/5
Respuesta
5/5