Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - engel lex

#1
personalmente no lo he probado pero a algunos les puede interesar

sacado de https://pivigames.blog/pack-de-juegos-flash/

CitarSeguramente has escuchado el plugin Adobe Flash, un controlador famoso en el desarrollo de los vídeojuegos, por ejempolo los extintos juegos de facebook ocupaban este plugin para que pudieras jugar desde esta red social sin descargar ningun dato en tu ordenador, hace meses se anunció el fin del plugin poniendo en peligro de extinción a una parte importante de la vida jugable de muchos usuarios actuales, por ello un sitio llamado FLASH POINT se dio a la tarea de recolectar y guardar más de 1000 juegos, en total 260 GB de información a la cual podemos acceder TOTAL MENTE GRATIS.

Si te interesa este super pack, a continuación te presentamos un vídeo donde te explicamos a detalle como conseguirlo, esperando que lo disfrutes como buen gamer :).

aquí la pagina oficial del proyecto
https://bluemaxima.org/flashpoint/downloads/

aqui el video con la explicacion de como hacerlo funcionar
[youtube=640,360]https://www.youtube.com/watch?v=_HXrWTVdr4s[/youtube]
#2
Una tarjeta inteligente para comprar alimentos, destinada a madres de niños menores de 6 años y referentes de comedores populares; un seguimiento de la calidad de los productos comprados para fortalecer una política nutricional y la eliminación del IVA a productos de la canasta básica, pero sólo para sectores vulnerables, forman parte de las primeras medidas del plan nacional contra el hambre que diseña el presidente electo, Alberto Fernández.

El diputado Daniel Arroyo​ -que suena como posible ministro de Desarrollo Social a partir del 10 de diciembre y el viernes coordinó la primera reunión del consejo federal integrado por referentes políticos, sociales y empresariales- ofreció detalles este sábado sobre cómo serán las primeras medidas que se implementarán en el marco del programa "Argentina contra el hambre".

"Vamos a implementar una tarjeta de alimentos, que no permite extraer dinero sino comprar alimentos, se carga y se compra", explicó Arroyo en diálogo con radio Mitre, y precisó que "la tarjeta de alimentos va a ser monitoreada para tener registro de los productos que se compran, así un conjunto de nutricionistas podrá orientar y mejorar la calidad de lo que consumen los chicos, ya que hoy existe el problema de la malnutrición".

Entre otras precisiones, el legislador dijo además que "el monto de la tarjeta se va a definir más cerca del 10 de diciembre", y aclaró que "el puntero político no va a poder darla porque la tarjeta la va a otorgar el banco público".

También precisó que, en una primera etapa, la tarjeta se entregará aproximadamente a 2 millones de beneficiarios en todo el país -actualmente 8 millones de personas reciben asistencia alimentaria- y que "las escuelas cumplirán un rol clave" en el programa contra el hambre.

Arroyo indicó también que los fondos para esta nueva ayuda "se reorganizarán de partidas que ya existen: este año se destinaron para ello 27 mil millones, y para el año que viene están previstos 40.000 millones, que se reasignarán sin tener un pacto fiscal ni cobrando un nuevo impuesto".

De esta manera, buscan cumplir con lo dispuesto en la ley de emergencia alimentaria, que fue prorrogada recientemente hasta 2022, un reclamo que vienen sosteniendo las organizaciones sociales.

La tarjeta se entregará también a referentes de comedores populares, "con un monto un poco mayor, y lo que compren también será codificado y monitoreado para acompañar una política nutricional", amplió en declaraciones a radio Nacional.

En cuanto al IVA, Arroyo criticó la decisión del gobierno de Mauricio Macri de "hacer una devolución universal del IVA alocada en el medio de una devaluación del 30 por ciento, que actualmente nadie sabe en qué parte de la cadena se devuelve", y que llevó a los gobernadores a realizar un planteo en la Justicia.

"Es medio absurdo lo que ha hecho el Gobierno de universalizar la devolución del IVA, por eso se judicializó. Nosotros hablamos de la población más crítica con un problema de hambre, donde el Estado tiene que hacer una contribución fuerte; es decir establecer un criterio para los que de verdad lo necesiten", explicó.

Con la tarjeta se podrá comprar cualquier alimento, excepto bebidas alcohólicas. "Si una familia consume los 13 rubros de toda la canasta básica va a haber descuentos especiales", anticipó.

Por último, defendió la presencia de personalidades como Marcelo Tinelli y Narda Lepes en la reunión de ayer, que fueron cuestionadas desde algunos sectores.

"Narda Lepes dio muchos consejos sobre la buena nutrición. Y Marcelo Tinelli tiene un compromiso social claro; cuando yo iba a algún comedor alguien me decía que estuvo el antes ahí, está muy comprometido con eso", remarcó.

original
https://www.clarin.com/economia/economia/tarjeta-alimentos-preve-alberto-fernandez_0_6GAQo8-Q.html




huelen eso? uff me encanta el olor a populismo fresco por la mañana

no permite extraer dinero XD ya veo a un monton de niños y mujeres inexistentes por ahi inscritas para sacar ese dinero, no permite uso en cajero, pero ya bastante he visto esto, esto en venezuela en un momento fue comun con la tarjeta de alimentacion y totalmente normalizado como se iba a locales y te lo cambiaban a efectivo por solo el 10% XD shh  :-X no le digan a nadie pero los cajeros electronicos dentro de algunos ministerios si permitian retirarlo como efectivo, pero apenas le metian dinero se quedaba vacio XD
#3
Nicolás Maduro anunció durante la cadena nacional de este viernes que el gobierno bolivariano asumirá el diferencial del salario de las nóminas de las industrias medianas y pequeñas del país por un período de 90 días.


https://www.lapatilla.com/2018/08/17/gobierno-bolivariano-asume-diferencial-en-nominas-de-las-industrias/
#4
El viernes el presidente de la República, Nicolás Maduro Moros, mediante una cadena nacional realizó una serie de anuncios económicos al país, entre los cuales informó el nuevo sueldo mínimo que perciban los trabajadores en Venezuela.

Redacción Venezuela al Día
El Ejecutivo Nacional indicó que tanto el salario mínimo de los trabajadores, las pensiones y las bases de todas las tablas salariales, pasará de cinco 5.000.000 bs  a 180 millones de bolívares. Es decir, 1.800 bolívares Soberanos y el mismo estará anclado al Petro, lo que significa que el sueldo de los criollos se ubicará en 30$, igual a 0,5 Petros.



dejo en enlace de la noticia en un medio aliado del estado...
https://www.telesurtv.net/news/venezuela-maduro-aumento-sueldo-bolivar-soberano-petro-20180817-0047.html
#5
Algunos conocerán JDownloader... y yo mismo soy usuario de el, hoy fui a intalarlo en windows y vi que Windows defender lo bloqueaba.... "nah, un falso positivo" dije... vamos a ver Virus total.... bueno... muchos fasls positivos... vamos a ver hybrid analisis... "bueno ya creo que no lo usaré" XD

entonces quiero ver si alguien que sepa un poco más de windows que yo, sabrá si tanto acceso al registro e inyectar procesos es normal....

aquí la muestra
https://www.hybrid-analysis.com/sample/abad3a6610dae56190a29bab54952ce4920c81db9176155b08f656788ddc0099
#6
Es un tema que ya hace tiempo vengo viendo... prometen dispositivos que "generan una onda inversa que anula el ruido" suena muy bien en teoría... peeero....


vemos un poco la teoría: 2 ondas inversas se anulan... ya que las ondas en 2 dimensiones no son más que extensión de la coordenada Y para un punto X, entonces (3,2) y (3,-2) dará un valor Y de 0 en X=3... o viendolo graficamente




hasta aquí todo bien... pero entonces por qué es imposible?
porque el mundo es en 3 dimensiones y no 2...

aquí una idea



una imagen en 3D, la 3ra dimensión  viene dada por el color... verde = positivo, rojo = negativo, negro = 0

aquí vemos como se forman patrones visibles, en algunos puntos simplemente se anula todo sonido, en otros es igual... pero un peor caso... en muchos puntos (especialmente cerca de los anulados) vemos como el sonido es incluso más intenso

esto se da debido a la sumatoria de ondas...

incluso si tuvieramos lado a lado el emisor y el anulador solo se anula en un espacio lineal



y si es un espacio cerrado, vemos como el sonido termina siendo muchisimo más intenso que uno abierto (un punto abierto arriba como referencia de intensidad)




eso era todo! XD




si quieren simular, lo hice en esta pagina... tiene multiples ejemplos
http://www.falstad.com/ripple/
#7
Hardware / Nueva pc
13 Enero 2018, 22:13 PM
Hola! ahora como otros tambien vengo yo a publicar esto a ver que opinan...


primero que nada, estoy haciendo un setup con un presupuesto muy limitado... quería ver que opinaban al respecto y si está bien este setup

MB
https://www.amazon.com/gp/product/B06XJRD9TY

CPU
https://www.amazon.com/gp/product/B06XKWT8J4

RAM
https://www.amazon.com/gp/product/B00TY6A1P0

PSU
https://www.amazon.com/gp/product/B00H33SFJU

Case
https://www.amazon.com/gp/product/B0756NCCG7/

la tarjeta es miniatx, el case tambien, sin embargo aclara que se puede acomodar una fuente atx dentro de el, sin embargo, uds probablemente puedan decirme si este setup es apropiado o no...
#8
Seguridad / Sus reglas personalizadas con fail2ban
28 Diciembre 2017, 09:06 AM
Hola!

decido abrir este tema para ver que util se consigue y aportar...

vamos a dejar aquí nuestras reglas personalizadas de fail2ban ;)

esta primera que dejo, la cree porque tengo gente muy fastidiosa con bots, así que decidí frenarlos con todo XD

una cosa peculiar de gran parte de los bots es que no tienen user agent o no mandan host en la conexión... esto se ve reflejado por guiones al final de la linea en el log de accesos de apache, ejemplo

xxx.xxx.xxx.xxx - - [01/Dec/2017:00:00:02 -0600] "GET www.xxxxxxxxxxxxx.com:443 HTTP/1.1" 200 5363 "-" "-"
xxx.xxx.xxx.xxx - - [01/Dec/2017:00:00:17 -0600] "GET http://yyyyyyyyy.me/control/includes/version.php HTTP/1.1" 404 1287 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1944.0 Safari/537.36"



así que explotando esto decidí hacer una regla muy agresiva y listo


