Tutorial de C++ - Operadores

5 - Operadores

[editar]
Tutorial creado por Peter Class; traducción por Pello Xabier Altadill Izura. Extraido de: http://es.tldp.org/Manuales-LuCAS/doc-tutorial-c++/html/
28 de Febrero de 2006

Bueno, conociendo los tipos de datos ya podemos empezar a operar con ellos. Dentro de c++ tenemos los tipicos operadores matematicos + - * / y tambien los operadores unarios (++ --) En este primer ejemplo vemos operadores unarios y la asignacion multiple.

/**
  * Operadores.cpp
  * Programa para probar algunos operadores
  * Pello Xabier Altadill Izura 
  *
  * Compilado: g++ Operadores.cpp -o Operadores
  */
  
  using namespace std;
  #include <iostream>
  
  int main () {
  
   // Sacamos por salida standar un mensaje
   cout << "Vamos a probar los operadores\n";
   
   unsigned int test = 0;
   unsigned int a = 0, b = 0, c;
   
   // Sacamos el valor por pantalla de test
   cout << "Valor de test: " << test << endl;
  
   // Sacamos el valor por pantalla de test++
   cout << "Valor de test++: " << (test++) << endl;
  
   // Sacamos el valor por pantalla de ++test
   cout << "Valor de ++test: " << (++test) << endl;
  
   cout << "Valor de test actual: " << test << endl;
   
   // asignacion multiple
   c = b = a = test;
   
   // Veamos el resto de valores
   cout << "Y los demas: " << c << " " << b << " " << a << endl;
   
   return 0;
  
  }
  
  /**
  * Operadores.cpp
  * Programa para probar algunos operadores
  * Pello Xabier Altadill Izura 
  *
  * Compilado: g++ Operadores.cpp -o Operadores
  */
  
  using namespace std;
  #include <iostream>
  
  int main () {
  
   // Sacamos por salida standar un mensaje
   cout << "Vamos a probar los operadores\n";
  
   unsigned int test = 0;
   unsigned int a = 0, b = 0, c;
  
   // Sacamos el valor por pantalla de test
   cout << "Valor de test: " << test << endl;
   
   // Sacamos el valor por pantalla de test++
   cout << "Valor de test++: " << (test++) << endl;
  
   // Sacamos el valor por pantalla de ++test
   cout << "Valor de ++test: " << (++test) << endl;
  
   cout << "Valor de test actual: " << test << endl;
   // asignacion multiple
   c = b = a = test;
   
   // Veamos el resto de valores
   cout << "Y los demas: " << c << " " << b << " " << a << endl;
  
   return 0;
  
  }
  

Figura: aprendiendo c++ puedes escalar socialmente. Aunque si lo que quieres es ganar dinero, quedate en el campo.

En el siguiente codigo vamos un poco mas alla y se muestra algunas operaciones abreviadas y algunas comparaciones.

/**
  * Operadores2.cpp
  * Programa para probar algunos operadores segunda parte
  * Pello Xabier Altadill Izura 
  *
  * Compilado: g++ Operadores2.cpp -o Operadores2
  */
  
  using namespace std;
  #include <iostream>
  
  int main () {
  
   // Sacamos por salida standar un mensaje
   cout << "Vamos a probar los operadores\n";
  
   unsigned int test = 0;
   unsigned int a = 0, b = 0, c;
   
   // asignacion multiple
   c = b = a = ++test;
  
   b += 3;
   c++;
   a -= 1;
  
   // Veamos el resto de valores
   cout << "Son estos: c=" << c << " b=" << b << " a=" << a << endl;
   
   a += b + c;
   
   cout << "Y ahora son estos: c=" << c << " b=" << b << " a=" << a << endl;
   
   // Tomamos el valor a
   cout << "Dame valores. \na=";
   cin >> a;
  
   // Tomamos el valor b
   cout << "b=";
   cin >> b;
  
   // Tomamos el valor c
   cout << "c=";
   cin >> c;
  
   cout << "Y ahora son estos: c=" << c << " b=" << b << " a=" << a << endl;
  
   //Probamos el if 
   if (a > b) {
    cout << "A es mayor que B" << endl;
   }
   
   //Probamos el if
   if (a >= b) {
    cout << "A es mayor o igual que B" << endl;
   }
  
   //Probamos el if
   if (a <= b) {
    cout << "A es menor o igual que B" << endl;
   }
  
   return 0;
  
  }
  

Operadores logicos. A continuacion vemos algunos ejemplos de operadores logicos (comparaciones) y la combinacion de estos.

/**
  * Logicos.cpp
  * Programa para probar operadores Logicos
  *
  * Pello Xabier Altadill Izura 
  *
  * Compilado: g++ Logicos.cpp -o Logicos
  */
  
  using namespace std;
  #include <iostream>
  
  int main () {
  
   // Sacamos por salida standar un mensaje
   cout << "Vamos a probar los operadores\n";
  
   unsigned int test = 0;
   int a = 23, b = 21, c = 34;
  
   // Veamos el resto de valores
   cout << "Valores: " << c << " " << b << " " << a << endl;
  
   // Tomamos el valor a
   cout << "Dame valores. \na=";
   cin >> a;
  
   // Tomamos el valor b
   cout << "b=";
   cin >> b;
   
   // Tomamos el valor c
   cout << "c=";
   cin >> c;
  
   cout << "Y ahora son estos: c=" << c << " b=" << b << " a=" << a << endl;
   
   // Veamos una sentencia if-else sencilla
   if (!(a == b)) 
    cout << "a y b no son iguales" << endl;
   else
    cout << "a y b son iguales" << endl;
  
   // Veamos otra sentencia if-else sencilla
   if ((a == b) || (b == c)) 
    cout << "A y B son iguales o B y C son iguales" << endl;
   else
    cout << "ni A y B son iguales ni B y C son iguales" << endl;
  
   // Nota. Ley de De Morgan
   // !(A && B) == !A || !B
   // !(A || B) == !A && !B
  
   return 0;
  
  }
  

