domingo, 2 de junio de 2019

Ejercicios While

Programa que visualiza los numeros del 1 al 10, utilizando el bucle while ( mientras ) Ejercicio práctico de programación en C con solución comentada y resuelta. */ // Librerias a incluir #include <stdio.h> #include <stdlib.h> // Funcion principal int main() { // Crear variables auxiliares int contador=0; // Inicializar el contador contador=1; // repetir mientras que el contador tenga // un valor inferior a 10 while (contador<11) { // visualizar el valor de contador printf("\n%d",contador); // incrementar contador en una unidad contador=contador+1; }; return 0; } // Se ha de tener en cuenta que el no incrementar // el contador puede tener como consecuencia // la ejecución de un bucle infinito y por tanto // el bloqueo del programa.

Ciclo while

Los ciclos while son también una estructura cíclica, que nos permite ejecutar una o varias líneas de código de manera repetitiva sin necesidad de tener un valor inicial e incluso a veces sin siquiera conocer cuando se va a dar el valor final que esperamos, los ciclos while, no dependen directamente de valores numéricos, sino de valores booleanos, es decir su ejecución depende del valor de verdad de una condición dada, verdadera o falso, nada más. De este modo los ciclos while, son mucho más efectivos para condiciones indeterminadas, que no conocemos cuando se van a dar a diferencia de los ciclos for, con los cuales se debe tener claro un principio, un final y un tamaño de paso.
Para comprender mejor el funcionamiento del ciclo while, pongamos un buen ejemplo, imaginemos que por algún motivo, queremos pedirle a un usuario una serie de números cualquiera y que solo dejaremos de hacerlo cuando el usuario ingrese un número mayor a 100. Como vemos, aquí no podríamos utilizar un ciclo for, pues no tenemos ni idea de cuándo al usuario se le va a ocurrir ingresar un número mayor que 100, es algo indeterminado para nosotros, sin embargo el ciclo while nos permite ejecutar una acción de forma infinita hasta que se cumpla alguna condición especifica, en nuestro caso sería que el numero ingresado sea mayor a 100. De modo que si el usuario nos ingresa de manera sucesiva los siguientes numero 1,50,99, 49, 21, 30, 100 ..., nuestro programa no finalizara, pues ninguno de estos números es mayor que 100, sin embargo si nos ingresara el numero 300, el programa finalizaría inmediatamente.
Vamos a ver ahora como es la sintaxis de un ciclo while en C++
while(condición de finalización) //por ejemplo numero == 100 { .... .... Bloque de Instrucciones.... .... .... }


Ejercicio ciclo for

Utilizar un contador que empiece de 2 hasta menor a 100, con una condición establecer los pares  y sumar dichos números.


 Suma de números pares con for

Ciclos for

Los ciclos for son lo que se conoce como estructuras de control de flujo cíclicas o simplemente estructuras cíclicas, estos ciclos, como su nombre lo sugiere, nos permiten ejecutar una o varias líneas de código de forma iterativa, conociendo un valor especifico inicial y otro valor final, además nos permiten determinar el tamaño del paso entre cada "giro" o iteración del ciclo.
En resumen, un ciclo for es una estructura de control iterativa, que nos permite ejecutar de manera repetitiva un bloque de instrucciones, conociendo previamente un valor de inicio, un tamaño de paso y un valor final para el ciclo.
Para comprender mejor el funcionamiento del ciclo for, pongamos un ejemplo, supongamos que queremos mostrar los números pares entre el 50 y el 100, si imaginamos un poco como seria esto, podremos darnos cuenta que nuestro ciclo deberá mostrar una serie de números como la siguiente: 50 52 54 56 58 60 ... 96 98 100. Como podemos verificar, tenemos entonces los componentes necesarios para nuestro ciclo for, tenemos un valor inicial que sería el 50, tenemos también un valor final que sería el 100 y tenemos un tamaño de paso que es 2 (los números pares). Estamos ahora en capacidad de determinar los componentes esenciales para un ciclo for.
Vamos a ver ahora como es la sintaxis de un ciclo for en C++

for(int i = valor inicial; i <= valor final; i = i + paso) { .... .... Bloque de Instrucciones.... .... .... }

Programacion ciclos o bucles

Un bucle o ciclo, en programación, es una secuencia que ejecuta repetidas veces un trozo de código, hasta que la condición asignada a dicho bucle deja de cumplirse. Los tres bucles más utilizados en programación son el bucle while, el bucle for y el bucle do-while.
En muchas ocasiones a la hora de programar es necesario ejecutar repetidas veces un conjunto de instrucciones; duplicar código parece una solución lógica cuando se está aprendiendo a programar, pero en realidad no es la más conveniente. Duplicar código puede acarrear varios problemas: lo primero es que se harán innecesariamente más extensos los archivos, en el caso de requerirse mantenimiento o actualización del código, será muy engorroso realizar este trabajo, además si el número de repeticiones es elevado haría prácticamente imposible cumplir con el cometido.
Los ciclos o bucles permiten eje.cutar repetidas veces una instrucción o un bloque de ellas; deben estar construidos de manera tal que se pueda tener control de la cantidad de repeticiones a realizar, de lo contrario se generaría un ciclo de ejecución infinita que podría desencadenar un desborde de memoria y en consecuencia un fallo de la aplicación, o un bloqueo de la misma porque el flujo de ejecución quedaría estancado en el ciclo, sobrecargando de tareas al procesador de la máquina que ejecuta el programa