failregex = ^<HOST> - .*"CONNECT.*HTTP.*$ # no acepto este tipo de peticiones
            ^<HOST> - .*"\\x03.*$   # mala solicitud ssl? a quien le importa
            ^<HOST> - .*"\\x16\\x03.*$ # lo mismo de arriba
            ^<HOST> - .*"USER.*$ # nope... esto en http está mal
            ^<HOST> - .*HTTP.*\d+ \d+ "-" ".*$ # sin solicitar host no se entra


agresivo dije

[apache-agresive]
enabled = true
port = http,https
filter = apache-agresive
logpath = /var/log/apache2/access* #vhosts con sus propios logs
maxretry = 1 # agresivo...
findtime = 84600 # 24 horas
bantime = 8460000 # 100 dias



si, se que puede ser demasiado, pero una petición formal de un navegador común no tiene nada de eso...
#9
Dentro de un galpón en la calle 35 entre carreras 20 y 21, en el centro de Barquisimeto, una comisión del Servicio de Investigaciones Penales del Cuerpo de Policía del estado Lara (SIPEL) localizó  este sábado 21 máquinas minadoras de criptomonedas marca Bitmain, más 18 fuentes de poder de la misma marca, un equipo switch TP-LINK modelo TL- SF1048 y una mini laptop marca Sony.

El aumento repentino del consumo de energía eléctrica en ese sitio específico fue la señal de alerta para los investigadores. Ellos solicitaron a la Corporación Eléctrica Nacional (Corpoelec) las órdenes de servicio de instalación de nuevos transformadores para verificar a nombre de quién estaban estas  solicitudes y hallaron la dirección del usuario.

Dentro del galpón solo estaban las máquinas valoradas en 7 mil dólares cada una, por lo que se presume  que  eran manejadas  por un usuario remoto, explicó el  director de seguridad y orden público del estado Lara, Kleider Ferreiro. No obstante, las investigaciones determinaron que el presunto propietario de las máquinas es Daniel Andrés Di Bartolomeo Viloria, un abogado larense a quien las autoridades todavía no han ubicado, pues, aparentemente, salió del país antes de la ejecución del procedimiento.

Los delitos cometidos en este caso son legitimación de capitales, enriquecimiento ilícito, delitos informáticos, financiamiento al terrorismo, fraude cambiario y daños al sistema eléctrico nacional.

Amplió Ferreiro que las máquinas sirven para vulnerar el sistema nacional bancario: "Este tipo de cambios, que son ilícitos cambiarios, toman los bolívares, los convierten en moneda virtual y esa moneda virtual la cambian por dólares o por cualquier otra moneda. De esa manera vulneran los controles cambiarios, el sistema financiero, los controles contra legitimación de capitales, constituyendo el delito de legitimación de capitales, financiamiento al terrorismo contemplado en la Ley Orgánica contra la Delincuencia Organizada y el Financiamiento al Terrorismo, pero además de eso atentan contra la estabilidad del sistema financiero del Estado  venezolano".

Cuando se cambia la moneda y se facilitan los medios para la legitimación de capitales, se incurre en delito y "si el medio  para la legitimación de capitales es el uso de máquinas para venta de criptomonedas, la máquina y la actividad con esta es ilícita", abundó Ferreiro.

Según un reportaje hecho por la AFP sobre el manejo de las criptomonedas en Venezuela, las máquinas minadoras las compran en China a través de internet y para que ingresen en el país el comprador debe pagar por lo menos 800 dólares en la aduana.

El director de seguridad y orden público en Lara afirmó que las máquinas ingresan al país por contrabando y quien las adquiere incurre también en el delito de atestación de datos falsos en un documento público, pues al pasar por el Seniat lo declaran como fuente de poder, tarjetas de video, tarjetas de juego u algún repuesto de computadora cuando se trata de una máquina minadora de criptomonedas.

Minar criptomonedas de esta forma, añadió Ferreiro, tampoco tiene ningún registro de comercio, es decir, que quien se vale de estas máquinas no paga impuestos ni tiene ningún soporte legal para la actividad económica.

En cuanto al uso de la energía eléctrica aclaró que cualquier usuario con un contrato con Corpoelec puede aumentar la capacidad de sus transformadores con inversión propia. Lo ilícito es lo que se hace con esa energía eléctrica.

Distinto ocurrirá  con el Petro, la criptomoneda venezolana anunciada recientemente por el presidente Nicolás Maduro, porque, dijo Ferreiro, estará respaldada por las reservas de oro y el Banco Central de Venezuela, es decir, la comercialización de esta moneda será legal.

Por otro lado, al ser consultado por EL IMPULSO sobre este caso  el abogado especialista en Derecho Internacional Económico y de la Integración, Jesús Ollarves, indicó que en el país no hay ninguna regulación jurídica que otorgue sanciones penales, civiles o administrativas. "El único delito que pudiera ser aplicable es la vinculada al sistema eléctrico, los demás son 'halados por los cabellos' frente a la ausencia jurídica de estos casos que no son típicos", analizó.

Lo que considera prudente es que la Asamblea Nacional debe discutir la creación de una medida que regule las criptomonedas, sobre todo, con la creación del  Petro.

Via
http://www.elimpulso.com/noticias/sucesos/encuentran-21-maquinas-minadoras-de-criptomonedas-en-un-galpon

#10
Noticias / ¡Oye Siri! ¿Cómo funcionas?
21 Octubre 2017, 22:34 PM

Por @Alvy — 21 de Octubre de 2017

Apple ha publicado una interesante descripción técnica pero en cierto modo divulgativa de cómo funciona «Oye Siri», el sistema de activación «manos libres» de su asistente inteligente. Es un buen ejemplo de algo muy simple de hacer (pronunciar dos palabras) que sin embargo necesita de un montón de tecnología entre bambalinas para funcionar.

Los detalles están el Apple Machine Learning Journal, una publicación de Apple dedicada al aprendizaje automático: Hey Siri: An On-device DNN‑powered Voice Trigger for Apple's Personal Assistant y lo firma simplemente «el equipo de Siri».

El artículo explica cómo es el «pequeño reconocedor de lenguaje» que detecta las dos palabras clave encadenadas: Oye + Siri. Si se activa entonces se procesa el resto de la frase (lo cual daría para varios artículos más, pero no es el objetivo). Ese mini-reconocedor realiza un cálculo de probabilidad para valorar si se han pronunciado las palabras mágicas; a partir de cierto valor es cuando se activa.

El reconocimiento del lenguaje se realiza sobre una versión digitalizada del sonido captado por el micrófono a 16.000 bps, convirtiendo las ondas sonoras aventanas de 0,01 segundos cada una. Empaquetadas de 20 en 20, cada 0,2 segundos de audio alimentan una red neuronal de aprendizaje profundo que compara esos 20 fragmentos con el modelo original de la frase (incluyendo silencios). Esto incluye algunas versiones de la frase «Oye Siri» grabados por el usuario durante la configuración, lo que ayuda a mejorar la efectividad del reconocimiento – aunque Siri responderá a cualquier persona si pronuncia correctamente la frase.

leer completo en
http://www.microsiervos.com/archivo/tecnologia/oye-siri-como-funcionas.html
#11
Electrónica / Características altavoz
12 Agosto 2017, 19:36 PM
Hola!

en este momento les consulto porque no se que buscar en peculiar...

Tengo un altavoz de estos bluetooth cuya tarjeta falló y se da por perdida (parece que el firmware por alguna razón se borró del IC y quedó mala... ya en esto me doy cuenta que necesito cosas que no tengo para resolver, así que santo sepulcro a la tarjeta)

el asunto es que esta corneta parece consumir una cantidad de corriente decente, mi pregunta es

¿Qué necesito hacer para construir un box con 2 cornetas de estas? (si, es un problema de fabrica... chinos...) más o menos que setup debo armar a nivel de aplificación, control (analógico) de volumen y como calcular la corriente requerida para alimentarlas a 5v (usb y saber si requiero más de 5w para evitar problemas)

saben que para nada me doy con electronica analógica XD así que ando perdido

click para ver en full


esa es la placa, a lo que sospecho, el IC arriba derecha es el control de bluetooth, , el centro es indudablemente el control principal, el de la izqueirda creo que puede ser el control de carga de la bateria (li ion), el de el centro a la derecha, algún Amp Op para la conrneta
#12
Si has comprado hace poco una aspiradora Roomba, felicidades, acabas de meter en tu casa un caballo de Troya. Según informa Reuters, el fabricante iRobot podría empezar a vender datos que recopilan las aspiradoras.

Las aspiradoras Roomba son pequeños electrodomésticos que usan sensores y cámaras para saber dónde se encuentran en el espacio que tienen. Por ejemplo, si la pones en tu salón, Roomba empezará a escanear todos los obstáculos que tiene por delante, moviéndose por todo el espacio que le sea posible y al mismo tiempo, creando un plano de tu casa para saber por dónde debe moverse.

En este artículo de Reuters sobre iRobot, la empresa que los fabrica, se habla del futuro de la empresa, más interesada en los datos que las aspiradoras recopilan que en las aspiradoras en sí. El tiempo en el que el hardware, ese producto tangible y físico que puedes tocar, valía más que los datos, ha quedado atrás. Tus datos son importantes y hay muchas empresas que quieren sacar provecho.

Las Roomba miden los espacios que hay entre obstáculos, por ejemplo el espacio que hay entre tu sofá y mesa, lámparas y otros objetos. Un mapa de tu casa muy detallado que se podría vender a otras empresas, con el consiguiente problema de privacidad que conlleva.

¿Quién podría querer saber cómo configuras tu salón? El CEO de iRobot, Colin Angle, comentó a Reuters que hay empresas como los fabricantes de productos conectados interesados en conocer cómo se organizan las estancias de tu hogar.

¿A qué distancia está una bombilla conectada de su hub? ¿O un termostato inteligente del radiador más próximo y el más alejado? Estos detalles del espacio físico que recopila iRobot con sus Roomba podrían ser valiosos para fabricantes, como Google, Amazon o Apple al meterse de lleno con asistentes virtuales capaces de controlar productos conectados en el hogar.

Por poner otro ejemplo mucho más sencillo. Si iRobot decide vender datos que recopila las Roomba a otras empresas, podría vender datos del nivel de suciedad de tu casa a tiendas online como Amazon, para que te muestre productos de limpieza relacionados. Lo mismo pasaría con Facebook, para así mostrar publicidad más enfocada a tus necesidades, aunque no las sepas.


fuente: http://clipset.20minutos.es/irobot-roomba-venderia-datos-de-tu-casa/

