jueves, 31 de agosto de 2017

Pasos para solucionar un problema

Ejemplos de tres lenguajes de programación.

  1. Java.
  2. C++
  3. C#
Palabras reservadas:
  • Java:
Abstract: Declara clases o métodos abstractos.
Double: Tipo de Dato primitivo de punto flotante por defecto (32 bits).
Int: Tipo de Dato primitivo entero por defecto (32 bits).
Strictfp: Especifica bajo que standard se calcularán las operaciones con datos de punto flotante, para determinar el grado de precisión de los resultados.
Boolean: Tipo de Dato primitivo booleano (true o false).

  • C++:


If: Instrucción condicional, véase El enunciado if.

Else: Se utiliza conjuntamente con la instrucción if, véase El enunciado if.
Switch: Estructura condicional, véase La instrucción switch.
Case: Define los elementos de una estructura condicional switch, véase La instrucción switch.
Default: Define las acciones a ejecutar no especificadas por una instrucción case dentro de una estructura condicional switch, véase La instrucción switch.
Break: Obliga a salir de una estructura condicional switch, véase La instrucción switch.
For: Bucle que se ejecuta tantas veces como se cumplan las condiciones especificadas dentro del paréntesis de la instrucción, véase El bucle for.

  • C#:
Abstract: El modificador abstract indica que lo que se modifica carece de implementación o tiene una implementación incompleta. El modificador abstract puede usarse con clases, métodos, propiedades, indexadores y eventos.
Char: La palabra clave char se usa para declarar una instancia de la estructura System.Char que .NET Framework usa para representar un carácter Unicode. El valor de un objeto Char es un valor numérico de 16 bits (ordinal).
Operator: La palabra clave operator para sobrecargar un operador integrado o proporcionar una conversión definida por el usuario en una declaración de clase o estructura.



Diferencias y similitudes entre las fases o pasos lógicos explicados en el Libro Interactivo de Aprendizaje y las explicadas en el libro Fundamentos de Programación:
Lo que cambia en estos lenguajes de programación es la estructura al desarrollar un programa, aunque en los tres lenguajes se manejan muchas palabras reservadas que son iguales.

¿Por qué es importante conocer las palabras reservadas de un lenguaje de programación?
Porque el lenguaje ya tiene significada de esa palabra, la cual no nos la va a leer como una variable.

¿Qué beneficios existen en realizar el análisis, diseño y prueba de un algoritmo antes de realizar la codificación del algoritmo en algún lenguaje de programación? ¿Sería más fácil evitar tanto preámbulo para solucionar un problema y simplemente realizar directamente la codificación de la solución? ¿Por qué?

Los beneficios son de mejor análisis y encontrar rápidamente una solución al problema, con el análisis se puede estructurar mas fácil el algoritmo.
Al no realizar el análisis, a la hora de codificar el problema, encontrará varios errores de estructura.


Expresiones Lógicas


Ejemplos.
Supongamos que K=20, L=10 y F=5 Entonces..

  • K=(L+F)
No porque K=20 y la suma de (L+F=15) Entonces 20=15 seria FALSO.

  • L<(K-F)
Si, porque L=10 y la resta de (K-F=15) Entonces 10<15 seria Verdadero.



Expresiones Algebraicas y Algorítmicas


No se me presento ningún problema al realizar este emparejamiento.

Respuestas Vídeo Interactivo PSeInt

Algoritmo_del_triangulo
Real: base,altura,area

Inicio
          Muestre"Ingrese la base del triangulo"
          Lea base
         Muestre "Ingrese la altura del triangulo"
         Lea altura
         Area=(base*altura)/2
         Muestre "La base del triangulo es", base
        Muestre "La altura del triangulo es", altura
        Muestre "El area del triangulo es", Area
Fin

No veo ninguna diferencia, ya que la estructura del Pseudocódigo es muy similar a la del programa.




Mi primer algoritmo en PSeInt

¿Que dificultades tuve?
Al realizar este programa no tuve ninguna dificultad, pero al transcurrir el tiempo creo que me veré afectado ya que esto es un nuevo programa para mi, ya que yo estoy acostumbrado a trabajar con la Plataforma de Netbeans y con el Lenguaje de programación en Java... 

¿qué beneficios observa en el uso de este programa?

Ya que en la parte derecha del programa tiene algunos comandos que al darle clic en ellos, en la parte inferior explica para que sirve, Sin embargo me gustaría que empezáramos a trabajar el lenguaje de programación en Java y en la plataforma de Netbeans, ya que es mas completa que esta. 


Entrada y Salida de Datos

