Está en la página 1de 7

Funcin Bsica de un Router. El router es capaz de ver si una ruta no funciona y buscar una alternativa.

El router es capaz incluso de buscar la ruta ms rpida (por ejemplo la que tenga menos trfico) en caso de poder escoger entre varias posibilidades. La funcin de un router, la ms bsica, es, saber si el destinatario de un paquete de informacin est en nuestra propia red o en una remota. Para determinarlo, el router utiliza un mecanismo llamado "mscara de subred". La mscara de subred es parecida a una direccin IP (la identificacin nica de un ordenador en una red de ordenadores, algo as como su nombre y apellido) y determina a que grupo de ordenadores pertenece uno en concreto.
Asi que permite varias cosas: Firewall. Conexin inalambrica (los que tienen antenas). Aumento de los puntos de conexin. Interconexin de tus equipos.
Qu es Routing y Switching? El funcionamiento de una red consiste en conectar los ordenadores y perifricos utilizando dos tipos de equipos: routers y switches. Los routers y switches permiten a los dispositivos que estn conectados a la red comunicarse unos con otros, as como con otras redes. Aunque son muy parecidos, los switches y routers realizan funciones muy diferentes en la red:

Los switches se utilizan para conectar mltiples dispositivos de la misma red dentro de un edificio o campus. Por ejemplo, un switch puede conectar sus ordenadores, impresoras y servidores, creando una red de recursos compartidos. El switch actuar como un controlador, permitiendo a los diferentes dispositivos compartir informacin y comunicarse entre s. Mediante el uso compartido de informacin y la asignacin de recursos, los switches permiten ahorrar dinero y aumentar la productividad. Existen dos tipos bsicos de switches: gestionados y no gestionados. Los switches no gestionados funcionan de forma automtica y no permiten realizar cambios. Los equipos de redes domsticas suelen utilizar switches no gestionados. o Los switches gestionados le permiten acceder a ellos para programarlos. Esto proporciona una gran flexibilidad porque el switch puede monitorizarse y ajustarse local o remotamente, para proporcionarle el control de cmo se transmite el trfico en su red y quin tiene acceso a su red.

Los routers se utilizan para conectar mltiples redes. Por ejemplo, usted utilizar un router para conectar los ordenadores de su red a Internet y de esta forma compartir una conexin a Internet entre muchos usuarios. El router actuar como distribuidor, seleccionando la mejor ruta de desplazamiento de la informacin para que la reciba rpidamente. Los routers analizan los datos que se van a enviar a travs de una red, los empaquetan de forma diferente y los envan a otra red o a travs de un tipo de red distinto. Conectan su negocio con el mundo exterior, protegen la informacin de las amenazas de seguridad, e incluso deciden qu ordenadores tienen prioridad sobre otros. En funcin del negocio y de sus planes de conexin en red, podr elegir entre routers que incluyen diferentes capacidades. Pueden incluir funciones como: o Cortafuegos: Software especializado que examina los datos entrantes y protege la red de su negocio de posibles ataques. o Red privada virtual (VPN): Mtodo que permite a los empleados remotos acceder remotamente a su red de forma segura. o Red telefnica IP: Combina la red telefnica y la red de equipos de su compaa, utilizando la tecnologa de voz y conferencia, para simplificar y unificar las comunicaciones.

