miércoles, 1 de junio de 2016

Normas de seguridad (Manipulación adecuada de equipos de hardware)


Las recomendaciones a tener en cuenta al momento de manipular componentes o equipos de hardware son las siguientes:


1- Eliminar la electricidad estática presente en nuestras mano, usando una pulsera anti-estática o al menos tocar una pieza de metal.



2- Mantener nuestras manos limpias y secas durante la manipulación o usar guantes (también es recomendable el uso de alcohol).



3- Realizar el trabajo en un area limpia, iluminada y sin la presencia cercana de bebidas y comida.
















4- Desconectar el equipo de la toma de electricidad.




5- Mantener orden con las distintas piezas y componentes del equipo así como tratarlas con cuidado.


5- - Usar las herramientas adecuadas para cada tipo de componentes.



Es de gran importancia cumplir con todas estas normas y recomendaciones al momento de manipular componentes y equipos de hardware, para así evitar provocar daños y el mal funcionamiento de los mismos.

domingo, 29 de mayo de 2016

Ejercicio de Factorial

El algoritmo o programa para calcular el factorial de un número es uno de los ejercicios mas básicos que se utilizan para entender el uso y funcionamiento de las estructuras de repetición.

El factorial consiste en la multiplicación de todos los números comprendidos entre un numero en especifico hasta 1 o viceversa, por ejemplo:

El factorial del número 5 seria igual a 5*4*3*2*1 cuyo resultado es 120, y que es lo mismo que decir 1*2*3*4*5 el cual es una forma mas fácil de verlo.

Ahora bien para llevar ésta operación matemática a un algoritmo o programa, lo primero que observamos es qué la operación en sí consta de una secuencia por lo cual las estructuras de repetición o bucles serían de gran ayuda y las más ideales.

Primero vamos a definir cuantas variables vamos a usar:
  • "n" para guardar el número que introduzca el usuario.
  • "i" como variable de control o recorrido, ya que sabemos que usaremos un bucle.
  • "f" para guardar el resultado del factorial.
 Así que el algoritmo va así.


0- Inicio
1- Declarar n,i,f=1;

A la variable "f" se le asigna el valor 1, ya que mas adelante ésta se multiplicará y se necesita que tenga un valor predefinido y ademas el 1 no afectará la multiplicación, al contrario si se usará el cero esté si la afectaría.

Ahora sencillamente pedimos al usuario que introduzca un número y lo guardamos.


0- Inicio
1- Declarar n,i,f=1;
2- Escribir "Introduzca un número: ";
3- Leer n;

Luego viene el bucle, recordemos que existen 3 tipos de estructuras, y queda a nuestro criterio como programadores cuál vamos a usar, en éste caso podemos ver que en el programa solo vamos a pedir le al usuario que introduzca el número una sola vez de manera que no vamos a necesitar un bucle para ésa parte, pero sí para llevar a cabo la operación.

Recordemos que hay dos formas de ver éste ejercicio:

1- La multiplicación se realiza desde el número introducido y todos sus inferiores hasta llegar a 1.

Aquí sabemos que sea cual sea el número que introduzca el usuario, la multiplicación se va a realizar hasta llegar a 1 entonces el bucle "repita Para" (for) es la mejor opción a usar, porque conocemos el limite.

Y el algoritmo quedaría así:


0- Inicio
1- Declarar n,i,f=1;
2- Escribir "Introduzca un número: ";
3- Leer n;
4- Repita Para (i=n;i>=1;i--)

Primero se le asigna a "i" el valor de "n" es decir el número que introdujo el usuario, luego se establece qué el bucle se repetirá mientras que "i" sea mayor o igual a 1, y finalmente "i" decrementará una unidad en cada repetición.

2- La multiplicación se realiza desde 1 hasta llegar al número introducido.

Aquí como no sabemos que número introducirá el usuario por consiguiente no sabemos el limite del bucle, por lo tanto pensaríamos en un bucle Mientras o Hasta, pero aún así usaremos un bucle Para ya que al analizar con más detenimiento, el bucle Mientras o Hasta no ofrecen una mayor ventaja o utilidad en este caso en especial.