Resultado de imagen para registro de datos de facebook

¿De qué forma el creador del formulario realiza la lectura de datos del usuario que se registra?
Los guarda en una variable la cual el usuario tendrá que cumplir con los requisitos al crear una cuenta en Facebook.

¿Qué información en el formulario se originó como resultado de comandos de salida?
Da como resultado el comando de salida, la cuenta que el usuario dígito para poder ingresar a ella.

Big Data




  • Ventajas del big data:
  • El análisis de los datos puede mejorar sustancialmente la toma de decisiones dentro de una compañía reduciendo al mínimo los riegos. Así, algunas organizaciones ya están optimizando sus decisiones mediante el análisis de datos de clientes, empleados, o incluso sensores incorporados en los productos.
  • Big Data facilita que las compañías evalúen sus productos. Mediante el análisis de datos, obtienen información muy valiosa que les permite crear nuevos productos o rediseñar los ya existentes.
  • Desventajas del big data:
  • Las Desventajas de Big Data. En el mundo de los negocios solemos mostrarnos indecisos cuando se habla de algo relativo a “big” (grande). Una gran idea en negocios puede generar un éxito relevante, pero también un fracaso significativo, lo que podría atentar contra la salud de la compañía en varios sentidos.

  • Implicaciones para la vida actual y futura de los seres humanos: posibles escenarios.

No hace mucho se conoció que las grandes compañías de tecnología como Google, Facebook, Twitter, Microsoft y Apple; pasaban de forma sistemática la información privada de sus usuarios a la Agencia de Seguridad Nacional de los Estados Unidos. Esto generó un gran rechazo a nivel internacional pues lo hacían sin el consentimiento de las personas y a manera de espionaje. Algo que atenta claramente contra las libertades individuales y que también se presta para realizar competencia desleal y poner en grave riesgo la seguridad de otros países.

Adicionalmente, WikiLeaks acaba de revelar que la Agencia Central de Inteligencia (CIA por sus siglas en inglés) en conjunto con las agencias británicas GCHQ y Mi5; realizan un espionaje masivo y sistemático en todos los países del mundo utilizando exploits, virus, troyanos y programas maliciosos. Según Julian Assange, la CIA utiliza para sus propósitos artefactos marca Apple, Samsung, HTC y Sony. También distintos sistemas informáticos para automóviles y sistemas operativos como iOS, Android, Windows, Linux, MacOS X y Solaris.




Emparejamiento Variables y tipos de datos


Cuestionario Variables y Constantes


Escenas interactivas Tipos de Datos













Emparejamiento de conceptos


martes, 29 de agosto de 2017

Conversiones

Conversión decimal a binario

El sistema de números decimales (en base de diez) tiene diez valores posibles (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) por cada valor posicional. En contraste, el sistema de números binarios (en base de dos) tiene dos valores posibles representados por 0 o 1 por cada valor posicional.[1] Ya que el sistema binario es el lenguaje interno de las computadoras, los programadores deben saber cómo convertir de número decimal a binario. Continúa leyendo para aprender a dominar la conversión de números decimales a binarios.

División por dos utilizando el residuo:


Imagen titulada Convert_from_Decimal_to_Binary_Step_1


1) Escribe el problema: Para este ejemplo, vamos a convertir el número decimal 15610 a número binario. Escribe el número decimal como el dividendo al interior de un signo de división "largo". Escribe la base del sistema al que quieres convertir (en nuestro caso, "2" para número binario) como el divisor por fuera del signo de división.


  • Este método es mucho más fácil de comprender si se visualiza en papel, y también es mucho más fácil de realizar para los principiantes, ya que lo único que hay que hacer es una división por dos.
  • Para evitar la confusión antes y después de la conversión, escribe el número del sistema base con el que vas a trabajar como un subíndice por cada número. En este caso, el número decimal tendrá un subíndice de 10 y el equivalente binario tendrá un subíndice de 2.



Imagen titulada Convert_from_Decimal_to_Binary_Step_2


2) Haz la división: Escribe la respuesta (cociente) debajo del signo de división, y escribe el residuo (0 o 1) a la derecha del dividendo.[2]



  • Ya que estamos dividendo por 2, cuando el dividendo sea un número par, el residuo será 0, y cuando el dividendo sea un número impar el residuo binario será 1.



Imagen titulada Convert_from_Decimal_to_Binary_Step_3



3) Continúa dividiendo hasta que el resultado sea 0. Continúa hacia abajo de la hoja, dividiendo cada nuevo cociente por dos y escribiendo el residuo a la derecha de cada dividendo. Detente cuando el cociente sea 0.