Estructuras de Control en C++ Las estructuras de control determinan la secuencia en la que se ejecutarn las instrucciones de un programa. Las estructuras de control se dividen en tres categoras en funcin del flujo de ejecucin: Estructura secuencial. Estructura alternativa o condicional. Estructura iterativa o repetitiva. 1. ESTRUCTURA SECUENCIAL La estructura secuencial est formada por una secuencia de instrucciones que se ejecutan en orden una a continuacin de la otra. Cada una de las instrucciones estn separadas por el carcter punto y coma (;). No obstante, en algunos casos nos interesar agrupar en un bloque una serie de instrucciones, como veremos al explicar las estructuras de seleccin y de iteracin. El bloque de sentencias se define por el carcter llave de apertura ({) para marcar el inicio del mismo, y el carcter llave de cierre (}) para marcar el final. Ejemplo: { instruccin 1; instruccin 2; instruccin 3; ..... instruccin N; } Sin embargo, en caso de que el bloque de sentencias este constituido por una nica sentencia no es obligatorio el uso de las llaves de apertura y cierre ({ }). 2. ESTRUCTURA CONDICIONAL, SELECTIVA O ALTERNATIVA. Las estructuras condicionales controlan si una sentencia o bloque de sentencias se ejecutan, en funcin del cumplimiento o no de una condicin o expresin lgica. C++ tiene dos estructuras de control para la seleccin, if y switch. 2. 1 Instruccin IF Esta instruccin hace que se ejecuten unas sentencias u otras dependiendo del valor que toma una condicin. La instruccin if puede ser simple o doble: Alternativa simple: if (condicion) instruccin1; if (condicion) { instruccin 1; instruccin 2; instruccin 3; }

Alternativa doble. if (condicion) instruccin1; else instruccin2; if (condicion) { Instruccin 1; instruccin 2; } else { instruccin 3; instruccin 4; } Ejemplo de estructura condicional en C++. Programa que lee un nmero entero por teclado y muestra si es par o impar. #include <iostream> using namespace std; int main(void) { int num; cout <<"Introduzca numero:"; cin >> num; if ((num%2)==0) cout << "PAR" << endl; else cout << "IMPAR" << endl; system("pause"); } Las instrucciones if-else se pueden anidar obtenindose una estructura condicional mltiple: if(condicion1) instruccin1; else if(condicion2) instruccin2; else if(condicion3) instruccin3; else if(condicion4) instruccion4; else instruccin5; instruccin 6; instruccin 7; ...... En este caso se evala la condicion1; si es cierta, se ejecuta la instruccin1 y se contina por lainstruccin 6 despus del bloque de if-else anidados. Si la condicin1 es falsa, se evala la condicion2, y as sucesivamente. En caso de no ser cierta ninguna de las condiciones, la sentencia que se ejecuta es la del ltimo else, es decir, la instruccin 5. Ejemplo de estructura condicional mltiple en C++. Programa que lee un nmero entero que corresponde a una hora y muestra un mensaje segn la hora que se haya ledo. #include <iostream> using namespace std; int main(void) { int hora; cout << "\nIntroduzca una hora (entre 0 y 24): "; cin >> hora; if ((hora >= 0) and (hora < 12)) cout << "\nBuenos dias\n"; else if ((hora >= 12) and (hora < 18))

cout << "\nBuenas tardes\n"; else if ((hora >= 18) and (hora < 24)) cout << "\nBuenas noches\n"; else cout << "\nHora no vlida\n"; system("pause"); } Otro ejemplo de estructura condicional mltiple en C++. Programa que lee la calificacin numrica obtenida por un alumno en un examen y muestra la nota equivalente en texto. #include <iostream> using namespace std; int main(void) { unsigned int nota; cout << "Introduzca una calificacion numerica entre 0 y 10:"; cin >> nota; cout << "La calificacion del alumno es" << endl; if (nota == 10) { cout << "Matricula de Honor" << endl; } else if (nota >= 9) { cout << "Sobresaliente" << endl; } else if (nota >= 7) { cout << "Notable" << endl; } else if (nota >= 5) { cout << "Aprobado" << endl; } else { cout << "Suspenso" << endl; } system("pause"); } 2.2 Instruccin switch La sentencia switch selecciona una de entre mltiples alternativas. La forma general de esta expresin es la siguiente: switch (expresin) { case constante1: instrucciones; break; case constante 2: instrucciones; break; default: instrucciones; } En una instruccin switch, expresin debe ser una expresin con un valor entero, y constante1, constante2, ..., deben ser constantes enteras, constantes de tipo carcter o una expresin constante de valor entero. Expresin tambin puede ser de tipo char, ya que los caracteres individuales tienen valores enteros Dentro de un case puede aparecer una sola instruccin o un bloque de instrucciones. La instruccin switch evala la expresin entre parntesis y compara su valor con las constantes de cada case. Se ejecutarn las instrucciones de aquel case cuya constante coincida con el valor de la expresin, y contina hasta el final del bloque o hasta una instruccin que transfiera el control