Relacionado: http://foro.elhacker.net/noticias/los_aspiradores_roomba_ahora_venden_los_datos_de_nuestra_casa-t472779.0.html;msg2134291;topicseen#msg2134291
#13
Para equellos que piensan que las maquinas nos van a dejar sin trabajo y aquellos que no tienen una idea al respecto, este video los dejará secos

activen los subtitulos

[youtube=640,360]https://youtu.be/WSKi8HfcxEk[/youtube]
#14
Hola! por ahi conseguí está jollita, de alquien que hizo unos poster (tipo xkcd) sobre la estructura a nivel de byte de los archivos comunes,  chequeenlos aquí

https://github.com/corkami/pics/blob/master/binary/README.md

dejo varios de preview





#15
Software / servidores de correo para linux
9 Febrero 2017, 04:00 AM
Alguien conoce algún buen servidor de correo para linux, en el sentido que tenga una interfaz bonita y facil de usar que sea freeware

estoy probando zimbra y kolab (community), pero por lo menos zimbra la interfaz es muy años 90 XD
#16
Se que hubo una discusión aquí sobre que los diamantes se queman, no recuerdo por qué y no creo que sea importante...

solo dejo esto para que vean más o menos cuanto fuego aguantan antes de arder... el ingles es terrible (es un filandes hablando inglés) XD pero basico...

les resumo... no se preocupen si se les cae en una olla con aceite hieviendo... en hecho no se preocupen si cae en acero hirviendo XD

[youtube=640,360]https://www.youtube.com/watch?v=hF_yqriai7E[/youtube]
#17
Amazon usa camiones para mover grandes cantidades de datos a internet (y lo explica con Lego)


Cuando se trata de mover una gran cantidad de datos a través de internet el proceso puede ser largo y lento, incluso utilizando conexiones rápidas: «mover petabytes o exabytes [miles de terabytes o miles de petabytes, respectivamente] de archivos gráficos, registros financieros, imágenes por satélite o datos científicos con una conexión a internet puede llevar años e incluso decenios. E invertir en ampliar las conexión para un centro de datos del cual se van a migrar los datos es caro y difícil de justificar», dice Jeff Barr en AWS Blog.

Para este tipo de escenarios es para lo que Amazon ha presentado su AWS Snowmobile: un contenedor de 14 metros convertido esencialmente en un gigantesco disco duro externo con 100 Petabytes de capacidad — miles de terabytes o millones de gigabytes.

Una vez contratado el servicio el camión viaja de Amazon hasta el centro de datos del cliente que desea migrarse a AWS (Amazon Web Services), se conecta a él con conexiones físicas (cables y/o fibra) de hasta 1 Terabit por segundos (conexiones múltiples de 40 Gigabits por segundo) y empieza a succionar todos los datos: en unos 10 días se llenan los 100 Petabytes del Snowmobile.


El contenedor (que está reforzado, aislado y y climatizado) es la versión hermano mayor de un servicio parecido que ya ofrecía Amazon, el AWS Snowball, un trasto del tamaño de un pequeño electrodoméstico que Amazon ofrece con el mismo fin: trasladar datos (hasta 80 teras en este caso) desde un centro de datos ya existente al servicio en la nube de Amazon.

Así que igual que hace diez años un caracol era más rápido que un ADSL moviendo datos de un lugar a otro, también un camión es más rápido (o al menos más económico) moviendo cantidades ingentes de información.

Publicado en: Amazon usa camiones para mover grandes cantidades de datos a internet (y lo explica con Lego)
Por Nacho Palou —1 de Diciembre de 2016
Fuente: AWS Snowmobile – Move Exabytes of Data to the Cloud in Weeks
Convertido con HTML To BB Code Converter
#18
(texto extraido de este link y usando esta herramienta para convertir de html a bbcode)
Los mejores libros que puedes leer sobre matemáticas

Por @Alvy — 12 de Noviembre de 2016


Esta selección proviene de Goodreads; habiendo leído más o menos la mitad tan solo puedo concordar con ella. Es una lista ideal para quien quiera descubrir, aprender y maravillarse con las matemáticas:
Los libros más populares de matemáticas



1. Gödel, Escher, Bach: un Eterno y Grácil Bucle (Douglas R. Hofstadter, 1979/1995). ¿Pueden un sistema o una mente comprenderse a sí mismos? Una cuestión clave del pensamiento científico, de la filosofía y del arte, examinada a través de tres genios: el matemático Kurt Gödel, el artista M.C. Escher y el compositor Johann Sebastian Bach. Obtuvo el Premio Pulitzer, 1980. [Sobre el autor.]


2. Planilandia: un romance en muchas dimensiones (Edwin Abbott, 1884). Planilandia es el mundo en el que el protagonista de la obra (A. Square, «A. Cuadrado») describe las costumbres y la física de un universo plano en dos dimensiones. El protagonista es visitado de repente por un ser de la «tercera dimensión» y esto le abre un nuevo mundo desconocido para él hasta ahora – no exento de problemas. [Reseña de la primera y segunda partes de la novela.]


3. El enigma de Fermat (Simon Singh, 1997/2015). «He descubierto una demostración verdaderamente maravillosa, pero este margen es demasiado estrecho para contenerla». La historia de uno de los más famosos problemas –y su solución– a lo largo de varios siglos. [Sobre la solución del problema y entrevista con el autor.]


4. Cero: biografía de una idea peligrosa (Charles Seife, 2006). «Los babilonios lo inventaron, los griegos lo proscribieron, los indios lo veneraron y la Iglesia católica lo esgrimió para atajar herejías». La historia del número cero, un concepto aparentemente inofensivo pero que resultaba contrario a la intuición de muchas civilizaciones antiguas aunque tuvieron que enfrentarse a él en algún momento para prosperar en las ciencias. [Reseña.]


5. The Man Who Loved Only Numbers: The Story of Paul Erdos and the Search for Mathematical Truth (Paul Hoffman, 2001). Un retrato del matemático húngaro Paul Erdős: genio excéntrico y hombre campechano tras el cual están algunos de los más sorprendentes descubrimientos de la matemática moderna. [Existe una versión en castellano descatalogada: El hombre que solo amaba los números.]


6. How Not to be Wrong: The Hidden Maths of Everyday Life (Jordan Ellenberg, 2014). Un manifiesto sobre la utilidad de las matemáticas en la vida cotidiana. Calificado del «Freakonomics de las matemáticas» trata desde las bases de las matemáticas más sencillas a su aplicación formal y mediante trucos y otras técnicas fáciles de entender.


7. Los códigos secretos (Simon Singh, 2000). Una breve historia de la criptografía y el criptoanálisis, así como sus implicaciones –casi siempre decisivas– de los «códigos secretos» a lo largo de la historia de las diversas civilizaciones. [Está a la altura de The Codebreakers, aunque no alcanza al clásico de David Khan.]


8. El placer de la X: una visita guiada por las matemáticas, del uno al infinito (Steven Strogatz, 2013). Un recorrido por diversas ramas de saber y su relación con las matemáticas a través de sorprendentes conexiones con la literatura, la filosofía, la medicina o el arte, no siempre evidentes pero siempre llamativas.


9. El universo de las matemáticas: un recorrido alfabético por los grandes teoremas, enigmas y controversias (William Dunham, 2006). Los grandes teoremas, enigmas, controversias y misterios irresueltos que han conformado el fascinante mundo de las matemáticas, desde hace cinco mil años hasta nuestros días.


10. La música de los números primos (Marcus Du Sautoy, 2003/2013). Este libro es un recorrido por la vida de algunos de los más grandes matemáticos de la historia y sus trabajos sobre la Hipótesis de Riemann y su misteriosa y a la vez extraña relación con los números primos. [Reseña; sobre el problema más famoso relacionado con los números primos: The Riemann Hypothesis de Karl Sabbagh es el más completo.]


11. La proporción áurea: la historia de phi, el número más sorprendente del mundo (Mario Livio, 2008). La historia del número Φ a lo largo de los tiempos, sus características matemáticas y cómo se fueron aplicando en diversas áreas, así como los méritos de todas sus «supuestas apariciones» a lo largo de la historia en todo tipo de contextos. [Reseña.]


12. El andar del borracho: cómo el azar gobierna nuestras vidas (Leonard Mlodinow, 2010). Matemáticas, probabilidad, la forma de entender las encuestas, el juego, el riesgo, los acertijos que desafían a la intuición y decenas de temas relacionados. [Un ejemplo del libro.]


13. El hombre anumérico (John Allen Paulos, 1988). «Yo es que soy de letras». Cómo el desconocimiento de las matemáticas no solo nos afecta personalmente en cuestiones avanzadas y complejas sino también en la vida cotidiana, casi siempre en nuestra contra. [Por aquí hemos publicado varios de los problemas planteados en el libro.]

(Vía @pickover.)
#19
Hace unos dias vengo probando esta aplicación, es una app con un server local para usar en su navegador yprogramar en python o hacer documentos vistosos

este les premite usar python para probar conceptos de manera simple, o para programar de manera mas modular

la interfaz es ciertamente parecida a la de google drive





con la linea de comandos
%pylab inline

permite iniciar los medulos matemáticos y de ploteo en 2d y 3d







pueden colocar texto con formato e incluye un modulo laTex



así como pueden descargar lo que hicieron en una serie de formatos (estaticos  y de codigo) diferentes



les dejo este aporte por aquí, ya que a mi me ha servido bastante

yo lo bajé como parte de anaconda python
https://www.continuum.io/downloads

pero creoq ue pueden bajarse el jupiter unicamente para que no tengan tantas cosas instaladas que posiblemente no usen

http://jupyter.org/


[/size]


#20
me gusta ver las antiguas publicidades de pc, tienen alguna por allí?


dejo esta primero... super disco de 80mb formateado!!! y 28ms de tiempo de acceso! XD
#21
Hola!

esta vez vengo porque estoy trancado con un proyecto, necesito hacer 2 medidores, un medidor de corriente para el consumo de mis aparatos, ese no creo tener mayor problema (por inducción y listo),

el otro y con el que necesito ayuda es como medir 110v de la pared, la cosa es como bajar proporcionalmente de 110v a 5v... claramente lo mio no es la electrónica de potencia, la intención es bajarlo a 5v como imagen exacta, no convertirlo en dc, no quiero hacer un divisor de voltaje porque temo que explotará en llamas y dejará las respectivas muertes al conectarlo XD o eso creo... no lo he pensado mucho... quiero consejos donde debería empezar para hacerlo de manera segura