Imagen titulada Convert_from_Decimal_to_Binary_Step_4


4) Escribe el número binario que obtuviste. Empezando desde el último residuo, lee la secuencia de residuos hacia arriba hasta llegar al primero. En nuestro ejemplo, deberías tener 10011100. Ese es el equivalente binario del número decimal 156. O, escrito con los subíndices de las bases: 15610 = 100111002.

  • Este método puede modificarse para convertir de número decimal a número en cualquier tipo de base. El divisor es 2 porque queríamos convertir a sistema de base 2 (binario). Si quieres trabajar con un sistema de base diferente, reemplaza el 2 en el método anterior con el número del sistema base al que quieres convertir. Por ejemplo, si deseas convertir a sistema en base 9, reemplaza el 2 por el 9. El resultado final estará expresado en la base que desees.
Resta y potencias descendentes de dos:

Imagen titulada Convert from Decimal to Binary Step 5


Haz una tabla. Escribe las potencias de dos en un "tabla en base de 2" de derecha a izquierda. Empieza con 20, asignándole un valor de "1". Aumenta el exponente en uno por cada potencia. Continúa con la tabla hasta que alcances el número más cercano al número decimal que deseas convertir. Para este ejemplo, vamos a convertir el número decimal 15610 a número binario.

Imagen titulada Convert from Decimal to Binary Step 6



Busca la mayor potencia de 2. Escoge el mayor número que quepa en el número que vas a convertir. 128 es la mayor potencia de dos que cabe en 156, así que escribe un 1 debajo de la casilla de 156 de tu tabla. Luego, resta 128 de tu número inicial. Ahora tienes 28.

Imagen titulada Convert from Decimal to Binary Step 7


Muévete a la potencia más cercana de dos. Utilizando el nuevo número (28), muévete a lo largo de la tabla marcando cuántas veces cabe cada potencia de dos en tu dividendo. 64 no cabe en 28, así que escribe un 0 debajo de la casilla de 64. Continúa hasta que llegues a un número que sí quepa en 28.


Imagen titulada Convert from Decimal to Binary Step 8



Resta cada número sucesivo que quepa en el dividendo, y marcarlo con un 1. 16 cabe en 28, así que escribe 1 debajo de la casilla de 16 y réstalo de 28. Ahora tienes 12. 8 cabe en 12, así que escribe 1 debajo de la casilla del 8 y réstalo de 12. Ahora tienes 4.

Imagen titulada Convert from Decimal to Binary Step 9



Continúa hasta que llegues al final de la tabla. Recuerda marcar con un 1 cada número que quepa en el dividendo que obtienes, y marca con un 0 aquellos números que no cumplan con esta condición.

Imagen titulada Convert from Decimal to Binary Step 10


Escribe la respuesta binaria. El número en binario es la fila que se forma con las casillas de 1 y 0 debajo de las potencias de dos. Deberías tener como resultado 10011100. Ese es el equivalente binario del número decimal 156. O, escritos con los subíndices base: 15610 = 100111002.

  • La repetición de este método te ayudará a memorizar las potencias de dos, lo cual te permitirá saltar el primer paso.


Cómo convertir decimales a Octales.

El octal es un sistema numérico de base 8 que utiliza solo los dígitos del 0 al 7. Su principal ventaja es la facilidad de conversión a binario (base 2), debido a que cada dígito en octal puede escribirse como un único número binario de tres dígitos.[1] Convertir decimales a Octales es algo más difícil, pero no necesitas saber mucha matemática más allá de cómo resolver una división larga. Comienza con el método de la división, que consiste en encontrar cada dígito dividiendo por potencias de 8. El método restante es más fácil y usa una matemática similar, aunque puede ser más difícil comprender cómo funciona.

Convierte usando la división.

Imagen titulada Convert from Decimal to Octal Step 1



Utiliza este método para aprender los conceptos. Uno de los dos métodos de esta página, este mismo, es más fácil de comprender. Si ya te sientes seguro trabajando con diferentes sistemas numéricos prueba con el método restante que es más rápido (el que está más abajo).

Imagen titulada Convert from Decimal to Octal Step 2


Anota el número decimal. Como ejemplo, se convertirá el número decimal 98 a octal.

Imagen titulada Convert from Decimal to Octal Step 3