fuera del bloque del switch (una instruccin break, o return). Si no existe una constante igual al valor de la expresin, entonces se ejecutan las sentencias que estn a continuacin de default si existe (no es obligatorio que exista, y no tiene porqu ponerse siempre al final). Ejemplo de uso de la instruccin switch en C++. Programa que lee dos nmeros y una operacin y realiza la operacin entre esos nmeros. #include <iostream> using namespace std; int main(void) { int A,B, Resultado; char operador; cout << "Introduzca un numero:"; cin >> A; cout << "Introduzca otro numero:"; cin >> B; cout <<"Introduzca un operador (+,-,*,/):"; cin >> operador; Resultado = 0; switch (operador) { case '-' : Resultado = A - B; break; case '+' : Resultado = A + B; break; case '*' : Resultado = A * B; break; case '/' : Resultado = A / B; //suponemos B!=0 break; default : cout << "Operador no valido"<< endl; } cout << "El resultado es: "; cout << Resultado << endl; system("pause"); } Otro ejemplo de uso de switch en C++. Programa que determina si un carcter ledo es o no una vocal. En ese caso como la sentencia a ejecutar por todas las etiquetas case es la misma, esta sentencia se pone una nica vez al final: #include <iostream> using namespace std; int main(void) { char car; cout << "Introduzca un caracter: "; cin >> car; switch (car) { case 'a': case 'A': case 'e': case 'E': case 'i': case 'I': case 'o': case 'O': case 'u': case 'U': cout << car << " es una vocal" << endl; break; default : cout << car << " no es una vocal" << endl; } system("pause"); } 3. ESTRUCTURAS REPETITIVAS O ITERATIVAS. C++ dispone de tres estructuras repetitivas: while, do-while

for. 3.1 Instruccin while. while (condicion) { instruccin 1; .............. instruccin N; } Ejecuta una instruccin o un bloque de instrucciones cero o ms veces, dependiendo del valor de la condicin. Se evala la condicin, y si es cierta, se ejecuta la instruccin o bloque de instrucciones y se vuelve a evaluar la condicin; pero si la condicin es falsa, se pasa a ejecutar la siguiente instruccin despus del while. Ejemplo de instruccin while en C++. Programa que lee nmeros enteros hasta que se lee un nmero negativo. Se muestra la suma de todos los nmeros leidos excepto el nmero negativo. /*Programa que lee nmeros hasta que se lee un negativo y muestra la suma de los nmeros ledos */ #include <iostream> using namespace std; int main(void) { int suma, num; suma = 0; cout << "Introduzca un numero: "; cin >> num; while (num >= 0) { suma = suma + num; cout << "Introduzca un numero: "; cin >> num; } cout << endl << "La suma es: " << suma << endl; system("pause"); } 3. 2 Instruccin do .. while. do { instruccin 1; .............. instruccin N; } while (condicion); Ejecuta una instruccin o un bloque de instrucciones, una o ms veces, dependiendo del valor de la condicin. Se ejecuta la instruccin o bloque de instrucciones y a continuacin se evala la condicin. Si la condicin es cierta, se vuelve a ejecutar la instruccin o bloque de instrucciones, y si es falsa, pasa a ejecutarse la siguiente instruccin despus del do-while. Cuando se utiliza una instruccin do-while el bloque de instrucciones se ejecuta al menos una vez, ya que la condicin se evala al final. En cambio, con una instruccin while, puede suceder que el bloque de instrucciones no llegue a ejecutarse nunca si la condicin inicialmente es falsa. Ejemplo de instruccin do while en C++. Programa que lee un nmero entero. El nmero debe estar comprendido entre 1 y 100. /* lee un nmero entre 1 y 10 */ #include <iostream> using namespace std; int main(void) { int numero;