#22
Software / Vuelvo yo con PopCornTime
15 Febrero 2016, 06:03 AM
Bien sabemos que Popcorn Time murió hace poco debido a varias razones, el asunto es que los ejecutables aún están por ahí... dejo los links para bajarlos... pero leedme hasta el final :o

estos vienen de una fuente mas o menos confiable, de techspot

los links igual los dejo por aquí en mega, para windows, Mac, Linux (32), Linux (64)

por seguridad y desconfianza yo decidí no instalar, solo correr (bien sabemos que en linux, si no metemos la clave, estamos bastante seguros, aunque no se fíen de eso, por siempre hay una vuelta :o)

sin embargo, esto no es todo... el api de series y películas está muerto... lamentablemente el de pelis parece que quedará permanentemente muerto... sin embargo, hay un respaldo del api de series (tengan en cuenta que este también podría morir en cualquier momento)... pero para aquellos que no saben como va esto, le darán click a la rosquita arriba a la derecha en el programa (configuración), margcarán "activar configuración avanzada", abajo (en algún punto) dice "API Endpoint de las series" allí en el cuadro borrar el que está y pegan ese link del api que dejé...

para aquellos que viven en países con opresión cuidado al usar Popcorn, porque puede traer problemas legales, aquellos que vivimos en revolución somos libres de usarlo felizmente y sin riesgos...

Saludos!
#23
Hola a todos :)

vengo a ver si alguien me sabe ayudar con esto:

tengo linux mint 17

estoy jugando, quiero bajar la resolución para subir el fps, si el juego intenta cambiar la resolución, la cambia por un instante, luego el sistema vuelve a su resolución original (1080) y el juego queda en ventana,  intento cambiar la resolución de pantalla por consola (xrandr) y hace lo mismo, cambia por un instante y luego vuelve...  incluso haciendo el cambio directamente con c++ hace lo mismo... lo interesante es que por la configuración de pantalla, hace el cambio bien y lo mantiene... no estoy seguro que es lo que pasa en este caso... hay alguien con experiencias similares resueltas :huh:
#24
Debido a una duda planteada por un usuario me decidí hacer este tema

Como calcular un seno o un coseno sin necesidad de una librería externa, sino por nuestros propios medios...

para esto haremos uso de las Series de taylor no caeré en detalles sobre esta teoría sino iré directamente a su aplicación... en este caso usaré solo la biblioteca iostream para impresión de datos

/*************************** cabecera ***************************/
Código (cpp) [Seleccionar]
#include <iostream>
using namespace std;

const double PI = 3.14159;
const double EPSILON = 0.00001;

/****************************************************************/

luego las series de Taylor para esto me solicitan 2 funciones puntuales, potencias y factoriales, para el caso de las potencias, solo necesito exponentes enteros, en los factoriales solo valores enteros (los que nos quita mucho trabajo de encima), aquí estan mi forma de aplicarlas (tambien un par de funciones extra, para conversión de grados a radianes y de modulo)

/*************************** funciones base ***************************/

Código (cpp) [Seleccionar]
double angulos_a_radianes(double angulo) {
return (angulo * PI) / 180;
}

double potencia(double base, int exp) {
//si el exponente es 0 o la base es 1, el resultado es directamente 1
if(exp == 0 || base == 1){return 1;}

//si la base es -1, el resultado es 1 o -1, para reflejar esto lo hago:
//(si el exponente es par exp%2 es 0) 1 - (0)*2 = 1-0 = 1
//(si el exponente es impar exp%2 es 1) 1 - (1)*2 = 1-2 = -1
if(base == -1){return 1-(exp%2)*2;}

//cargamos el resultado a la base
double resultado = base;

//siempre que el exponente sea mayor que 1 seguimos
while(exp-- > 1){
resultado*=base;
}
return resultado;
}

long int factorial(int factor){
//el factorial de 0 es 1
if(factor == 0) return 1;

//cargamos 1 para multiplicar
long int resultado = 1;

//hacemos... mientras factor sea mayor que 1
do{
resultado*=factor;
}while(factor-- > 1);

return resultado;
}

//retornamos como valor positivo siempre (función módulo)
double positivo(double numero){
if(numero<0) return -1*numero;
return numero;
}


/*************************** funciones base ***************************/

ahora vamos a calcular directamente los valores que nos importa, seno, coseno y tangente

/*************************** funciones con taylor ***************************/

Código (cpp) [Seleccionar]
//taylor para seno, con x en radianes
double seno(double x){
//aqui llevaremos la sumatoria
double resultado=0;

//usaremos este valor de control para nuestra precisión
double resultado_anterior=0;

//este es el variable de la sumatoria
int sumador = 0;

//hacemos mientras la diferencia sea menor a la precisión
do{
//almacenamos el resultado anterior
resultado_anterior = resultado;

//la serie de taylor
resultado+= potencia(-1,sumador)*potencia(x,2*sumador+1)/factorial(2*sumador+1);

//siempre avanzamos 1
sumador++;

}while(positivo(resultado-resultado_anterior) >= EPSILON);

return resultado;
}

//taylor para coseno, con x en radianes
double coseno(double x){
//aqui llevaremos la sumatoria
double resultado=0;

//usaremos este valor de control para nuestra precisión
double resultado_anterior=0;

//este es el variable de la sumatoria
int sumador = 0;

//hacemos mientras la diferencia sea menor a la precisión
do{
//almacenamos el resultado anterior
resultado_anterior = resultado;

//la serie de taylor
resultado+= potencia(-1,sumador)*potencia(x,2*sumador)/factorial(2*sumador);

//siempre avanzamos 1
sumador++;

}while(positivo(resultado-resultado_anterior) >= EPSILON);

return resultado;
}

double tangente(double x){

if(x/(PI/2)== (int)(x/(PI/2))){
cout << "Error: el angulo no debe ser multiplo de 90" << endl;
return 0;
}

//trampa... pero la serie de taylor para tangente es computacionalmente muy pesada
//este metodo aunque ligeramente menos preciso, resuelve el problema mucho más facil
return seno(x)/coseno(x);
}


/*************************** funciones con taylor ***************************/

y ya lo unico que queda por agregar es el main con la llamada a estas funciones, recomiendo mantener la precisión de cout en la misma cantidad de decimales de PI y EPSILON, ya que esto es lo que nos mantendrá en un "bonito" margen de precisión... tambien recuerden que si piden mucha precisión empezará a fallar por la forma en que funciona float a nivel binario en ese caso tendrán que usar aritmetica de precisión arbitraria (aquí un tema que hice sobre eso hace tiempo)

Código (cpp) [Seleccionar]
int main(){
cout.precision(5);
double calculo = angulos_a_radianes(30);
calculo = seno(calculo);
cout << calculo << endl;
return 0;
}


espero que les sirva!
#25
Este es un articulo más para que vean la distroción económica de Venezuela y que no todo es malo ;) aquí se los dejo



CitarLa crisis cambiaria y el mercado negro han convertido a Venezuela en una distorsión económica ambulante. Ni siquiera ser el país con las reservas petroleras más grandes del mundo ha podido defendernos de este fenómeno. Venezuela es la cuna de lo absurdo, en donde tenemos (a precio oficial según el CENCOEX) el Big Mac más caro del mundo a 7 eurosy a su vez (a precio de mercado negro) tenemos el Big Mac más barato del planeta que el 21 de septiembre de 2015 vale 0,53 euros.

Para los no entendidos, según el gobierno el euro cuesta 8,3 bolívares (BSF), en Venezuela actualmente existe control cambiario, y según el mercado negro o mejor dicho y con mucha pena... Vale 812 BSF. Ojo, estoy seguro que para cuando leais esto ya va a costar más. Y s í, en Venezuela el medidor real del valor del dólar y el euro es una p**a página de internet. Este país es divertido.

¿Sorprendido? No he venido a darte clases de economía de la cual obviamente no tengo la más remota idea. Si fuese buen economista hace 2 años hubiese cambiado todos mis ahorros en dólares o euros para protegerme de esta crisis y no estaría viviendo en esta maravilla de país en donde para comprar papel de culo tienes que hacer una fila de más de 4 horas. Si nos vamos a banalidades y quieres estar a la moda y comprarte un Iphone 6s (ganando sueldo mínimo) tienes que trabajar sin gastar un solo bolívar durante casi 7 años.

Tampoco vine a darte clases de política y me importa una ***** si eres progobierno o eres de la oposición. Solamente quise ser un buen samaritano y apoyar el turismo en nuestro bello país, quizás con este artículo llegue al Ministerio de Turismo.

Quise hacerles un favor a todos los mochileros, turistas, abuelos y demostrarles las cosas maravillosas que pueden hacer en nuestra tierra con un solo billete. Si, con un solo billete.

Siempre quise hacer algo por mi país y que todos se sintieran orgullosos de mí, que Simón Díaz quedara en pañales con mi aporte. Así que me propuse pasar un mes viviendo de lujo en Venezuela con un billete de 100 euros.

Para tener un poco de orden en esta aventura vamos primero a listar las cosas divertidas que se me pasaron por la cabeza hacer:

- Alquilar una habitación bien ubicada durante 1 mes.

- Alquilar una habitación en un hotel 5 estrellas y pasar la noche con 2 damas de compañía de lujo.

- Comprar un billete de avión a la capital (yo vivo en Maracaibo, Zulia).

- Alquilar durante un día un coche descapotable para dar vueltas por la ciudad y pagar la gasolina.

- Comprar 238 cervezas sin ninguna razón productiva alguna.

- Divertirme con cocaína y 21 gramos de marihuana.

- Pagarles el tanque de gasolina a todas las personas que viven en mi edificio ya que soy una buena persona.

- Cenar en 5 de los mejores restaurantes de la ciudad.

- Para contrarrestar el estrés de vivir en Venezuela, ir a recibir masajes exóticos y acupuntura en el centro de masajes más asiático que vea en mi ciudad. Digo lo de asiático ya que tengo un fetiche con las cosas provenientes de Asia.

Articulo completo: http://www.vice.com/es/read/vive-en-venezuela-de-p**a-madre-con-100-euros-100?utm_source=vicefbes
#26
Vi esto por ahí una infografía para los que le gusta python 3... no les enseñará a programar, pero si a aclrar detalles a los que saben

#27
Electrónica / Datasheet de issc 1681s
5 Septiembre 2015, 21:27 PM
Hola!

Vengo buscando el Datasheet de este dispositivo pero no lo encuentro...