Haz una lista de las potencias de 8. Recuerda que el "decimal" es un sistema de base 10 porque cada dígito representa una potencia de 10. Los tres primeros dígitos se conocen como los lugares de las unidades (1), las decenas (10) y las centenas (100), pero también podríamos escribirlos como los lugares de 101, 102 y 103. El "octal", o sistema numérico de base 8, utiliza potencias de 8 en lugar de potencias de 10. Escribe algunas de estas potencias de 8 en una línea horizontal, desde el más grande al más pequeño. Ten en cuenta que todos estos números están escritos en base decimal (base 10):

  • 82  81  80
  • Reescríbelos como simples números:
  • 64  8  1

  • No necesitas ninguna potencia de 8 mayor que el número original (en este caso, 98). Como 83 = 512, y 512 es mayor que 98, puedes dejarlo fuera de la tabla



Imagen titulada Convert from Decimal to Octal Step 4

Divide el número decimal por la potencia de 8 más grande. Observa tu número decimal: 98. El nueve en el lugar de las decenas indica que hay nueve decenas (9 dieces) en este número. El 10 cabe 9 veces en este número. Con los octales ocurre algo similar, necesitas conocer cuántos 64 caben en el número final. Divide 98 por 64 para averiguarlo. La forma más fácil para hacerlo, es crear una tabla y leerla desde abajo hacia arriba:[2]

  • 98

           ÷
  • 64   8   1

           =
  • 1 ← Este es el primer dígito de tu número en octal
Imagen titulada Convert from Decimal to Octal Step 5

Halla el resto. Calcula el resto del problema de división o la cantidad restante que no encaja de manera uniforme en tu número. Escribe la respuesta en la parte superior de la segunda columna. Eso es el resto que queda del número después de calcular el primer dígito. En el ejemplo, 98 ÷ 64 = 1. Como 1 x 64 = 64, el resto es 98 – 64 = 34. Agrega este número a tu tabla:

  • 98   34

               ÷
  • 64   8   1

               =
  • 1

Imagen titulada Convert from Decimal to Octal Step 6

Divide el resto por la siguiente potencia de 8. Para hallar el próximo dígito, ahora debes bajar hacia la próxima potencia de 8. Divide el resto por este número y completa la segunda columna de la tabla:

  • 98   34
    ÷     ÷
  • 64   8   1
    =    =
  • 1    4
Imagen titulada Convert from Decimal to Octal Step 7

Repite estos pasos hasta obtener la respuesta completa. Tal como lo hiciste anteriormente, busca el resto de la respuesta y escríbelo en la parte superior de la columna siguiente. Continúa dividiendo y hallando el resto hasta que hayas terminado cada columna, incluyendo  80 (el lugar de las unidades). La última fila representa el número decimal convertido a octal. Aquí tienes un ejemplo con la tabla completa (observa que 2 es el resto de 34÷8):

  • 98   34   2
    ÷     ÷    ÷
  • 64   8   1
    =    =    =
  • 1    4    2
  • La respuesta final es: 98 en base 10 = 142 en base 8. Puedes reescribirlo como 9810 = 1428.
Imagen titulada Convert from Decimal to Octal Step 8


Verifica el resultado obtenido. Para verificar el resultado, multiplica cada dígito en octal por la potencia de 8 que representa. Deberás obtener el número original. Hazlo con la respuesta obtenida, 142:

  • 2 x 80 = 2 x 1 = 2
  • 4 x 81 = 4 x 8 = 32
  • 1 x 82 = 1 x 64 = 64
  • 2 + 32 + 64 = 98, el número con el cual comenzaste

Cómo convertir de decimal a Hexadecimal.

La notación hexadecimal es un sistema de numeración que tiene como base el dieciséis. Esto significa que tiene 16 símbolos que pueden representar un solo dígito, al añadir A, B, C, D, E y F a la numeración decimal usual. Convertir un decimal a un hexadecimal es más difícil que hacer lo contrario. Tómate tu tiempo para aprender esto, ya que es más fácil evitar los errores una vez que se comprende la razón por la cual funciona la conversión.

Resultado de imagen para tabla hexadecimal

Imagen titulada Convert from Decimal to Hexadecimal Step 2

Escribe las potencias del 16. Cada dígito en un número hexadecimal representa una potencia distinta del 16, así como cualquier dígito decimal representa una potencia del 10. Esta lista de potencias del 16 será muy útil durante la conversión:
  • 165 = 1 048 576
  • 164 = 65 536
  • 163 = 4096
  • 162 = 256
  • 161 = 16
  • Si el número decimal que vas a convertir es mayor a 1 048 576, calcula las potencias más altas del 16 y agrégalas a la lista.
Imagen titulada Convert from Decimal to Hexadecimal Step 3