Y el algoritmo quedaría así:


0- Inicio
1- Declarar n,i,f=1;
2- Escribir "Introduzca un número: ";
3- Leer n;
4- Repita Para (i=1;i<=n;i++)

Primero se le asigna a "i" el valor 1, luego se establece qué el bucle se repetirá mientras que "i" sea menor o igual al número que introdujo el usuario, y finalmente "i" incrementará una unidad en cada repetición.

Ya queda de nuestra parte elegir la forma que mejor entendamos y sea mas fácil para nosotros.

Ahora falta escribir la instrucción que se ejecutará en cada repetición. Ésta es la parte mas crucial de todo el programa junto con la elección del bucle ya que debemos usar nuestra lógica para poder hacer que funcione. Generalmente las soluciones suelen ser muy sencillas pero llegar a ellas puede ser un poco complicado.

En este caso el algoritmo quedaría así:

0- Inicio
1- Declarar n,i,f=1;
2- Escribir "Introduzca un número: ";
3- Leer n;
4- Repita Para (i=1;i<=n;i++)
    4.1- f=f*i;
5- Fin Repita Para;

Como podemos observar la instrucción es muy sencilla, en donde se multiplica el valor que posee almacenado "f" por el valor de "i" y se guarda seguidamente en "f". Aquí también se puede apreciar como a la variable de control "i" se le puede dar otro uso, y que en ejercicios mas complejos puede ser de gran ayuda.

Finalmente mostraremos un mensaje al usuario con el resultado de la operación.

0- Inicio
1- Declarar n,i,f=1;
2- Escribir "Introduzca un número: ";
3- Leer n;
4- Repita Para (i=1;i<=n;i++)
    4.1- f=f*i;
5- Fin Repita Para;
6- Escribir "El factorial del número ",n," es:",f;
7- Fin.

miércoles, 11 de mayo de 2016

Iteraciones (Estructuras de Repetición)

Las iteraciones, mejor conocidas como bucles son un tipo de estructura muy útiles en programación, consisten en hacer que una instrucción o bloque de instrucciones se repita constantemente, hasta llegar a un fin que hayamos definido, ésta ultima parte es muy importante ya que sí, no establecemos bien la condición para qué en un determinado momento el bucle se detenga, obtendremos lo que se conoce como un "bucle infinito" y nuestro programa no funcionará de forma correcta.

Por ejemplo, si queremos que nuestro programa muestre el mensaje "Hola, buenos días" 10 veces, lo que haríamos en nuestro algoritmo seria algo así:

0- Inicio
1- Escribir "Hola, buenos días";
2- Escribir "Hola, buenos días";
3- Escribir "Hola, buenos días";
4- Escribir "Hola, buenos días";
5- Escribir "Hola, buenos días";
6- Escribir "Hola, buenos días";
7- Escribir "Hola, buenos días";
8- Escribir "Hola, buenos días";
9- Escribir "Hola, buenos días";
10- Escribir "Hola, buenos días";
11- Fin

Sencillamente copiamos y pegamos lo mismo varias veces, pero a nivel de código y programación en general, esto es muy poco eficiente, imagínate si necesitamos que el mensaje se muestre mil veces o más. Para eso sirven las estructuras de repetición y en este caso se utilizan así:

0- Inicio
1- Declarar i;
2-Repita para (i=1; i<=10; i++)
   2.1 Escribir "Hola, buenos días";
3- Fin del Repita
4-Fin

Mucho más corto y sencillo, incluso si necesitamos que se repita mil veces tan solo bastaría con cambiar el 10 por 1000.

También podemos apreciar un principio de la programación y es el automatizar los procesos de manera que la computadora haga el mayor trabajo por nosotros.

Existen 3 tipos de estructuras de repetición:

Las estructuras serán escritas en código javascript (un lenguaje de programación derivado de C y C++ utilizado en la mayoría de paginas web) 

  • Repita Para (for): Fue la estructura utilizada en el ejemplo anterior.