es este http://www.issc.com.tw/products/data/contentf8d4.html?id=65

el asunto es que solo consigo un lector optico de cd o algo similar... quien me ayuda?

en este caso ncesito la documentacion unicamente del integrado y se ve así (solo el integrado)

#28
Hola!

Esta vez vengo tratando de recordar algo...

es un juego de principios de los 2000, si no me equivoco de estrategia, el juego como tal no era caracteristicamente bueno, pero sus cinematicas (videos entre juego) eran muy comicas

las cinematicas casi siempre son unos sujetos tipo operaciones especiales de blanco, en situaciones militares, o espias... describo un par

-un sujeto tipo operaciones especiales viendo por binoculares en una silla playera en la cima de una montaña nevada, espiando un campamento, algo que pasa allí es que toma cafe de una taza característicamente grande (juego con perspectiva forzada)

-un espia entra a una represa a poner una bomba, super especializado asesinando a todo el mundo, el poner la bomba, se queda atrapado en el cuarto con ella hasta que explota...


se que no suenen graciosos, pero soy malo describiendo XD
#29
Como llevamos tiempo discutiendo estos temas por aquí, se que seguro les gusta, tiene subs en español, si no les salen activenlos :P

[youtube=640,360]https://www.youtube.com/watch?t=196&v=8nHBGFKLHZQ[/youtube]
#30
Foro Libre / Historia de ing Social
3 Julio 2015, 06:28 AM
Dejo una historia muy agradable que vi


Ingeniería Social en un Banco (parte 1)
A pedido de mi ahijado, continuo con otra anecdota de Ingeniería Social pero esta vez en un banco.

Durante un test de intrusion a un cliente, en particular un Banco, se nos solicito realizar diferentes pruebas de Ingeniería Social. Una de ellas, consistia en ingresar fisicamente al edificio central y tratar de llegar hasta las oficinas del Gerente.

Antes de diseñar el ataque, decidi verificar como eran los controles del lugar visitando al Jefe de Seguridad de la Información, con la excusa de mostrarle el avance del test de intrusion externo e interno que estábamos llevando a cabo. Podia haber elegido al Jefe de Tecnologia para mostrarle algún nuevo producto, al de RRHH para mostrarle un plan de capacitación para el personal...cualquier excusa y cualquier contacto dentro del edificio hubiera servido.

Al llegar al edificio, a las 8 am en punto, me encuentro con personal de seguridad fuertemente armado en la puerta que me detiene, y me redirige al edificio vecino en busca de una acreditación. Al ir al edificio vecino, me encuentro con que la entrada no era muy diferente al anterior, dos hombres armados me abren una puerta de vidrio, detrás de la cual había un pequeño mostrador con un señor registrando a los visitantes. Muy amablemente, le comente a este ultimo que venia a visitar al Jefe de Seguridad de la Informacion, y que tenia una reunion con el.   

El señor, me pidio mi identificacion y me dio una tarjeta de acceso.   Mientras estaba esperando, observe un detalle no menor, el hombre aun tenia puesto el abrigo, es decir que acaba de ingresar a su puesto de trabajo.

Con mi tarjeta en la mano, me dirigi al edificio original, al que debía ir, y al tratar de entrar, la misma persona de seguridad que al principio no me dejo entrar, me volvió a frenar, tomo mi tarjeta, abrió la puerta con ella y llamo a otra persona de seguridad que me acompaño en el ascensor hasta las oficinas.   

No puedo obviar contarles que al salir del ascensor no había ninguna oficina abierta, todas estaban cerradas con puertas y controles de acceso biometricos. En el pasillo solo podían verse algunas plantas y algunas impresoras de red, esas multifunción grandotas. Otro detalle importante, es que apenas se sale del ascensor, hay un cartel indicando que oficinas se encuentran en el piso, cuales a la derecha y cuales a la izquierda. A su vez, también observe las puertas de las salidas de emergencia, vecinas al ascensor, estaban abiertas (quizás porque muchos las usan para ir a fumar en esos lugares).

Finalmente, ingrese a la oficina del Jefe de Seguridad y me reuni con el. Mientras conversaba, note sobre su escritorio que tenia regalos de un proveedor, por lo que al salir investigue que relación tenia el Banco con esta empresa de servicios, y descubrí algo maravilloso: La empresa de servicios brinda outsourcing de Seguridad desde hace casi 4 años con el Banco.

Entonces, ahora si. A planificar el ataque.

Primero seleccionar quien seria el Ingeniero Social, para este caso donde son tantos guardias armados, la mejor opción fue elegir a una mujer... Converse con una de mis consultoras y la asesore sobre cada uno de los controles y como evadirlos:

Primero y principal, el personal de seguridad del edificio 2, entra a trabajar a las 8 am. . Pero que sucede si tenemos que entrar antes de ese horario?  Así que le pedi que se presente antes del horario, a las 7:30 am.   

Nuestra consultora se acerco y le indico a las personas armadas que debía ver al Jefe de Seguridad. El guardia pregunto de donde venia, para lo cual, la consultora de mi equipo saco una tarjeta impresa por nosotros el dia anterior, donde se podia leer su nombre y supuesto cargo, junto a los logos del proveedor que habíamos detectado...

Como el guardia de seguridad vio el logo conocido, le dijo:

"Mire, no la podemos registrar porque aun no llega mi compañero, pero igualmente pase por aquí..."

y abriendo la puerta la dejo entrar en el ascensor, donde el otro guardia esperaba. Este ultimo, la llevo hasta el piso del Jefe de Seguridad, y cuando estaba por bajar, nuestra consultora le dijo:

"...no se preocupe buen hombre, conozco el camino, vengo seguido...yo les golpeo la puerta."

a lo que el guardia respondió sonriendo y permitiendole bajar del ascensor (definitivamente, fue una buena idea elegir una mujer para esta tarea).

Nuestra consultora primero recorrió el piso observando que había en cada impresora de red como le había indicado, y con su teléfono celular (una blackberry, tomo fotos de algunos documentos y otros los guardo en su cartera), obviamente se encontró con algunos documentos "poco importantes" : el mapa de red, el estándar de seguridad de los servidores Unix, etc etc...

Luego utilizo las puertas de las salidas de emergencia para moverse entre pisos, ya que como era de esperar, estaban abiertas...y así llego al piso indicado por un cartel como: "Oficinas del Directorio", como creyó que era un buen lugar para quedarse, se quedo.

Su rol ahora, debía cambiar, por lo cual le indique que cuando hable con la secretaria del Gerente, se presente como personal de soporte del proveedor de servicios y que debíamos revisar su estación de trabajo (para ello presento otra tarjeta impresa por su nombre donde solo cambiaba el puesto en relación a la anterior). Nuestra consultora siguió al pie de la letra las indicaciones y la respuesta de la secretaria fue encantadora, le dejo su PC para que tome los datos necesarios, le permitió colocar un pendrive e instalar un programita "para hacer mas rápida la maquina" y finalmente, le ofreció abrirle la puerta de la oficina del Gerente y acceder a la PC con la clave del director que ella misma conocía, para solucionarle los problemas al jefe...

Podemos decir en este preciso punto: GameOver

Lo curioso de este caso, es que los controles era fuertes, pero se debilitaron ante una supuesta reunion fuera de horario, una tarjeta de presentación falsa (bueno, dos) y la amabilidad del Ingeniero Social. Tanto las armas de fuego, como las personas de seguridad, o hasta el mismo control biometrico dejaron de ser efectivos debido a la falta de concientización del personal.

fuente:https://holename.wordpress.com/2011/01/22/ingenieria-social-en-un-banco-parte-1/
#31
[youtube=640,360]https://www.youtube.com/watch?v=Tdj915k5gKg[/youtube]

En Txchnologist, Reducing E-Waste: No Longer Mission Impossible?,

CitarUn grupo de investigadores de la Universidad de Illinois han desarrollado electrónica autodestruible utilizando circuitos de magnesio sobre una lámina de polímero. El circuito se reviste de cera —como la utilizada para fabricar velas— que contiene partículas microscópicas de ácido metanosulfónico. Cuando la temperatura se eleva hasta los 55°, más o menos, la cera se funde liberando el ácido sobre los circuitos, corroyéndolos. Los componentes se destruyen totalmente en cuestión de minutos.
La secuencia de destrucción se puede controlar ajustando y variando por zonas el grosor de la capa de cera. Y por si no fuera suficiente el proceso de autodestrucción se puede activar remotamente incorporando un mecanismo que se activa con una señal de radio o de móvil, un sensor de movimiento o recurriendo a cualquier otro detonante, que al iniciarse calienta un hilo metálico que recorre el interior de la capa de cera, comenzando el proceso de destrucción.

La secuencia de destrucción se puede controlar ajustando y variando por zonas el grosor de la capa de cera. Y por si no fuera suficiente el proceso de autodestrucción se puede activar remotamente incorporando un mecanismo que se activa con una señal de radio o de móvil, un sensor de movimiento o recurriendo a cualquier otro detonante, que al iniciarse calienta un hilo metálico que recorre el interior de la capa de cera, comenzando el proceso de destrucción.


leer más

Fuente: Microsiervos
#32
Foro Libre / Sobre idiomas en españa
3 Junio 2015, 01:35 AM
Viendo una discusión veo algo... en españa se hablan unos cuantos idiomas, yo vengo de un mundo "monolingual" donde raramente se escucha algo diferente a español (latino)

entonces divagando me pregunto, cuales son los idiomas en españa? a que se parecen? den un ejemplo... cuantos lo hablan nativamente?... alguno aprendió español mucho despues de su idioma natal?

espero que no produzcan lios politicos, porque allá parecen estar de la mano el idioma y la politica... solo es curiosidad, saludos!
#33
Dejo y claramente recomiendo ver esta pelicula...


relata los hechos del 27 de febrero de 1989, llamado "el Caracazo", uno de los sucesos más violentos de los ultimos 50 años de historia, que por lo general lo extranjeros no conocen y los venezolanos parecen olvidar... aquí se ve en general todo, y en el articulo de wiki se ve en detalle el suceso... hacia esta dirección va ahorita el país condenado por su falta de memoria

[youtube=640,360]https://www.youtube.com/watch?v=zeS857PQzGM[/youtube]

por cosas de contexto, explico varios detalles...

Policia metropolitana son los de azul, exctualmente desaparecida, en ese momento dirigida por Ledezma (si, el alcalde mayor que ahorita está preso)