Encuentra la potencia más alta del 16 que concuerde con tu número decimal. 
Escribe el número decimal que estás a punto de convertir. Remítete a la lista anterior. Encuentra la potencia más alta del 16 que sea menor al número decimal.

  • Por ejemplo, si vas a convertir 495 a un número hexadecimal, podrías escoger el 256 de la lista anterior.

Imagen titulada Convert from Decimal to Hexadecimal Step 4


Divide el número decimal entre esta potencia del 16. Detente en el número entero, ignora cualquier parte de la respuesta que esté después de la coma decimal.

  • En nuestro ejemplo, 495 ÷ 256 = 1,93..., pero a nosotros solo nos importa el número entero 1.
  • Tu respuesta es el primer dígito del número hexadecimal. En este caso, dado que dividimos entre 256, el 1 está en el "256.° lugar"


Imagen titulada Convert from Decimal to Hexadecimal Step 5

Encuentra el residuo. Este te indica lo que queda del número decimal que vas a convertir. En este punto se ve de qué forma calcularlo, tal como lo harías en una división larga:
  • Multiplica la última respuesta por el divisor. En nuestro ejemplo, 1 x 256 = 256. (En otras palabras, el 1 en nuestro número hexadecimal representa al 256 en base 10).
  • Resta la respuesta del dividendo. 495 - 256 = 239.

Imagen titulada Convert from Decimal to Hexadecimal Step 6


Divide el residuo entre las siguientes potencias más altas del 16. Remítete otra vez a tu lista de potencias del 16. Desciende a la siguiente potencia más baja de 16. Divide el residuo entre ese valor para encontrar el siguiente dígito de tu número hexadecimal. (Si el residuo es menor que este número, el siguiente dígito es 0).

  • 239 ÷ 16 = 14. Una vez más, ignoramos aquello que esté después de la coma decimal.
  • Este es el segundo dígito de nuestro número hexadecimal, en el "16.° lugar". Cualquier número de 0 a 15 se puede representar con un dígito único hexadecimal. Convertiremos a la correcta notación al final de este método.


Imagen titulada Convert from Decimal to Hexadecimal Step 7

Encuentra el residuo otra vez. Como antes, multiplica tu respuesta por el divisor, después réstala del dividendo. Este es el residuo que aún se debe convertir.

  • 14 x 16 = 224.                                                         
  • 239 - 224 = 15, por lo que el residuo es 15.



Imagen titulada Convert from Decimal to Hexadecimal Step 8


Repite hasta obtener un residuo menor a 16. Una vez que obtengas un residuo de 0 a 15, se puede expresar con un dígito único hexadecimal. Anótalo como el dígito final.

  • El último "dígito" de nuestro número hexadecimal es 15, en el "1.° lugar".


Imagen titulada Convert from Decimal to Hexadecimal Step 9



Escribe tu respuesta en la notación correcta. Ahora conoces todos los dígitos de nuestro número hexadecimal. Pero hasta ahora, solo los hemos anotado en base 10. Para anotar cada dígito en la notación hexadecimal correcta, conviértelos con esta guía.

  • Los dígitos de 0 a 9 permanecen iguales.
  • 10 = A; 11 = B; 12 = C; 13 = D; 14 = E; 15 = F
  • En nuestro ejemplo, terminamos con dígitos (1)(14)(15). En la notación correcta, esto se convierte en el número hexadecimal 1EF.



Imagen titulada Convert from Decimal to Hexadecimal Step 10


Conversión hexadecimal a binario.

Resultado de imagen para tabla hexadecimal a binario


En el siguiente vídeo, podrán conocer la explicación de convertir un hexadecimal a binario.



Conversión Octal a Binario

En esta conversión no es necesario pasar de binario a decimal, porque el sistema octal es la tercera potencia del sistema binario, y por ello la conversión suele ser más directa.

Para pasar de un número binario a octal, se conforman grupos de tres bits comenzando por la primera cifra de la derecha, si el último grupo formado está incompleto, se añaden ceros por la izquierda.  Cada uno de estos números (grupos de tres bits) se transforma en el correspondiente número octal.  

Resultado de imagen para tabla de octal a binario

Este vídeo explicará como es el procedimiento para convertir un Octal a binario.



Referencias:

  1. http://www.binarymath.info
  2. http://www.inetdaemon.com/tutorials/basic_concepts/number_systems/binary/conversion.shtml
  3. http://users.ece.utexas.edu/~valvano/embed/chap3/chap3.htm#OCTAL
  4. http://www.free-online-calculator-use.com/decimal-to-octal-converter.html
  5. http://mathforum.org/library/drmath/view/55738.html
  6. http://es.wikihow.com/convertir-de-decimal-a-hexadecimal