Mas operadores logicos. Tambien introducimos el operador ()?: que simplifica las expresiones pero las hace un poco ilegibles.

/**
  * Logicos2.cpp
  * Programa para probar operadores Logicos 2
  *
  * Pello Xabier Altadill Izura 
  *
  * Compilado: g++ Logicos2.cpp -o Logicos2
  */
  
  using namespace std;
  #include <iostream>
  
  int main () {
  
   // Sacamos por salida standar un mensaje
   cout << "Vamos a probar los operadores\n";
  
   unsigned int test = 0;
   int a = 23, b = 21, c = 34;
  
   // Veamos el resto de valores
   cout << "Valores: " << c << " " << b << " " << a << endl;
   
   // Tomamos el valor a
   cout << "Dame valores. \na=";
   cin >> a;
  
   // Tomamos el valor b
   cout << "b=";
   cin >> b;
   
   // Tomamos el valor c
   cout << "c=";
   cin >> c;
  
   cout << "Y ahora son estos: c=" << c << " b=" << b << " a=" << a << endl;
   
   // Veamos una sentencia if-else sencilla
   if (!a) 
    cout << "A es false (igual 0)" << endl;
   else
    cout << "A es true (distinto de 0)" << endl;
  
   // Veamos una sentencia if-else sencilla
   if (!b) 
    cout << "B es false (igual 0)" << endl;
   else
    cout << "B es true (distinto de 0)" << endl;
  
   // Veamos una sentencia if-else sencilla
   if (!c) 
    cout << "C es false (igual 0)" << endl;
   else
    cout << "C es true (distinto de 0)" << endl;
  
   // Sentencia con operador logico o TERNARIO ()?:
   c = (a == b)?0:1;
   
   cout << "C es : " << c << endl;
  
   return 0;
  
  }
  

If-else Introduciendo esta simple estructura de control:

/**
  * IfElse.cpp
  * Programa para probar If Else anindados
  * En c++ no existe la estructura if-elsif-else
  * Pello Xabier Altadill Izura 
  *
  * Compilado: g++ IfElse.cpp -o IfElse
  */
  
  using namespace std;
  #include <iostream>
  
  int main () {
   
   // Sacamos por salida standar un mensaje
   cout << "Vamos a probar los operadores\n";
  
   unsigned int test = 0;
   int a = 23, b = 21, c = 34;
  
   // Veamos el resto de valores
   cout << "Valores: " << c << " " << b << " " << a << endl;
   
   // Veamos una sentencia if-else sencilla
   if (a >= b) 
    cout << "a mayor o igual que b" << endl;
   else
    cout << "a menor que b" << endl;
   
   // Veamos una sentencia if-else compleja
   // nota: si dentro de un if o un else metemos mas de una sentencia, hay que meter LLAVES
   // y tambien conviene meter las llaves para hacer un codigo menos confuso
   if (a >= b) {
    cout << "a mayor o igual que b" << endl;
    if (a == 23) {
     cout << "a igual que 23" << endl;
     cout << "terminamos." << endl; 
    }
   } else {
    cout << "a menor que b" << endl;
   }
  
  return 0;
  
  }
  
[editar]

23 opiniones

yery cruz

12345
DamiaN

Mal exlicado :S,
no dice nada

agan algo de servicio por favor no mas estupidos
alegoria

cuando uno va a esplicar de progamacion primero se esplican los concepto, delas intrucciones,para que el estudiante sepa lo que se dice o de lo que se esta hablando, si es que esta pagina intructiva, sinoo no pongan estos ejemplo pues son tan astracto para los principiates que lo que hacen es asustarlos y seban , para esto de maestro, hay que ser humilde yno creer que como ya yo se no me importa lo que venga, no tomen esto, como algo mejoren, mejoren,mejoren, los quiero mucho migel.
Sobre nombre de array.

Hola, peter. Respecto a tu primera pregunta sobre cómo nombrar lo que en el código aparece como "array" en inglés, te puedo decir que no es correcta ninguna de las dos opciones que ofreces. Si se usa "arrays" se está españolizando la palabra inglesa "array". No muy conveniente, porque en español ya existe la palabra adecuada para ese concepto: "vector". De todos modos, españolizar una palabra inglesa en argot técnico no es tan grave como usar la palabra española traducida según una acepción inglesa incorrecta. Nunca se debería usar "arreglo".
1 2 3 4 5 | siguiente >

Tutoriales relacionados con 'Tutorial de C++'

Este es el diario de Peter Class sobre sus dias aprendizaje de una disciplina de... Más »
Este tutorial presenta los conceptos básicos de líneas de transmisión (Transmission lines), así como una... Más »
Si tuviera que buscar un adjetivo para calificar a Sendmail, pensaría en "excesivo". Excesivo puesto... Más »
La red telefónica básica se creó para permitir las comunicaciones de voz a distancia. Esto... Más »
Bienvenidos al manual de HTML de Indaya.A través de todos estos capítulos vamos a descubrir... Más »

Autor y licencia de 'Tutorial de C++'


Tutorial de Peter Class; traducción por Pello Xabier Altadill Izura. Extraido de: http://es.tldp.org/Manuales-LuCAS/doc-tutorial-c++/html/ CopyLeft
Este documento se cede al dominio publico.
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.