Los de negro PTJ policía técnica judicial, es la mezcla entre la inteligencia policial, los equipos de operaciones especiales y la policía politica, actualmente CICPC

los militares son el ejercito nacional (no la guardia nacional) es la infantería de combate armado

la universidad es la UCV (Universidad Central de Venezuela), ahí está (y siempre ha estado) prohibida la entradas de las fuerzas de la ley, policía y milicia al igual que en el resto de las universidades autonomas del país, es mantenida economicamente por el país, pero el estado no tiene poder sobre ella, no puede levantar sentencia, investigarla o cerrarla

El presidente Carlos Andres Pérez en su segundo mandato, justo en los días de las reformas económicas, partido político Acción Democrática, el único partido opositor en ese momento COPEI entre los cuales se intercalaban los gobiernos

esto fue únicamente en la zona de caracas hasta donde se extienden la ciudad que la rodea... el 23 de enero es una zona popular de recursos bajos con grandes edificios llamados "Bloques" y "el barrio" son las zonas pobres y marginales del país (el 23 es parte de una)

al respecto solo digo... anhelo aquellos tiempos que si saqueabas un abasto o un supermercado tenian leche acaparada... ahorita simplemente no hay
#34
Escribo esto simplemente para decir eso... busquen en youtube videos sobre gente viviendo allá, no otakus viviendo el sueño, no importa que les den una bofetada, será perfecta!...

aquí un ejemplo

una semana en la vida de un asalariado promedio... vean abajo las horas trabajadas y de sueño
[youtube=640,360]https://www.youtube.com/watch?v=po8IPh64rVM[/youtube]
#35
hola! siempre había pensado que Java sería mucho más lento que C... pero estuve haciendo pruebas y rebate mi teoría a un punto despreciable... no se si es error mio o que, pero compilo el código que pondré a continuación en Java y en C y el tiempo es MUY similar (diferencia menos de 10%)

antes que nada quisiera dejar claro que no se Java... hice la conversión como pude...

quisiera que uds opinaran, me dijeran si mi método de evaluación está mal o si solo eran mis creencias...

los pongo a competir en algo donde pueden pelear con características tan similares como sea posible... calculando n números primos... y haciendo ambos códigos tan idénticos como es posible... dejo a continuación mis pruebas

a 1.000.000 de primos generados y almacenados en el array, C tarda en promedio 23 segundos y Java 25...

El codigo en C
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int es_primo(long numero);

int main(int argc, char** argv) {
    clock_t startTime = clock();
    int cantidad = 1000000;
    int encontrados = 0;
    long numero = 1;
    long primos[cantidad];
    while(encontrados < cantidad){
        numero++;
        if(es_primo(numero)){
            primos[encontrados++] = numero;
        }
    }
    clock_t endTime = clock();
    /*
    int i;
    for(i=0;i<cantidad; i++){
        printf("%d-",primos[i]);
    }
    */
    printf("pasaron %d millisegundos",(endTime-startTime)/1000);


    return (EXIT_SUCCESS);
}
int es_primo(long numero){
    long control_for = 0;
    if(numero <= 3) return 1;
    if(numero % 2 == 0 ||numero % 3 == 0) return 0;
    for(control_for = 5; numero > control_for * control_for; control_for+=6){
        if(numero % control_for == 0 || numero % (control_for + 2)==0) return 0;
    }
    return 1;
    }


el codigo en java
Código (java) [Seleccionar]
package numerosprimos;

import java.util.*;
import java.lang.*;
import java.io.*;

public class NumerosPrimos {

    public static void main (String[] args){

        long startTime = System.currentTimeMillis();
        int cantidad = 1000000;
        int encontrados = 0;
        long numero = 1;
        long[] primos = new long[cantidad];
        while(encontrados < cantidad){
            numero++;
            if(es_primo(numero)){
                primos[encontrados++] = numero;
            }

        }
        long endTime = System.currentTimeMillis();
        //System.out.println(Arrays.toString(primos));
        System.out.println("pasaron: " + (endTime - startTime) + " millisegundos");

    }
    public static boolean es_primo(long numero){
        long control_for = 0;
        if(numero <= 3) return true;
        if(numero % 2 == 0 ||numero % 3 == 0) return false;
        for(control_for = 5; numero > control_for * control_for; control_for+=6){
            if(numero % control_for == 0 || numero % (control_for + 2)==0) return false;
        }
        return true;
    }
   
}
#36
Scripting / [Python] Espiral de Ulam
19 Enero 2015, 07:15 AM
Los que me conocen por aquí saben que e gusta jugar con las mates... esta vez le toco el turno a la espiral de Ulam (articulo de la wiki)

me dio curiosidad su representación y quería jugar un poco con gráficos en Python... entonces esto quedó...

primero lo intenté con kivy... a 200 capas consumió 4gb de ram y congeló el pc... entonces decidí probar pygame, mucho más rápido y eficiente para esto...

a 100 capas es rápido... sobre eso vayan con cuidado... tiene una cantidad de segundos marcados para detener el calculo (cuando estaba probando con kivy era eso o mi pc)

lo punedo hacer sin problemas a 500 capas (el tamaño es limitante), pero le calculo es bastante rapido...

el algoritmo de recorrido lo basé en

suponiendo direcciones del 1 al 4 como en el codigo, sigue un patron
1,1,2,2,3,3,3,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,3,0,0,0,0,0...
cada 2 direccionas crece la repetición... "control" maneja esa cantidad de repeticiones, menor maneja que sean 2 direcciones por repeticion, mayor maneja la cantidad de capas en general

ya despues de mucho decir, aquí el código
Código (python) [Seleccionar]
import sys
import pygame
import pygame.gfxdraw
import time
pygame.init()

#globales
tamano = 0 #tamano del punto, 0 = 1px, 1=3px... etc
separacion = 1 #el desplazamiento entre punto y punto, 1px
niveles = 100 #cuantas capas tendra la espiral
tiempo_maximo = 10 #si no termina de dibujar en este tiempo detiene el trabajo... switch de seguridad si tienen un pc poco potente
PRIMO = (255,255,255) #color si es primo
NO_PRIMO = (64,64,64) #color si no es primo
pantalla = {"w":niveles*2+100,"h":niveles*2+100} #tamano de la pantalla... suficiente para puntos de 1px + 100px de margen

window = pygame.display.set_mode((pantalla["w"], pantalla["h"]))




def dibujar():
posicion = {"x":pantalla["w"]/2, "y":pantalla["h"]/2} #cursor en centro de pantalla
direccion = 1 #0 derecha, 1 arriba, 2 izquierda, 3 abajo
control = 2 #variable de control
cantidad = 1 #cantidad de puntos dibujados
dibCir(posicion, PRIMO) #punto central... direccion va por "referencia"

inicio = time.clock() + tiempo_maximo #calcular tiempo para finalizar
for i in range(2):#dibuja los primeros 2 puntos
mover_dibujar(direccion, posicion, separacion, PRIMO)
direccion += 1
cantidad += 1
puntos_totales = (niveles*2 + 1)**2 - 1 #cantidad de puntos a dibujar

detener = False

for mayor in range(niveles*2):
for menor in range(2):
for punto in range(control):
if esPrimo(cantidad): #color a dibujar
mover_dibujar(direccion, posicion, separacion, PRIMO)
else:
mover_dibujar(direccion, posicion, separacion)

if time.clock() > inicio: detener=True #si se pasa del tiempo
if (cantidad == puntos_totales): detener=True #si se dibujaron los puntos necesarios
cantidad +=1
if(detener): break
direccion = (direccion+1)%4 #cambia la direccion del recorrido
if(detener): break
control += 1
if(detener): break
pygame.display.flip() #dibuja la capa calculada
print cantidad #imprime los puntos dibujados en la consola
return 0


def mover_dibujar(direccion, posicion, separacion, color=NO_PRIMO): #dirije el recorrido y dibuja
if direccion == 0: posicion["x"] -= separacion
if direccion == 1: posicion["y"] += separacion
if direccion == 2: posicion["x"] += separacion
if direccion == 3: posicion["y"] -= separacion
dibCir(posicion, color)

def dibCir(posicion, color ,r=tamano):
pygame.gfxdraw.filled_circle(window, posicion["x"],posicion["y"], r, color) #dibuja el circulo
#pygame.gfxdraw.aacircle(window, posicion["x"],posicion["y"], r, color) #lo suaviza mas


def esPrimo(n): #calcula si es primo
  if n <= 3:
      return n >= 2
  if n % 2 == 0 or n % 3 == 0:       return False
  for i in range(5, int(n ** 0.5) + 1, 6):
      if n % i == 0 or n % (i + 2) == 0:
          return False
  return True



dibujar() #ejecuta todo


#input handling (somewhat boilerplate code):

while True:  #copypaste para mentener abierta la ventana
  time.sleep( 1 ) #sin esto se consume todos los recursos
  for event in pygame.event.get():
     if event.type == pygame.QUIT:
         sys.exit(0)
     #else:
     #   print event

#37
A pesar de que Green Bank está a unas cuatro horas en coche desde Washington DC para hablar por teléfono allí tienes que ir hasta una cabina que hay cerca de la carretera.

La zona se denomina National Radio Quiet Zone y es en términos electromagnéticos el lugar más silencioso de la Tierra». El motivo son unas sofisticadas instalaciones de radiostelescopios.

En algunos lugares de esa zona ni tan siquiera se permite la circulación con coches de gasolina que usan bujías y que por tanto emiten radiación electromagnética. Sólo vehículos diésel.

Precisamente ese vacío electromagnético ha convertido a Green Bank un atractivo para la gente que cree sufrir hipersensibilidad electromagnética, es decir, personas que consideran que estar cerca de aparatos eléctricos les pone enfermos y les causa síntomas tales como dolores de cabeza, nauseas o picores, a pesar de que no hay pruebas médicas concluyentes al respecto.

Fuente: http://www.microsiervos.com/archivo/mundoreal/ciudad-prohibido-uso-moviles-y-wi-fi.html
#38
Scripting / algortimo RSA en phyton
6 Enero 2015, 00:41 AM
Ya que se estaba discutiendo el asunto de algoritmos asimetricos decidí esta vez hacer un codigo y epxlicarlo un poco

Para los que no sepan RSA es un algoritmo de cifrado asimetrico (el que usa http para compartir las contraseñas) el cual se basa en la creacion de 2 claves, una privada y otra publica, la llave publica cifra, la privada descifra...

