Está en la página 1de 5

Estructura de un programa C++

Esta línea es un comentario.


Todas las líneas que comienzan con dos barras (//) se consideran comentarios y no tienen ningún
efecto sobre el comportamiento del programa.
Los comentarios también pueden ir entre los símbolos /* y */. En ese caso pueden ocupar más
de una línea.
#include <iostream>
Esta línea es una directiva del preprocesador.
Todas las líneas que comienzan con el símbolo # son directivas para el preprocesador.
La directiva #include, sirve para insertar ficheros externos dentro de nuestro programa. Estos
ficheros son conocidos como ficheros incluidos, ficheros de cabecera o headers.
En este caso, la directiva #include <iostream> indica al preprocesador que en este programa se
debe incluir el archivo iostream. El código fuente no cambia, pero el compilador ve el fichero
incluido.
iostream es la librería de entrada/salida de C++. Si no se incluye esta librería no podemos utilizar
la instrucción cout para imprimir un mensaje por pantalla.
La inclusión de ficheros la podemos realizar de dos formas:
#include <nombre de fichero cabecera>
#include "nombre de fichero de cabecera"
En el primer caso el preprocesador buscará en los directorios include definidos en el compilador.
En el segundo, se buscará primero en el directorio actual, es decir, en el que se encuentre el
fichero fuente, si no existe en ese directorio, se buscará en los directorios include definidos en el
compilador. Si se proporciona el camino como parte del nombre de fichero, sólo se buscará en el
directorio especificado.

using namespace std;


En grandes proyectos formados por varios archivos, es posible que en archivos diferentes del
mismo proyecto se encuentren recursos con el mismo nombre. Para evitar confusiones y saber a
qué recurso estamos haciendo referencia se utilizan los espacios de nombres (namespace).
Un espacio de nombres es básicamente un conjunto de nombres de recursos (clases, métodos,
funciones, etc) en el cual todos los nombres son únicos.
Todos los elementos de la biblioteca estándar de C++ se declaran dentro de un espacio de
nombres llamado std.
Con la instrucción using namespace std estamos indicando que vamos a usar este espacio de
nombres.
Esta línea se incluirá en la mayoría de programas que escribamos en C++.
Si no la escribimos, la instrucción cout << "Hola mundo!!!\n"; tendríamos que escribirla
indicando el espacio de nombres donde se declara cout así:
std::cout<<”Hola mundo!!!\n”;
int main (void)
Un programa en C++ no orientado a objetos está formado básicamente por una o varias
funciones.
La función main es la función principal del programa.
La función principal es el punto de inicio del programa. Si el programa contiene varias funciones,
la ejecución del mismo comienza por la función main.
Todo programa escrito en C++ debe contener una función main.
Las llaves { } indican donde empiezan y donde acaban las instrucciones de la función.
cout << "Hola mundo!!!\n";
Esta línea muestra por pantalla Hola mundo!!! y un salto de línea.
cout es un objeto que se declara en el archivo iostream en el espacio de nombres std, por eso
tenemos que incluir ese archivo al principio del programa y declarar que vamos a utilizar ese
espacio de nombres.
La instrucción acaba con punto y coma.
El punto y coma se utiliza para indicar el final de una instrucción y sirve para separarla de
instrucciones posteriores.

Los conectores lógicos son palabras y/o expresiones que sirven para enlazar las distintas
ideas en una oración, párrafo o texto. Por ejemplo: además, también, si bien, pero.

Los conectores lógicos se utilizan para dar fluidez y claridad a un texto, otorgando a las ideas
un orden lógico. Sin ellos, los textos serían solo un conjunto de oraciones independientes y
aisladas.

 Ver también: Tipos de conectores

Tipos de conectores

 Aditivos. Suman una idea nueva a lo ya dicho, o incrementan su sentido con lo


nuevo.
 Adversativos. Oponen una idea nueva a lo ya dicho. Pueden ser de tres tipos:
 Causales. Expresan una idea de causalidad respecto a lo dicho.
 Consecutivos. Expresan una idea de consecuencia respecto a lo dicho.
 Comparativos. Equiparan la idea nueva con la ya dicha.
 Modales. Expresan un modo específico o una manera puntual de lo contenido en la
idea nueva.
 Secuenciales. Introducen una relación de tiempo (secuencia) entre las ideas nuevas
y viejas.
 Reformulativos. Retoman lo ya dicho, vuelven a ello para decirlo de otra manera.
Pueden clasificarse a su vez en:
o Explicativos. Reformulan más claramente lo anterior, con fines pedagógicos.
o Recapitulativos. Anteceden a un resumen o una síntesis de lo anterior.
o Ejemplificativos. Introducen un ejemplo pertinente para entender las ideas
previas.
o Correctivos. Corrigen la información anterior, pudiendo incluso contradecirla.
 Ordenadores. Fáticos, preparan al oyente para las ideas por venir, aludiendo a la
parte del texto total a que pertenecen: principio, medio, fin, etc. Pueden clasificarse en:
o Iniciales. Sirven de introducción a las ideas expresadas.
o Transitivos. Permiten pasar de un conjunto de ideas a otro diferente.
o Digresivos. Permiten apartarse del flujo principal de las ideas y aludir a cosas
que no tienen estrictamente que ver.
o Temporales. Aluden al tiempo pasado, presente o futuro del lugar en que se
enuncia el discurso o la realidad en que se circunscribe.
o Espaciales. Conducen al receptor metafóricamente hacia diversos segmentos
de lo dicho.
o Finales. Preparan al receptor para el final de la alocución.
Ejemplos de oraciones con conectores lógicos
1. Me gustan las arvejas de tu abuela y sus milanesas también (aditivo)
2. Ese Julián es muy confianzudo, además de ser tan tacaño (aditivo)
3. No sólo nos quedamos sin plata, encima se nos dañó la nevera (aditivo)
4. El acusado es un ladrón y, por añadidura, un homicida confeso (aditivo)
5. No te queremos aquí, Eric. Es más, queremos que te largues de inmediato (aditivo)
6. Fuimos al mercado, también al gimnasio (aditivo)
7. Pagamos un taxi carísimo y para colmo llegamos tarde (aditivo)
8. Te invito a cenar, a bailar… ¡hasta te invito a mi casa! (aditivo)
9. Eres un desastre, pero te quiero un montón (adversativo)
10. Nuestro viaje termina aquí. No obstante, nos volveremos a ver mañana (adversativo)

Operadores lógicos
Los operadores lógicos pueden crear condiciones compuestas en una fórmula, como que se deben cumplir
dos o más condiciones para elegir un determinado método de cálculo. Con los operadores lógicos, puede
describir estas combinaciones de condiciones.
Utilice AND, OR o XOR con dos expresiones; utilice NOT con una expresión.

Símbolo Definición

AND Verdadero sólo si los dos elementos son verdaderos

OR Verdadero si cualquiera de los elementos es verdadero

XOR Verdadero si cualquiera de las expresiones (pero no


ambas) es verdadera

NOT Cambia el valor de Falso a Verdadero y viceversa

Ejemplos
Utilice SolicitudRecibida="S" AND TarifaPagada>0 si desea que algo ocurra solo si ha recibido
tanto la solicitud como la tarifa.
Utilice SaldoActual≤0 OR CréditoAprobado="S" si desea que algo ocurra sólo si no se debe dinero o
si se ha aprobado el crédito o si ambas opciones son verdaderas.
Utilice TarifaPagada>0 XOR RegaloGratuito="S" si desea que algo ocurra si se ha pagado una tarifa
o si se ha enviado un regalo gratuito, pero no si se producen las dos condiciones (por ejemplo, si no se ha
pagado una tarifa y se ha enviado un regalo gratuito).
Utilice NOT IsEmpty(NombreCampo) para identificar los registros que tienen un valor en el campo
NombreCampo.

Resumen

Ejecuta una sentencia si una condición específicada es evaluada como verdadera. Si la


condición es evaluada como falsa, otra sentencia puede ser ejecutada.
Sintaxis

if (condición) sentencia1 [else sentencia2]


condición

Una expresión que puede ser evaluada como verdadera o falsa.

sentencia1
Sentencia que se ejecutará si condición es evaluada como verdadera. Puede ser cualquier
sentencia, incluyendo otras sentenccias if anidadas. Para ejecutar múltiples sentencias, use
una sentencia block ({ ... }) para agruparlas.
sentencia2

Sentencia que se ejecutará si condición se evalúa como falsa, y exista una cláusula else.
Puede ser cualquier sentencia, incluyendo sentencias block y otras sentencias if anidadas.

Descripción

Multiples sentencias if...else pueden ser anidadas para crear una cláusula else if:

if (condición1)
sentencia1
else if (condición2)
sentencia2
else if (condición3)
sentencia3
...
else
sentenciaN

Para entender como esto funciona, así es como se vería si el anidamiento hubiera sido
indentado correctamente:

if (condición1)
sentencia1
else
if (condición2)
sentencia2
else
if (condición3)
...

Para ejecutar varias sentencias en una cláusula, use una sentencia block ({ ... }) para
agruparlas. Generalmente, es una buena práctica usar siempre sentencias block,
especialmente en código que incluya sentencias if anidadas:

if (condición) {
sentencia1
} else {
sentencia2
}

No confundir los valores primitivos true y false con los valores true y false del
objeto Boolean. Cualquier valor diferente de undefined, null, 0, -0, NaN, o la cadena vacía (""),
y cualquier objecto, incluso un objeto Boolean cuyo valor es false, se evalúa como
verdadero en una sentencia condicional. Por ejemplo:

var b = new Boolean(false);


if (b) // Esta condición se evalúa como verdadera

Ejemplos

Ejemplo: Uso de if...else


if (cipher_char == from_char) {
result = result + to_char;
x++;
} else
result = result + clear_char;

Ejemplo: Asignación en una expresión condicional

Es aconsejable no usar asignaciones simples en una expresión condicional, porque la


asignación puede ser confundida con igualdad (operador relacional) cuando se lee el
código. Por ejemplo, no use el siguiente código:

if (x = y) {
/* sentencia */
}

Si realmente necesita una asignación dentro de una exprsión condicional, una práctica
común es poner paréntesis adicionales alrededor del la asignación, por ejemplo:

if ((x = y)) {
/* sentencia */
}

También podría gustarte