var i;
for (i=1;i<=10;i++)
{
   //Bloque de instrucciones
}
Primero se declara una variable de control que usualmente se le llama "i", luego dentro de los parámetros del bucle se le asigna un número, se establece la condición y se incrementa o decrementa la variable en tantas unidades como sea necesario, después dentro de los corchetes escribimos las instrucciones.
En el ejemplo se le asigna el número 1 a la variable "i", la condición establece que el bloque de instrucciones de repetirá cuando el valor de "i" sea menor o igual a 10 e "i" irá incrementando una unidad en cada repetición, de manera que cuando la variable "i" valga 11 ya no se ejecutará y nuestro programa finalizará.
Código para demostración: 
var i;
for (i=1;i<=10;i++)
{
   alert("Hola, buenos días\nLa variable i vale "+i)
}
La estructura Repita para, es las más utilizada para realizar bucles cuya cantidad de repeticiones conocemos de antemano como programadores, a diferencia de las estructuras Repita Mientras y Repita Hasta, que son de gran ayuda para cuando no sabemos cuantas repeticiones hará el bucle.  

  • Repita Mientras (while): Esta estructura tan solo tiene un parámetro, la "condición" que se evalúa al inicio de cada repetición al igual que el Repita para.
while (condición)
{
   //Bloque de instrucciones
} 
Por ejemplo un programa que pida un número repetidas veces y tan solo sí ese número es 0 el bucle finaliza, luciría entonces así:

var n;
n = prompt("Introduzca un número:","");
while (n!=0)
{
  n = prompt("Introduzca un número:","");
}

Primero se declara la variable que guardará el número por ejemplo "n" y luego se pide que se introduzca dicho número , la condición establece qué el bucle se ejecutará mientras que el valor de "n" sea distinto de 0, la instrucción adentro pide un número y este se guardará en "n" entonces la condición vuelve a ser evaluada y así seguirá hasta que se introduzca 0.  

  • Repita Hasta (do... while): Esta estructura es muy parecida a la anterior, ya que solo tiene un parámetro (la condición), la diferencia está en que dicha condición se evalúa al final del bucle, lo cual permite que aunque la condición no se cumpla, el bloque de instrucciones se ejecutará al menos una vez.  
do
{
   //Bloque de instrucciones
}
while (condición)

Esta estructura es útil en ciertos casos para no tener que repetir lineas de código, comparemos éste ejemplo con el anterior:
var n;
do
{
  n = prompt("Introduzca un número:","");
}
while (n!=0)
Como podemos apreciar en el ejemplo anterior (Repita Mientras), primero se pide un número para poder evaluar la condición y así entrar o no en el bucle y luego se volvía a pedir el número dentro del bucle, pero con la estructura (Repita Hasta) no es necesario ya que entramos directamente al bucle sin importar el valor de "n", se pide el número y al final se evalúa la condición.
En resumen podemos afirmar que la estructura Repita Para (for) es la mejor en la mayoría de casos para cuando conocemos cuantas veces se debe repetir el bucle, y las estructuras Repita Mientras (while) y Repita Hasta (do... while) para cuando lo desconocemos como programadores, aún así podemos lograr que éstas dos ultimas estructuras se comporten como la Primera, de la siguiente forma, por ejemplo:

Repita Para (for):
var i; //Declaración
for (i=1;i<=10;i++) //Asignación, Condición, Incremento
{
   //Bloque de instrucciones
}
Repita Mientras (while):
var i=1; //Declaración y Asignación

while (i<=10) //Condición
{
   //Bloque de instrucciones
   i++; //Incremento
}
Repita Hasta (do... while)
var i=0; //Declaración y Asignación
do
{
   i++; //Incremento
   //Bloque de instrucciones
}
while(i<=10) //Condición
Eso es todo por éste tema en general, cualquier duda o pregunta pueden dejarla en los comentarios, recuerden apoyar la continuación de este blog haciendo clic en los banners de publicidad, Saludos!

Autor: Cristian Rivas.
Derechos Reservados.

martes, 3 de mayo de 2016

Este es mi primer entrada del blog, aqui publicare temas relacionados a los primeros pasos en el mundo de la programación.

Saludos!