esto es creado por una serie de problemas:
1. la dificultad de manejar multiples contraseñas para comunicarse con mutiples sujetos
2. la complicacion de compartir contraseñas sobre internet sin que un hombre en el medio se entere

con este metodo uno comparte su llave publica para que se comuniquen con uno

la llave publica solo cifra, para descifrar se necesita la llave privada

si quieren más detalles todo está en wikipedia

para hacer el proceso se necesitan 2 factores "p" y "q" ambos numeros primos diferentes y de una cantidad de bites similar por seguridad (actualmente se usan numeros de unas 150 cifras de largo)

de aquí sacamos 2 factores más
"n" que es la multiplicacion de "p" y "q"
"phi" que será el resultado de la multiplicacion de la funcion phi de "p" y "q", que en resumen al ser ambos primos serán (p-1) y (q-1)

de todo esto necesitamos calcular el factor "e" es un factor tal que 1 < e < phi

con "e" procedemos a calcular "d" siendo este un factor que satisfaga la ecuacion
(d*e)%phi == 1

"e" es el factor que armará la clave publica y "d" la clave privada


el cifrado se hace bajo la siguiente formula


y el descifrado con la siguiente


esto funciona porque (para quien sepa matematica)


bueno, sin dar más vueltas aquí el codigo con verificaciones

Código (python) [Seleccionar]
def bidimArray(a,b): #crear array bidimensional
return [[0 for x in range(b)] for x in range(a)]

def esPrimo(n): #calcula si es primo
   if n <= 3:
       return n >= 2
   if n % 2 == 0 or n % 3 == 0:
       return False
   for i in range(5, int(n ** 0.5) + 1, 6):
       if n % i == 0 or n % (i + 2) == 0:
           return False
   return True

def nvoPrimo(n): # conseguir el n-avo primo
total = 0
contador = 1
while total < n:
contador+=1
if esPrimo(contador):
total+=1
return contador

global_factores = [] #buffer de factores

def obtenerFactores(numero): #obtiene los factores de un numero dado
for i in global_factores: #si esta en buffer los saca de ahi
if i[0] == numero:
return i[1]
factores = []
buff = 1
while buff/2 < numero:
buff+=1
if numero % buff == 0:
factores.append(buff)
#print global_factores #debug
global_factores.append([numero,factores]) #los mete en el buffer
return factores

def esCoprimo(a,b): #son coprimos?
f_a = obtenerFactores(a)
f_b = obtenerFactores(b)
comunes = len(frozenset(f_a).intersection(f_b)) #intercepta
#print comunes #debug
if comunes > 0: return False #si hay coincidencia, no son coprimos
return True

def calcular_e(phi,n, inicio):
buff = 0 + inicio
e = 0
if buff < 1: buff = 1
while buff < phi:
buff+=1
#print "{} y {}".format(buff, n) #debug
if esCoprimo(buff, n) and esCoprimo(buff, phi) :
e = buff
break
return e


def calcular_d(e,phi,n):
d = 0
buff = 0
for contador in range(n):
buff = (contador * e)%phi
#print "({} * {})%{} -> {}".format(contador,e,phi,buff) #debug
if buff == 1:
d = contador
break
return d

def cifrado(m,e,n):
return pow(m,e,n) # m^e%n

def descifrado(c,d,n):
return pow(c,d,n) # c^d%n

def aplicarRSA(p,q,m):
if not esPrimo(p):
print "p debe ser primo"
exit()

if not esPrimo(q):
print "q debe ser primo"
exit()


n = p * q
if m >= n:
print "mensaje muy grande, p y q deben ser mayores"
print "maximo mensaje permitido {}".format(n-1)
exit()
phi = (p-1)*(q-1)
e = calcular_e(phi,n,0)
d = calcular_d(e,phi,n)
c = 0
print "p = {} y q = {}".format(p,q)
print "n = {} y phi(n) = {}".format(n,phi)
print "Llave publica es ({},{})".format(e,n)
print "Llave privada es ({},{})".format(d,n)
c = cifrado(m,e,n)
print "cifrado de {} resulta {}".format(m,c)
m = descifrado(c,d,n)
print "descifrado de {} resulta {}".format(c,m)

aplicarRSA(nvoPrimo(20),nvoPrimo(32),100)


explico un poco las funciones

Código (python) [Seleccionar]
bidimArray(a,b)
simplemente genera un array bidimensional de el largo indicado

Código (python) [Seleccionar]
esPrimo(n)
confirma que un numero pasado sea primo bajo un metodo rapido

Código (python) [Seleccionar]
nvoPrimo(n)
genera numeros primos, genera el primo de la n-ava posicion

Código (python) [Seleccionar]
obtenerFactores(numero)
saca los multiplos de un numero

Código (python) [Seleccionar]
esCoprimo(a,b)
confirma que los numeros sean coprimos (que no tengan factores en común)

las otras son autoexplicativas

al final
Código (python) [Seleccionar]
aplicarRSA(nvoPrimo(20),nvoPrimo(32),100)
aplica RSA con el 20-avo primo, y 32-avo primo como p y q, y el mensaje es 100... pueden colocar lo que quieran y usar primos directamente...

si... el codigo solo lo hace con calculos numericos y puede tardar algunos segundos en finalizar si los nvo primos están sobre 1000, el mensaje debe ser menor a "n"

si cualquier duda o correción pueden publicarla aquí
#39
este easter egg en este juego un poco loco y complejo... pero bueh... ahi tienen

[youtube=640,360]https://www.youtube.com/watch?v=2PRw8CF9DR8[/youtube]
#40
Scripting / Problema de Monthy Hall
25 Diciembre 2014, 08:35 AM
Este es un famoso problema estadístico que la gente ha discutido mucho debido a lo pico lógico que parece, así que echaré mano al asunto para demostrar su punto y veracidad haciendo uso de python

El problema va así



En un programa de televisión te hacen escoger entre 3 puertas, en una hay un carro deportivo y en 2 hay cabras, escoges una puerta, el presentador abre otra puerta mostrandote una de las cabras, el te pregunta "deseas cambiar tu puerta?".... aquí viene el problema...

Mucha gente dice "nah da igual cambiar puerta, el chance en este punto es 50/50", sin embargo la estadística dice algo diferente... dice que "originalmente tenias 1/3 de probabilidad de ganar, y ahora sigues solo  con 1/3 , si cambias la puerta tienes 2/3 debido que la probabilidad de victoria colapsó en la otra puerta"...

aquí entra la lógica y dice "eso no tiene sentido... son 2 puertas así que debe ser 50/50...

Ahora quien está en lo correcto? Por su puesto que la estadística., si cambias tienes el doble de chance de ganar

Por qué? Imaginemos 3 universos donde escoges cada puerta diferente... en todos seguimos el mismo procedimiento, te muestran la cabra, decides no cambiar.... entonces en dos pierdes (los que no escogiste el carro) y uno ganas.... pero si decidimos cambiar, en dos ganas(los que no escogiste el carro) y uno pierdes...

Si schrodinger hubiera conocido esto seguro lo hubiera  escogido, en lugar de un gato hipotético... cuando la realidad colapsa, al igual que la física cuántica, quedas en uno de 3 universos probables...

Muchos aún dirán...  "si ya pasamos el hecho de la puerta abierta y nos fijamos en el ahora, sigue siendo 50/50", pero el problema es que era una ecuación donde se agregó informacion, así que el pasado es importante...

Si aun no me creen y consideran que es ilógico y sin sentido, me remito al ejemplo.... hice un programa de python que 'juega' a esto sin hacer trampa y muestra como la realidad se define más allá de lo simplemente lógico  :)

Código (python) [Seleccionar]
from random import randint #yeap vamos a generar int random

def colocarPremio():
 puertas = [0,0,0] #establecemos 3 puertas
 puertas[randint(0,2)] = 1 #colocamos premio en una
 return puertas
 
def seleccionJugador():
 return randint(0,2) #el jugador escoge una puerta
 
def mostrarPuerta(jugador, puertas):
 presentador = 0 #el presentador entra y saluda a todos
 for i in range(3):
   if puertas[i] == 0 and not i == jugador: #el presentador escoge una puerta que no sea la del jugador y no tenga premio
     presentador = i #y se queda con esa puerta
     break #porque no tiene que seguir buscando
 return presentador

def cambiarPuerta(presentador, jugador):
 for i in range(3):
   if not i == presentador and not i == jugador: #el jugador escoge la otra puerta cerrada
     jugador = i #y se queda con esa
     break #porque no tiene que seguir buscando
 return jugador

def juego(cambiar):
 puertas = colocarPremio() #ponemos las puertas y el premio
 jugador = seleccionJugador() #el jugador escoge
 presentador = mostrarPuerta(jugador, puertas) #el presentador muestra
 if cambiar: jugador = cambiarPuerta(presentador, jugador) #debo cambiar?
 return puertas[jugador] #tendra premio?


jugadas = 100 #cuantas veces te lo tengo que repetir para convencerte?
cambio = True #cambiar o no cambiar, he alli el dilema

contador = 0 #contador victorias
for i in range(jugadas): contador += juego(cambio) #el momento de la verdad... juguemos

if not cambio: cambio = 'no ' #formateo cadena bonita
else:  cambio = '' #y por si...

print 'en {} jugadas hubo {} victorias si el jugador {}cambiaba de puerta'.format(jugadas,contador,cambio) #resultado


Para aquellos curiosos sin python instalado, pueden ejecutar online en paginas como esta
#41
Los que me conocen por aquí, saben que me gusta discutir por tonterias como estas(y que me gusta hacer posts largos)... hace poco estaba hablando sobre un tema con mDrinky y discutíamos si el código compilado de if else es el mismo que switch o si switch era más rápido...

aquí mi prueba de concepto... switch es más rápido... muy ligeramente más rápido

leo un archivo (pi2.txt) y repito 100 veces con 1.000.000 de valores leidos, calculo promedio y repito por el otro metodo
Código (cpp) [Seleccionar]
#include <iostream>
#include <fstream>
#include <ctime>
using namespace std;

int ifelse_op(int largo, char memoria[]);
int switch_op(int largo, char memoria[]);