do { cout << "Introduzca un numero entre 1 y 100: "; cin >> numero; } while (numero < 1 || numero > 100); } 3.3 Instruccin for. Un bucle for hace que una instruccin o bloque de instrucciones se repitan un nmero determinado de veces mientras se cumpla la condicin. for(inicializacin; condicion; incremento/decremento) { instruccin 1; ........... instruccin N; } A continuacin de la palabra for y entre parntesis debe haber siempre tres zonas separadas por punto y coma: zona de inicializacin zona de condicin zona de incremento decremento. En alguna ocasin puede no ser necesario escribir alguna de ellas. En ese caso se pueden dejar en blanco, pero los punto y coma deben aparecer. El funcionamiento de un bucle for el siguiente: 1. Se inicializa la variable o variables de control. 2. Se evala la condicin. 3. Si la condicin es cierta se ejecutan las instrucciones. Si es falsa, finaliza la ejecucin del bucle y contina el programa en la siguiente instruccin despus del for 4. Se actualiza la variable o variables de control (incremento/decremento) 5. Se pasa al punto 2). Esta instruccin es especialmente indicada para bucles donde se conozca el nmero de repeticiones que se van a hacer. Como regla prctica podramos decir que las instrucciones while y do-while se utilizan generalmente cuando no se conoce a priori el nmero de pasadas, y la instruccin for se utiliza generalmente cuando s se conoce el nmero de pasadas. Ejemplo de instruccin for en C++. Programa que muestra los nmeros del 1 al 10. /* muestra los nmeros de 1 a 10 */ #include <iostream> using namespace std; int main(void) { int n; for (n = 1; n <= 10; n++) { cout << n << endl; } system("pause"); } Ejemplo de instruccin for en C++. Programa que muestra los nmeros del 10 al 1: /* muestra los nmeros de 10 a 1 */ #include <iostream> using namespace std; int main(void) { int n; for (n = 10; n >=1; n--) { cout << n << endl; }

system("pause"); } Se ha de tener cuidado y al escribir el punto y coma (;) despus del parntesis final del bucle for. Por ejemplo el bucle: #include <iostream> using namespace std; int main(void) { int i; for (i = 1; i <= 100; i++); { cout << "Hola" << endl; } system("pause"); } no muestra "Hola" 100 veces. En realidad se muestra una vez "Hola", ya que la sentencia for es una sentencia vaca al terminar con un punto y coma (;). La sentencia for en este caso hace que i empiece en 1 y acabe en 11 y tras esas iteraciones, se ejecuta la sentencia cout. BUCLES ANIDADOS. Hablamos de bucles anidados cuando se incluyen instrucciones for, while o do-while unas dentro de otras. Ejemplo de bucles anidados en C++. Programa que muestra el primer nmero perfecto mayor que 100.Un nmero es perfecto cuando la suma de sus divisores excepto l mismo es igual al propio nmero. Por ejemplo 6 es perfecto ya que sus divisores son 1, 2 ,3 y suman 6 #include <iostream> using namespace std; int main(void) { int numero, cont, suma; bool encontrado; encontrado = false; numero = 101; while (!encontrado) { suma = 1; for (cont = 2; cont < numero; cont++) { if (numero % cont == 0) { suma = suma + cont; } } if (suma == numero) { encontrado = true; } else { numero++; } } cout << "El primero numero perfecto mayor que 100 = " << numero << endl; system("pause"); }