Instruccion switch

Una instrucción switch (alternativa múltiple) permite seleccionar, por medio de una expresión, el siguiente bloque de instrucciones a ejecutar de entre varios posibles. En lenguaje C, para escribir una instrucción alternativa múltiple (switch) se utiliza la sintaxis:
switch ( <expresión> )
{
   case <expresión_1> : [ <bloque_de_instrucciones_1> ]
                        [ break; ]
   case <expresión_2> : [ <bloque_de_instrucciones_2> ]
                        [ break; ]
   ...
   case <expresión_n> : [ <bloque_de_instrucciones_n> ]
                        [ break; ]
            [ default : <bloque_de_instrucciones_n+1> ]
}
El resultado de evaluar la <expresión> debe ser un valor perteneciente a un tipo de dato finito y ordenado, es decir, entero, lógico, carácter, enumerado o subrango.

Dependiendo del valor obtenido al evaluar la <expresión>, se ejecutará un bloque de instrucciones u otro.

Opcionalmente, se puede escribir un <bloque_de_instrucciones_n+1> después de 
default :. Este bloque de instrucciones se ejecutará en el caso de que el valor obtenido al evaluar la <expresión>, no se encuentre en ninguna de las expresiones después de cada case.

Instruccion case

Permite obtener condicionalmente valores específicos de varias comparaciones. Hay dos tipos de instrucciones CASE:
  • Una instrucción CASE simple que compara una expresión con un conjunto de expresiones simples para devolver valores específicos.
  • Una instrucción CASE buscada que evalúa un conjunto de expresiones booleanas para devolver valores específicos.

Sintaxis

  
Simple Case Statement  
CASE [input_expression]  
WHEN when_expression THEN when_true_result_expression  
[...n]  
[ELSE else_result_expression]  
END  
  
Search Case Statement  
CASE   
WHEN Boolean_expression THEN when_true_result_expression  
[...n]  
[ELSE else_result_expression]  
END  Veamos con un ejemplo esta sentencia muy sencillito. Lo primero que hace es solicitar un número y luego informa del día de la semana con el que corresponde. Si el número no es del uno al siete informa de ello también.
dim dia dia = inputbox ("dime un dia de la semana") SELECT CASE dia CASE 1:    msgbox("El dia es LUNES") CASE 2:    msgbox("El dia es MARTES") CASE 3:    msgbox("El dia es MIERCOLES") CASE 4:    msgbox("El dia es JUEVES") CASE 5:    msgbox("El dia es VIERNES") CASE 6:    msgbox("El dia es SABADO") CASE 7:    msgbox("El dia es DOMINGO") CASE ELSE:    msgbox("Tiene que ser un dia de la semana en número, del 1 al 7") END SELECT

Programacion modular

La programación modular es un paradigma de programación que consiste en dividir un programa en módulos o subprogramas con el fin de hacerlo más legible y manejable. 

Programación modular. El método más conocidos para resolver un problema es dividirlo en problemas más pequeños, llamados subproblemas. Esta técnica se usa mucho en programación ya que programar no es más que resolver problemas, y se le suele llamar diseño descendente, metodología del divide y vencerás o programación top-down.

Tipos

Los parámetros por valor
Los parámetros por valor tiene dicho nombre porque lo que recibe el subprograma no son más que copias de los valores de los datos que el programa invocador le pasa. Por tanto si en el procedimiento modificamos alguno de estos valores, los datos originales permanecerán inalterados
Los parámetros por referencia
En cambio, en los parámetros por referencia lo que se pasa al procedimiento son los datos en sí. Y si éste los modifica, los cambios permanecerán una vez que la ejecución vuelva al módulo que invocó al procedimiento. Se utilizan para obtener valores de los cálculos que haga un subprograma.

miércoles, 29 de mayo de 2019

Seguridad de informacion