int main(){
int a = 0;//control de ciclos
int ciclos = 100;//cantidad de muestras
/*tiempos*/
float promedio = 0;
float max = 0;
float min = (unsigned int)-1;//maximo u_int
float buff = 0;
/*********/

/*pasamos el archivo a ram, cuidado con archios grandes*/
ifstream archivo ("pi2.txt",ios::ate);//abrimos con apuntador al final
int largo =(int) archivo.tellg();//calculamos el largo por el apuntador

  archivo.seekg (0, ios::beg);//colocamos apuntador en el inicio
  char memoria[largo];//char-s tan largo como archivo
    archivo.read (memoria, largo);//botamos archivo completo a memoria
    archivo.close();//listo con el archivo

/*primer metodo if-else*/
for(a=0;a<ciclos;a++){
buff = ifelse_op(largo,memoria);
promedio += buff;//suma para promedio
max = max>buff?max:buff;//si maximo es menor que buff max=buff
min = min<buff?min:buff;//si minimo es mayor que buff min=buff
}
promedio/=ciclos;//promedia
cout << "promedio if-else: " << promedio/CLOCKS_PER_SEC << "s" << endl;
cout << "min if-else:" << min/CLOCKS_PER_SEC << "s - ";
cout << "max if-else:" << max/CLOCKS_PER_SEC << "s" <<endl;

/*se reinician las variables*/
promedio = 0;
max = 0;
min = (unsigned int)-1;
/****************************/
/*segundo metodo switch*/
for(a=0;a<ciclos;a++){
buff = switch_op(largo,memoria);
promedio += buff;
max = max>buff?max:buff;
min = min<buff?min:buff;
}
promedio/=ciclos;
cout << "promedio if-else: " << promedio/CLOCKS_PER_SEC << "s" << endl;
cout << "min if-else:" << min/CLOCKS_PER_SEC << "s - ";
cout << "max if-else:" << max/CLOCKS_PER_SEC << "s" <<endl;
return 0;
}

/*****************************************/
int ifelse_op(int largo, char memoria[]){
clock_t inicio_reloj = clock();//tiempo inicial
int control;//variable para control
int i;//control de ciclos
for(i=0;i<largo;i++){
//char valor = memoria[i];//trampa a mi favor mwahaha!!
if(memoria[i]=='1') control = 1;
else if(memoria[i]=='2')control = 2;
else if(memoria[i]=='3')control = 3;
else if(memoria[i]=='4')control = 4;
else if(memoria[i]=='5')control = 5;
else if(memoria[i]=='6')control = 6;
else if(memoria[i]=='7')control = 7;
else if(memoria[i]=='8')control = 8;
else if(memoria[i]=='9')control = 9;
else if(memoria[i]=='0')control = 0;
else control = 0;
}
return clock() - inicio_reloj;//retorna tiempo
}

int switch_op(int largo, char memoria[]){
clock_t inicio_reloj = clock();//tiempo inicial
int control;//variable para control
int i;//control de ciclos
for(i=0;i<largo;i++){
//char valor = memoria[i];
switch (memoria[i]){
case '1':control =  1;
case '2':control =  2;
case '3':control =  3;
case '4':control =  4;
case '5':control =  5;
case '6':control =  6;
case '7':control =  7;
case '8':control =  8;
case '9':control =  9;
case '0':control =  0;
default: control =  0;
}
}
return clock() - inicio_reloj;//retorna tiempo
}



con mi perolita los resultados son
promedio if-else: 0.0238996s
min if-else:0.023581s - max if-else:0.024229s
promedio if-else: 0.0180653s
min if-else:0.018014s - max if-else:0.018394s


con ligeras variaciones menores a +-0.0007 dando como resultado un switch 8% más rápido que el if :P

si alguien cree que mi metodología o código esta mal o me equivoqué avisen

el archivo pi2.txt es un archivo que tengo por ahí tiempo y lo uso para probar cosas, es una generacion de pi a 1.000.000 de decimales, sin cabeceras, ni texto y medio mocho... son casi 1.1mb, si lo quieren, aqui está

https://mega.co.nz/#!6xAmGIaA!FtCMe4bM5NVm-gcO2zW-myUWlBdLI3TqlweAhKaQ-0I


PD: codigo corregido...
#42
Estaba buscando como resolver unos problemas y aprendiendo python (ya que puedo programar en android con QPython) asi que decidi hacer un metodo para generar tableros validos de sudoku, se genera un tablero original y con desplazamientos se lleva a la posición generada segun la semilla... la semilla genera (teoricamente) 60466175 tableros unicos

Si cualquier duda avisen

Código (python) [Seleccionar]
import pprint

#crea array bidimensiona
def create_matrix(m, n): return [[0]*n for _ in xrange(m)]

#gira la matriz ccw
def rotar_matrix(matrix):
 matrix_auxiliar = create_matrix(9,9)
 for x in range(9):
   for y in range(9):
     matrix_auxiliar[y][x] = matrix[x][y]
 return matrix_auxiliar



def generar_tablero(semilla):
 #se genera un sudoku base sobre el que aplicar transformaciones
 basesudoku = create_matrix(9,9)
 for y in range(9):
   for x in range(9):
     basesudoku[y][x]= (x+(y%3)*3+(y/3))%9+1
 #declaracion e inicializacion de variables
 #variables de transformacion
 #desplazamiento del 0 al 8
 desplazamiento = 0
 #rotacion del 0 al 3
 rotacion = 0
 #combinacion cada elemento del 0 al 5
 combinacion = [0,0,0,0,0,0,0,0]

 #numero generatriz de 0 60466175
 desplazamiento = semilla%9
 semilla /=9
 rotacion = semilla%4
 semilla /=4
 for i in range(8):
   combinacion[i] = semilla%6
   semilla /= 6

 #sudoku final
 sudoku = create_matrix(9,9)

 #auxiliar para copiar elementos
 auxiliar = create_matrix(3,9)

 #posibles combinaciones de 3 elementos
 combinatorias = create_matrix(6,3)
 combinatorias = [[0,1,2],[1,2,0],[2,0,1],[1,0,2],[0,2,1],[2,1,0]]

 #combinacion para cada elemento segun combinacion escogida
 combinador = create_matrix (8,3)
 for i in range(8):combinador[i] = combinatorias[combinacion[i]]

 #modificacion de matriz por desplazamiento lateral con desp
 for y in range(9):
   for x in range(9):
     sudoku[y][x] = basesudoku[y][(x+desplazamiento)%9]

 #mecla lineas de 3 en 3 segun combinacion
 for z in range(3):
   for copia in range(3): auxiliar[copia] = sudoku[z*3+copia]
   for y in range(3):
     sudoku[z*3+y] = auxiliar[combinador[z][y]]

 #se copia sudoku en auxiliar
 auxiliar = sudoku[:]

 #se mezclan los 3 renglones mayores
 for z in range(3):
   for y in range(3):
     sudoku[z*3+y] = auxiliar[combinador[3][z]*3+y]

 #se rota la matriz para aplicar conversiones en otro eje
 sudoku = rotar_matrix(sudoku)

 #se repite el proceso
 for z in range(3):
   for copia in range(3): auxiliar[copia] = sudoku[z*3+copia]
   for y in range(3):
     sudoku[z*3+y] = auxiliar[combinador[z+4][y]]

 auxiliar = sudoku[:]

 for z in range(3):
   for y in range(3):
     sudoku[z*3+y] = auxiliar[combinador[7][z]*3+y]

 #se endereza la matriz a su orientacion original
 for i in range(3): sudoku = rotar_matrix(sudoku)

 #se le da la orientacion indicada en rot
 for i in range(rotacion): sudoku = rotar_matrix(sudoku)
 return sudoku

pprint.pprint( generar_tablero(0) )





[Elektro]: Título corregido, ponía "odigo" :P
#43
renovando este tema, aclaro aquí las razones por lo que los temas serán modificados, bloqueados, movidos o eliminados

Aquí las reglas del foro en caso de dudas

1- Temas con Asuntos (Títulos) en mayúsculas podrán ser borrados (I.A.1.a.)
2- Temas con Asuntos que sean no descriptivos (como "ayuda", "urgente", etc)  podrán ser borrados o modificados (I.A.1.a.)
3- Ortografía y redacción muy malas podrán ser borrados (sin remordimiento) (I.A.1.a.)

4- Los links deben ser principalmente de carácter informativo, cualquiera que se considere spam, será modificado y bloqueado, o según el fin, eliminados directamente (modificación de la regla I.B.2.b.)
5- Prohibido publicar Email, el tema será modificado (II.A.1.c.)
6- Posts con textos en mayúsculas serán modificados o borrados depende de la gravedad (III.C.1.)

7- Temas que pertenezcan a otros sub-foros serán movidos (I.A.1.c.)
8- Publicar el mismo tema 2 o más veces en este u otro sub-foro será razón de eliminación (I.A.1.c.)
9- Múltiples respuestas seguidas al mismo tema desde el mismo usuario serán modificadas o eliminadas
10- Las respuestas deben mantener la coherencia dentro del tema, de no hacerlo podrán ser eliminados (I.A.2.a.)
11- Respuestas que revivan temas de más de 60 días sin actividad más que temas que realmente lo ameriten (I.A.2.a.)

12- Ataques o insultos a otros usuarios no serán tolerados, el tema puede ser bloqueado, el mensaje modificado o borrado, el asunto puede contraer penas mayores (III.C.3.)

13- El foro no promueve contenido no ético o ilegal, cualquier tema con relación está prohibido (I.A.1.a.)

De indicarse la violación, el usuario debe corregirla antes de su próxima respuesta, si no, acciones serán tomadas, de otra manera si no se ha hecho correción en los 2 días continuos podrán ser tomadas acciones

No se deben olvidar estos 2 temas
10 pasos para plantear una duda informática
FAQ : Como hacer preguntas "inteligentes"

En caso de desconocer el motivo del borrado de un mensaje, queda terminantemente prohibido volver a publicar el mismo mensaje, la forma de proceder será mandando un Mensaje Personal al moderador de ese subforo, en caso de no tenerlo, a cualquier Moderador Global, Coadmin o Admin. (III.C.1.a. segundo parrafo)
#45
Los ataques de CSRF (Cross-Site Request Forgery) son conocidos hace bastante tiempo. La idea de ellos es bastante sencilla, y el objetivo es conseguir que una víctima, que tiene una sesión con su cuenta en un sitio web, haga acciones involuntarias en esa sesión al abrir un enlace o cargar un contenido externo.

A día de hoy es una de las técnicas de hacking más utilizadas, y en el proyecto OWASP TOP TEN, que recoge los diez ataques más utilizadas en ataques a aplicaciones web y donde siguen reinando las técnicas de SQL Injection y el resto de inyecciones de código, ocupa el octavo lugar.


Leer Mas: http://www.elladodelmal.com/2014/09/un-fallo-de-csrf-en-twitter-para.html