La seguridad de la información es el conjunto de medidas preventivas y reactivas de​ las organizaciones y sistemas tecnológicos que permiten resguardar y proteger la información buscando mantener la confidencialidad, la disponibilidad e integridad de datos.
La seguridad de la información comprende diversos aspectos entre ellos la disponibilidad, comunicación, identificación de problemas, análisis de riesgos, la integridad, confidencialidad, recuperación de los riesgos.
Precisamente la reducción o eliminación de riesgos asociado a una cierta información es el objeto de la seguridad de la información y la seguridad informática. Más concretamente, la seguridad de la información tiene como objeto los sistemas el acceso, uso, divulgación, interrupción o destrucción no autorizada de información.2​ Los términos seguridad de la información, seguridad informática y garantía de la información son usados frecuentemente como sinónimos porque todos ellos persiguen una misma finalidad al proteger la confidencialidadintegridad y disponibilidad de la información. Sin embargo, no son exactamente lo mismo existiendo algunas diferencias sutiles. Estas diferencias radican principalmente en el enfoque, las metodologías utilizadas, y las zonas de concentración. Además, la seguridad de la información involucra la implementación de estrategias que cubran los procesos en donde la información es el activo primordial. Estas estrategias deben tener como punto primordial el establecimiento de políticas, controles de seguridad, tecnologías y procedimientos para detectar amenazas que puedan explotar vulnerabilidades y que pongan en riesgo dicho activo, es decir, que ayuden a proteger y salvaguardar tanto información como los sistemas que la almacenan y administran. La seguridad de la información incumbe a gobiernos, entidades militares, instituciones financieras, los hospitales y las empresas privadas con información confidencial sobre sus empleados, clientes, productos, investigación y su situación financiera.
Resultado de imagen para seguridad de informacion

Compilacion

Qué es Compilación?

En Informática, como compilación se denomina la fase de codificación en que un programa es traducido del código fuente al código máquina para que pueda ejecutarse. Como tal, la realiza un compilador virtual, cuya tarea consiste en llevar un programa fuente a programa objeto.
Resultado de imagen para compilacion

CÓDIGO FUENTE, CÓDIGO OBJETO

  • Código fuente: Conjunto de sentencias entendibles por el programador que componen el programa o una parte de ello. Suele estar almacenado en un fichero del tipo texto como los que se pueden abrir por ejemplo, con el bloc de notas o Wordpad en los entornos Windows. El código fuente estará escrito en un lenguaje de programación determinado, elegido por el programador, como pueden ser: Basic, C, C++, C#, Java, Perl, Python, PHP.
  • Código objeto: Conjunto de instrucciones y datos escritos en un lenguaje que entiende el ordenador directamente: binario o código máquina. Provienen de la traducción de cierto código fuente, es un fragmento del programa final y es específico de la plataforma de ejecución.

Imagen relacionada

Reglas para escribir un programa

Un programa excelente debe ser:
  • Ser fácilmente entendible
  • Ser extensible y reusable
  • Estar bien estructurado y testado
  • Facilitar el compartir conocimiento
  • Estar bien preparado para cambios futuros que no podemos prever.
  • Imagen relacionada

Funciones de biblioteca en c++

¿Qué son exactamente las librerías?

En C++, se conoce como librerías (o bibliotecas) a cierto tipo de archivos que podemos importar o incluir en nuestro programa. Estos archivos contienen las especificaciones de diferentes funcionalidades ya construidas y utilizables que podremos agregar a nuestro programa, como por ejemplo leer del teclado o mostrar algo por pantalla entre muchas otras más.
Al poder incluir estas librerías con definiciones de diferentes funcionalidades podremos ahorrarnos gran cantidad de cosas, imaginemos por ejemplo que cada vez que necesitemos leer por teclado, debamos entonces crear una función que lo haga (algo realmente complejo), al poder contar con las librerías en C++, podremos hacer uso de una gran variedad de funciones que nos facilitaran la vida y aumentarán la modularidad de nuestros códigos.
Resultado de imagen para funciones de biblioteca c++
En conclusión: Las librearías son archivos (no siempre externos) que nos permiten llevar a cabo diferentes tareas sin necesidad de preocuparnos por cómo se hacen sino simplemente entender cómo usarlas. Las librearías en C++ permiten hacer nuestros programas más modulares y reutilizables, facilitando además crear programas con funcionalidades bastante complejas en unas pocas líneas de código.

Requisitos para c++

Necesitamos como mínimo tener instalado Windows 7 y tendremos problemas con otros sistemas operativos.

Ya no podremos conseguirlo de manera independiente sino que debemos bajar la suite completa que viene con C#, Visual Basic y varias cosas más.

Los requisitos son, desde mi punto de vista, muy elevados, pues necesitamos al menos 1GB de RAM, 5GB de espacio libre en disco (demasiado) y un procesador que vaya a unos 1.6 GHZ por lo menos.

Adicional a esto, ya se vienen pasos adicionales, pues debemos crearnos una cuenta para poder usarlo y demás, así que en última opté por cambiar la recomendación y pasarme a un entorno mejor, sencillo y muy popular también.
  • Resultado de imagen para requisitos

Entorno de desarrollo de c++

Primero que todo, como aclaración, es bueno decir que existen una enorme cantidad de entornos de desarrollo para C y C++ conocidos también como IDE. Aquí solo mencionaré algunos de los quizá más conocidos entornos de desarrollo y les diré cuál es el mejor IDE, claro, desde mi punto de vista, pues habrá quienes prefieran otro, eso quedará al gusto de cada uno.




Imagen relacionada