<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-692521949805258698</id><updated>2024-10-24T12:05:33.734-07:00</updated><category term="oracle"/><category term="datos"/><category term="programacion"/><category term="2"/><category term="II"/><category term="base"/><category term="c"/><category term="clave"/><category term="conectar"/><category term="driver"/><category term="jbdc"/><category term="libreoffice"/><category term="linux"/><category term="sharp"/><category term="ubuntu"/><category term="wep"/><category term="#"/><category term="10"/><category term="8086"/><category term="Calendario"/><category term="abb"/><category term="amigo"/><category term="amplitud"/><category term="arbol"/><category term="assambler"/><category term="auto_increment"/><category term="autoincremental"/><category term="basico"/><category term="binario"/><category term="bisiesto"/><category term="bit"/><category term="blog"/><category term="bloqueo"/><category term="buscador"/><category term="c++"/><category term="campo"/><category term="claro"/><category term="codigo"/><category term="conexion"/><category term="contable"/><category term="cubo"/><category term="de"/><category term="defecto"/><category term="delay"/><category term="descarga"/><category term="doomsay"/><category term="ensamblador"/><category term="error"/><category term="estructuras"/><category term="facebook"/><category term="formato"/><category term="fuente"/><category term="funcion"/><category term="guia"/><category term="guia10"/><category term="guia6"/><category term="guia7"/><category term="hex"/><category term="hexa"/><category term="hexadecimal"/><category term="inalambrico"/><category term="indentacion"/><category term="informacion"/><category term="intel"/><category term="internet"/><category term="libre"/><category term="linea"/><category term="listener"/><category term="live"/><category term="mysql"/><category term="nodo"/><category term="ocurrencia"/><category term="office"/><category term="ora-12505"/><category term="oracledriver"/><category term="pagina"/><category term="perfil"/><category term="php"/><category term="pl"/><category term="pl/sql"/><category term="post"/><category term="recorrido"/><category term="refused"/><category term="router"/><category term="script"/><category term="simulador"/><category term="sintaxis"/><category term="sistema"/><category term="sleep"/><category term="sql"/><category term="string"/><category term="subsring"/><category term="timer"/><category term="turbonett"/><category term="visual"/><category term="wi-fi"/><category term="wifi"/><category term="xe"/><title type='text'>Lo intenté, la cagué, aprendí... Pero lo hice!</title><subtitle type='html'>Porque no hay mayor satisfacción que hacerlo uno mismo!</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>26</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-3340430874043420392</id><published>2015-06-17T15:43:00.003-07:00</published><updated>2015-06-17T15:43:32.667-07:00</updated><title type='text'>Convertir segudos a Hora,Minutos Segundos en PL/SQL</title><content type='html'>Hoy escribo un rápido post para mostrar una función en PL/SQL muy básica que convierte un número entero que representa segundos a un formato de texto de la forma HH:MI:SS que es la forma en la que visualizamos la duración en muchas herramientas; &lt;i&gt;por ejemplo 61 segundos sería escrito como 00:01:01&lt;/i&gt; . Como siempre esta función puede ser reescrita en cualquier lenguaje de programación; sin más que agregar esta es la función:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;
CREATE OR REPLACE FUNCTION DURACION(SEG NUMBER) RETURN VARCHAR2 IS&lt;br /&gt;
&amp;nbsp; RESULTADO VARCHAR2(50);&lt;br /&gt;
&amp;nbsp; H VARCHAR2(2); --HORAS&lt;br /&gt;
&amp;nbsp; M VARCHAR(2); --MINUTOS&lt;br /&gt;
&amp;nbsp; S VARCHAR2(2); --SEGUNDOS&lt;br /&gt;
BEGIN&lt;br /&gt;
&amp;nbsp; H:=LPAD(TO_CHAR(FLOOR(SEG/3600)),2,0);&lt;br /&gt;
&amp;nbsp; M:=LPAD(TO_CHAR(FLOOR(SEG/60)-TO_NUMBER(H)*60),2,0);&lt;br /&gt;
&amp;nbsp; S:=LPAD(TO_CHAR(MOD(SEG,60)),2,0);&lt;br /&gt;
&amp;nbsp; RESULTADO:=H||&#39;:&#39;||M||&#39;:&#39;||S;&lt;br /&gt;
&amp;nbsp; RETURN RESULTADO;&lt;br /&gt;
END;/
&lt;/code&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/3340430874043420392/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2015/06/convertir-segudos-horaminutos-segundos.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/3340430874043420392'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/3340430874043420392'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2015/06/convertir-segudos-horaminutos-segundos.html' title='Convertir segudos a Hora,Minutos Segundos en PL/SQL'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-5100761529453919994</id><published>2015-05-06T21:20:00.001-07:00</published><updated>2015-05-06T21:25:51.265-07:00</updated><title type='text'>Desarrollo rápido de Aplicaciones Móviles  Híbridas  con HTML5, JavaScript y CSS</title><content type='html'>El  uso  de  dispositivos  móviles  está  creciendo  muy rápido y usan  diferentes  sistemas  operativos  por lo  que  se  hace muy  difícil  mantener  el  desarrollo  de  aplicaciones para  estos  y llevarle  el  paso  a  la actual  tendencia  de  desarrollo  orientado  a dispositivos   móviles;   para   esto   surgen frameworks   que nos permiten desarrollar aplicaciones móviles usando HTML5, CSS y JavaScript ahorrándonos tiempo  de  desarrollo  y  aprendizaje  de nuevos lenguajes.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;Después de tanto tiempo con mi blog inactivo por el trabajo y la Universidad les comparto un pequeño artículo que escribí para darle un poco de contenido al blog; disculpen un poco la falta de detalle pero aún los escribo para aprender a usar el formato IEEE y desarrollar pequeñas investigaciones.

Espero lograr al menos(si no lo conocías) que sepas que puedes desarrollar una pequeña aplicación móvil de una manera muy sencilla; quedo abierto a sus sugerencias y comentarios sobre el artículo.&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&amp;nbsp;&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;510&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; scrolling=&quot;no&quot; src=&quot;//www.slideshare.net/slideshow/embed_code/key/B5rxFPhKEHR0c&quot; style=&quot;border-width: 1px; border: 1px solid #CCC; margin-bottom: 5px; max-width: 100%;&quot; width=&quot;477&quot;&gt;&lt;/iframe&gt; &lt;/div&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;&amp;nbsp;&lt;a href=&quot;https://www.researchgate.net/publication/270885057_Desarrollo_de_Aplicaciones_Mviles_con_HTML5_CSS_y_JavaScript&quot; target=&quot;_blank&quot;&gt;Link al artículo&lt;/a&gt; &lt;/b&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/5100761529453919994/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2015/05/desarrollo-rapido-de-aplicaciones.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/5100761529453919994'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/5100761529453919994'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2015/05/desarrollo-rapido-de-aplicaciones.html' title='Desarrollo rápido de Aplicaciones Móviles  Híbridas  con HTML5, JavaScript y CSS'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-5286304656001797156</id><published>2015-05-03T22:30:00.000-07:00</published><updated>2015-05-06T21:31:00.000-07:00</updated><title type='text'>Seguridad en Stios Web - No confíes en el usuario</title><content type='html'>Este&amp;nbsp; artículo&amp;nbsp; presenta cómo&amp;nbsp; las&amp;nbsp; vulnerabilidades pueden ser detectadas y explotadas del lado del usuario sin tener acceso físico al servidor que aloja el Sitio o Sistema Web.&lt;br /&gt;
&lt;br /&gt;Entre los que se describen en este artículo están:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;SQL Injection&lt;/li&gt;
&lt;li&gt;Exploits&lt;/li&gt;
&lt;li&gt;Robo de Cookies&lt;/li&gt;
&lt;li&gt;Cross-Site Scripting (XSS)&lt;/li&gt;
&lt;li&gt;Ingeniería Social&lt;/li&gt;
&lt;/ul&gt;
Espero lo encuentren de utilidad; no olviden sus sugerencias y comentarios.&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;
&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;511&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; scrolling=&quot;no&quot; src=&quot;http://www.slideshare.net/slideshow/embed_code/28440704&quot; style=&quot;border-width: 1px 1px 0; border: 1px solid #CCC; margin-bottom: 5px;&quot; width=&quot;479&quot;&gt; &lt;/iframe&gt; &lt;/div&gt;
&lt;div style=&quot;margin-bottom: 5px;&quot;&gt;
&lt;b&gt; &lt;a href=&quot;https://www.researchgate.net/publication/258641613_Seguridad_en_la_Web_-_No_confes_en_el_usuario&quot; target=&quot;_blank&quot; title=&quot;Seguridad en la web no confíes en el usuario&quot;&gt;Seguridad en la web no confíes en el usuario&lt;/a&gt;&lt;/b&gt; &lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/5286304656001797156/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2013/11/seguridad-en-stios-web-no-confies-en-el.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/5286304656001797156'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/5286304656001797156'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2013/11/seguridad-en-stios-web-no-confies-en-el.html' title='Seguridad en Stios Web - No confíes en el usuario'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-2466996033980452155</id><published>2013-09-10T21:34:00.001-07:00</published><updated>2013-09-10T21:48:10.481-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="clave"/><category scheme="http://www.blogger.com/atom/ns#" term="defecto"/><category scheme="http://www.blogger.com/atom/ns#" term="router"/><category scheme="http://www.blogger.com/atom/ns#" term="wep"/><title type='text'>Herramienta para verificar la clave WEP por defecto de tu router</title><content type='html'>Hola a todos, ¿has leido el post &lt;span style=&quot;font-size: small;&quot;&gt;&quot;&lt;a href=&quot;http://blog.sorianocarlos.com/2012/03/turbonett-de-claro-podrias-estar.html&quot; target=&quot;_blank&quot;&gt;&lt;i&gt;Turbonett de Claro , podrías estar regalando tu Wi-fi [Clave por defecto de routers BroadTech]&lt;/i&gt;&lt;/a&gt;&quot;&lt;/span&gt; y no puedes obtener la clave?; pues he creado un pequeño script en PHP que te retorna la posible clave WEP de la Red que ingreses en el formulario.&lt;br /&gt;
&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
Está en una versión Beta por lo que aún no soporta todos los Routers y está propenso a errores. Espero comentes cómo te funciona, lo compartas y sugieras algunas funcionalidades.&lt;br /&gt;
&lt;span style=&quot;color: red;&quot;&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;
&lt;span style=&quot;color: red;&quot;&gt;&lt;b&gt;&lt;a href=&quot;http://www.sorianocarlos.com/index.php/claves-wep-por-defecto&quot; target=&quot;_blank&quot;&gt;Link: http://www.sorianocarlos.com/index.php/claves-wep-por-defecto&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
Routers Soportados:&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Broadtech (TURBONET_XXXXXX)&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/2466996033980452155/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2013/09/herramienta-para-verificar-la-clave-por.html#comment-form' title='14 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/2466996033980452155'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/2466996033980452155'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2013/09/herramienta-para-verificar-la-clave-por.html' title='Herramienta para verificar la clave WEP por defecto de tu router'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>14</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-3928368844136018570</id><published>2013-08-28T23:15:00.000-07:00</published><updated>2013-08-29T22:57:10.348-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="funcion"/><category scheme="http://www.blogger.com/atom/ns#" term="ocurrencia"/><category scheme="http://www.blogger.com/atom/ns#" term="oracle"/><category scheme="http://www.blogger.com/atom/ns#" term="pl"/><category scheme="http://www.blogger.com/atom/ns#" term="pl/sql"/><category scheme="http://www.blogger.com/atom/ns#" term="programacion"/><category scheme="http://www.blogger.com/atom/ns#" term="sql"/><category scheme="http://www.blogger.com/atom/ns#" term="string"/><category scheme="http://www.blogger.com/atom/ns#" term="subsring"/><title type='text'>Función para Oracle PL/SQL para encontrar cantidad de ocurrencias de cadenas</title><content type='html'>Hola estimados lectores :) hoy vengo con otro post flash debido al corto tiempo que me queda.&lt;br /&gt;
&lt;br /&gt;
Pues hoy les entrego una simple función en oracle (que seguramente es extrapolable a otro lenguaje) que hace algo sencillo: encuentra cuantas veces en una cadena aparace un caracter o substring que desees verificar.&lt;br /&gt;
&lt;br /&gt;
Por ejemplo, te sirve para saber cuantas veces está la letra &#39;a&#39; en la palabra &#39;amapolas&#39; ó cuantas veces existe &#39;si&#39; en &#39;111si92992sisiwewesi&#39;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El concepto es así:&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Calculamos la longitud de la cadena en la que queremos encontrar el número de ocurrencias.&lt;br /&gt; &lt;/li&gt;
&lt;li&gt;Le restamos la longitud de esa misma cadena pero despues de hacer un REPLACE de el caracter o substring al que deseamos encontrar el número de ocurrencias.&lt;/li&gt;
&lt;li&gt;Lo dividimos entre la longitud del caracter o substring al que deseamos encontrar el número de ocurrencias.&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
Y Listo!!! aqui les paso el código :) espero les sea útil.&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;brush :sql&quot;&gt; 
CREATE OR REPLACE FUNCTION OCURRENCIES(CADENA IN VARCHAR2/*LA CADENA BASE*/,SUBCADENA IN VARCHAR2 /*LA CADENA QUE QUEREMOS ENCONTRAR LA OCURRENCIA*/) RETURN NUMBER
IS
 RESPUESTA NUMBER;
BEGIN
 SELECT 
 (LENGTH(CADENA)-LENGTH(REPLACE(CADENA,SUBCADENA,&#39;&#39;)))/LENGTH(SUBCADENA)
 INTO RESPUESTA
 FROM DUAL;
 RETURN RESPUESTA;
 EXCEPTION
    WHEN OTHERS THEN
       RETURN 0;
END OCURRENCIES;&amp;nbsp;&lt;/pre&gt;

&lt;br&gt;&lt;br&gt;Ejemplo:

&lt;br /&gt;
&lt;pre class=&quot;brush :sql&quot;&gt; 
SELECT OCURRENCIES(&#39;AMAPOLA&#39;,&#39;A&#39;) FROM DUAL;
&lt;/pre&gt;

&lt;BR&gt; Este ejemplo retornará 3.

</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/3928368844136018570/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2013/08/funcion-para-oracle-plsql-para.html#comment-form' title='6 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/3928368844136018570'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/3928368844136018570'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2013/08/funcion-para-oracle-plsql-para.html' title='Función para Oracle PL/SQL para encontrar cantidad de ocurrencias de cadenas'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-3823358480412622168</id><published>2013-05-28T19:19:00.002-07:00</published><updated>2013-05-28T19:19:22.863-07:00</updated><title type='text'>Listado MAC de Fabricantes de tarjetas de Red</title><content type='html'>Como algunos sabrán, los primeros 3 octetos de una dirección MAC identifican al fabricante de la tarjeta.&lt;br /&gt;
&lt;br /&gt;
También si queremos saber que fabricante es el de nuestra MAC usamos algun sitio web donde ingresamos la MAC y nos dá los datos del fabricante.&lt;br /&gt;Pero ahora les comparto el listado oficial de fabricantes de Tarjetas de Red de la IEEE, esta lista es actualizada cada día y la puedes usar para hacer tu aplicación que identifique a los fabricantes.&lt;br /&gt;
&lt;br /&gt;
Espero les sea útil a todos los developers.&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://standards.ieee.org/develop/regauth/oui/oui.txt&quot;&gt;http://standards.ieee.org/develop/regauth/oui/oui.txt&lt;/a&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/3823358480412622168/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2013/05/listado-mac-de-fabricantes-de-tarjetas.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/3823358480412622168'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/3823358480412622168'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2013/05/listado-mac-de-fabricantes-de-tarjetas.html' title='Listado MAC de Fabricantes de tarjetas de Red'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-3718552343031285582</id><published>2013-05-01T14:36:00.000-07:00</published><updated>2013-05-31T12:56:02.073-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="bisiesto"/><category scheme="http://www.blogger.com/atom/ns#" term="c++"/><category scheme="http://www.blogger.com/atom/ns#" term="Calendario"/><category scheme="http://www.blogger.com/atom/ns#" term="doomsay"/><title type='text'>Calendario en C++</title><content type='html'>Uno siempre tiende a subestimar pequeños &quot;programitas&quot; a los que no se le vé mayor complejidad debido a la abundante existencia de estos.&lt;br /&gt;&lt;br /&gt;Por ello en la primera materia de programación que tuve en la Universidad nos dejaron de tarea crear un programa en C++ que con indicarle el mes y año nos imprimiera en pantalla el calendario.&lt;br /&gt;&lt;br /&gt;Pero la real dificultad de este programa es Determinar el primer día de cada mes; esto se soluciona con un famoso algoritmo llamado Doomsay el cual usé para implementar el programa; otra cosa que hay que tener en cuenta es el límite de dias que tiene cada mes en especial febrero. Así que tomamos en cuenta el año bisiesto; en este febrero tiene 29 días y no 28 como normalmente lo es; para determinar si un año es bisiesto este debe cumplir 2 cosas:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Debe ser divisible por 4&lt;/li&gt;&lt;li&gt;Y no debe de ser divisible por 100, pero si lo es debe de ser divisble por 400.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;Y esos son los criterios a considerar para crear el programa del calendario, espero les sea útil y no olviden en compartir su conocimiento y este blog :) &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://dl.dropboxusercontent.com/u/22010646/Blog%20de%20Programacion/Calendario.cpp&quot; target=&quot;_blank&quot;&gt;&lt;br /&gt;&lt;/a&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;https://dl.dropboxusercontent.com/u/22010646/Blog%20de%20Programacion/Calendario.cpp&quot; target=&quot;_blank&quot;&gt;Descargar Aquí.&lt;/a&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/3718552343031285582/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2013/05/calendario-en-c.html#comment-form' title='3 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/3718552343031285582'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/3718552343031285582'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2013/05/calendario-en-c.html' title='Calendario en C++'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-5691351001275566109</id><published>2013-02-18T21:33:00.002-08:00</published><updated>2013-02-18T21:55:27.767-08:00</updated><title type='text'>Breve reseña sobre Linux como Sistema Operativo de Red</title><content type='html'>Hoy les publico un pequeño Paper en formato IEEE (no lo puedo aplicar muy bien aún xD) acerca de Linux como sistema operativo de red; no es muy profundo, pero es mi&amp;nbsp; &quot;hola mundo&quot; en la redacción de papers; espero mejorar y que le sea útil a quien lo estime conveniente ;).&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;center&gt;
&lt;iframe frameborder=&quot;0&quot; height=&quot;400&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; scrolling=&quot;no&quot; src=&quot;http://www.slideshare.net/slideshow/embed_code/16615137&quot; width=&quot;476&quot;&gt;&lt;/iframe&gt;&lt;/center&gt;
&lt;a href=&quot;http://www.sorianocarlos.com/uploads/Paper%20Linux.pdf&quot;&gt;
Descarga Aquí.&lt;/a&gt;
</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/5691351001275566109/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2013/02/breve-resena-sobre-linux-como-sistema.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/5691351001275566109'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/5691351001275566109'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2013/02/breve-resena-sobre-linux-como-sistema.html' title='Breve reseña sobre Linux como Sistema Operativo de Red'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-8668583647700519068</id><published>2012-11-13T18:04:00.004-08:00</published><updated>2012-11-13T18:08:50.070-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="auto_increment"/><category scheme="http://www.blogger.com/atom/ns#" term="autoincremental"/><category scheme="http://www.blogger.com/atom/ns#" term="campo"/><category scheme="http://www.blogger.com/atom/ns#" term="oracle"/><title type='text'>Como crear campos Auto Incrementales en Oracle</title><content type='html'>Muchos habran tenido el problema de hacer un campo en Oracle Auto Incremental, ya que no es tan sencillo como en MySQL de escribir &quot;auto_increment&quot; en la definición del campo, sino que deberemos hacer lo siguiente:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Crear una Secuencia para ese Campo:

&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;pre class=&quot;brush:sql&quot;&gt; 
create sequence nueva_secuencia
   start with 1 
   increment by 1 
   nomaxvalue;&lt;/pre&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;li&gt;Crear un Trigger que ingrese el nuevo valor automaticamente&lt;/li&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;/div&gt;
&lt;pre class=&quot;brush:sql&quot;&gt;create or replace trigger campo_autoincremental
before insert on tabla for each row
begin
    select nueva_secuencia.nextval 
    into :new.campo_autoincremental
    from dual;
end;
/&lt;/pre&gt;
&lt;pre class=&quot;brush:sql&quot;&gt;&amp;nbsp;&lt;/pre&gt;
&lt;pre class=&quot;brush:sql&quot;&gt;&amp;nbsp;&lt;/pre&gt;
Y eso es todo, espero les haya servido.&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-size: xx-small;&quot;&gt;Fuente:&lt;a href=&quot;http://foro.noticias3d.com/vbulletin/showthread.php?t=153477&quot;&gt;http://foro.noticias3d.com/vbulletin/showthread.php?t=153477&lt;/a&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/8668583647700519068/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2012/11/como-crear-campos-auto-incrementales-en.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/8668583647700519068'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/8668583647700519068'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2012/11/como-crear-campos-auto-incrementales-en.html' title='Como crear campos Auto Incrementales en Oracle'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-8710980814941934222</id><published>2012-09-24T15:32:00.001-07:00</published><updated>2012-10-15T10:44:32.609-07:00</updated><title type='text'>Contar del 0 al 9 en un display 7 segmentos con Arduino</title><content type='html'>Aunque no se si es la solución mas optima de hacerlo con el Arduino UNO (lo digo porque es casi mi primer trabajo con el; pero logré hacer que contara del 0 al 9 en un display ánodo común de 7 segmentos y un 74LS247 (Conversor BCD).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;iframe allowfullscreen=&#39;allowfullscreen&#39; webkitallowfullscreen=&#39;webkitallowfullscreen&#39; mozallowfullscreen=&#39;mozallowfullscreen&#39; width=&#39;320&#39; height=&#39;266&#39; src=&#39;https://www.blogger.com/video.g?token=AD6v5dwm8Djbz2ail-taWWhhKo7Lk6fJvw_uAvfgyVAOk0pEnlRjlP3GN0KqE4hCjiwbWV1XltAxuyyOJ0YOtn1Kmg&#39; class=&#39;b-hbp-video b-uploaded&#39; frameborder=&#39;0&#39;&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;
Codigo Fuente subido al Arduino:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;brush :cpp&quot;&gt;   int maximo=13; //Pin que es el bit menos significativo
  int minimo=10;// Pin que es el bit mas significativo
  float segundos=1;
  
void setup() {
for(int i=minimo;i&amp;lt;=maximo;i++){
  pinMode(i, OUTPUT); 
  };  
}


void loop() {
    display(0,0,0,0);
     delay(segundos*1000);
     display(0,0,0,1);
     delay(segundos*1000);
     display(0,0,1,0);
     delay(segundos*1000);
     display(0,0,1,1);
     delay(segundos*1000);
     display(0,1,0,0);
     delay(segundos*1000);
     display(0,1,0,1);
     delay(segundos*1000);
     display(0,1,1,0);
     delay(segundos*1000);
     display(0,1,1,1);
     delay(segundos*1000);
     display(1,0,0,0);
     delay(segundos*1000);
     display(1,0,0,1);
     delay(segundos*1000);
}

void display(int d,int c, int b, int a){
 digitalWrite(13,a);
 digitalWrite(12,b);
 digitalWrite(11,c);
 digitalWrite(10,d);
}&lt;/pre&gt;
</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/8710980814941934222/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2012/09/contar-del-0-al-9-en-un-display-7.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/8710980814941934222'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/8710980814941934222'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2012/09/contar-del-0-al-9-en-un-display-7.html' title='Contar del 0 al 9 en un display 7 segmentos con Arduino'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-3354941541713779373</id><published>2012-08-27T19:51:00.001-07:00</published><updated>2013-02-08T18:42:23.944-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="error"/><category scheme="http://www.blogger.com/atom/ns#" term="listener"/><category scheme="http://www.blogger.com/atom/ns#" term="ora-12505"/><category scheme="http://www.blogger.com/atom/ns#" term="oracle"/><category scheme="http://www.blogger.com/atom/ns#" term="refused"/><category scheme="http://www.blogger.com/atom/ns#" term="xe"/><title type='text'>SOLUCIÓN [Listener Refused the connection ora-12505]  en Oracle XE</title><content type='html'>Perdon por el post tan corto, pero he visto que bastante tráfico de mi blog busca la solución a este problema.&lt;br /&gt;
&lt;br /&gt;
Aclaro que esto solo funciona para quienes usan la version Express de Oracle.&lt;br /&gt;
&lt;br /&gt;
Si reciben el error &quot;listener refused the connection ora-12505&quot; escriban XE en nombre de la Base de datos(password y host dejarlos segun configuración) y se solucionará el problema.</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/3354941541713779373/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2012/08/solucion-listener-refused-connection.html#comment-form' title='4 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/3354941541713779373'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/3354941541713779373'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2012/08/solucion-listener-refused-connection.html' title='SOLUCIÓN [Listener Refused the connection ora-12505]  en Oracle XE'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-5533031311484128423</id><published>2012-08-26T21:59:00.000-07:00</published><updated>2013-09-08T16:58:46.011-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="basico"/><category scheme="http://www.blogger.com/atom/ns#" term="contable"/><category scheme="http://www.blogger.com/atom/ns#" term="descarga"/><category scheme="http://www.blogger.com/atom/ns#" term="live"/><category scheme="http://www.blogger.com/atom/ns#" term="mysql"/><category scheme="http://www.blogger.com/atom/ns#" term="php"/><category scheme="http://www.blogger.com/atom/ns#" term="script"/><category scheme="http://www.blogger.com/atom/ns#" term="sistema"/><title type='text'>Sistema Contable BASICO en PHP y MySQL</title><content type='html'>&amp;nbsp;Una vez mas trabajo contra tiempo (menos de 12 horas), hice un script de un sistema contable MUY BÁSICO (debido al corto tiempo para el desarrollo); lo único que se puede hacer en el es agregar cuentas al catálogo, ingresar partidas diarias (los datos ingresados no se pueden modificar directamente del script, debe ser en la base de datos), ver el balance de comprobacion y estado de resultados general por mes y años .&lt;br /&gt;
El sistemita es bastante sencillo porque aún no domino bien PHP y MySQL, los que empiezan en PHP saben lo difícil que puede ser ver una pantalla en blanco sin saber donde esta el error xD xD; y tampoco agregué los triggers y procedimientos almacenados, porque requería mayor tiempo de diseño de la base de datos.&lt;br /&gt;
&lt;br /&gt;
Puedes descargar el código fuente; Agradecería sus comentarios y un backlink si es de su agrado.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://dl.dropbox.com/u/22010646/Blog%20de%20Programacion/sistema%20contable.zip&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;Descarga Aqui.&lt;/b&gt;&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/5533031311484128423/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2012/08/sistema-contable-basico-en-php-y-mysql.html#comment-form' title='54 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/5533031311484128423'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/5533031311484128423'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2012/08/sistema-contable-basico-en-php-y-mysql.html' title='Sistema Contable BASICO en PHP y MySQL'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>54</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-5897252084046251095</id><published>2012-06-24T17:38:00.003-07:00</published><updated>2012-10-15T11:07:56.738-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="blog"/><category scheme="http://www.blogger.com/atom/ns#" term="codigo"/><category scheme="http://www.blogger.com/atom/ns#" term="formato"/><category scheme="http://www.blogger.com/atom/ns#" term="fuente"/><category scheme="http://www.blogger.com/atom/ns#" term="indentacion"/><category scheme="http://www.blogger.com/atom/ns#" term="post"/><category scheme="http://www.blogger.com/atom/ns#" term="sintaxis"/><title type='text'>Cómo formatear el codigo fuente que posteas en tu blog con SyntaxHighlighter</title><content type='html'>Muchas veces que has querido compartir código fuente o una porcion de el en tu blog o en tu sitio posiblemente no hayas podido darle el formato de &lt;codigo&gt; con sus respectivas indentaciones, resaltado de funciones,texto o definiciones y todo el formato con el que lo ves en tu entorno de desarrollo.&lt;/codigo&gt;&lt;br /&gt;
&lt;br /&gt;
Con &lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/&quot; target=&quot;_blank&quot;&gt;SyntaxHighlighter&lt;/a&gt; de Alex Gorbatchev puedes darle ese formato que deseas a tu código sea cual sea el lenguaje en el que lo tengas solo debes incluir en tu plantilla los archivos .js usando la siguiente sintaxis justo despues de la etiqueta head de tu plantilla.&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;
&lt;pre class=&quot;brush :js&quot;&gt;

&lt;!--SYNTAX HIGHLIGHTER BEGINS--&gt;
&lt;link href=&#39;http://alexgorbatchev.com/pub/sh/current/styles/shCore.css&#39; rel=&#39;stylesheet&#39; type=&#39;text/css&#39;/&gt;
&lt;link href=&#39;http://alexgorbatchev.com/pub/sh/current/styles/shThemeDefault.css&#39; rel=&#39;stylesheet&#39; type=&#39;text/css&#39;/&gt;
&lt;script src=&#39;http://alexgorbatchev.com/pub/sh/current/scripts/shCore.js&#39; type=&#39;text/javascript&#39;&gt;&lt;/script&gt;
&lt;script src=&#39;http://alexgorbatchev.com/pub/sh/current/scripts/shBrushCpp.js&#39; type=&#39;text/javascript&#39;&gt;&lt;/script&gt;
&lt;script src=&#39;http://alexgorbatchev.com/pub/sh/current/scripts/shBrushCSharp.js&#39; type=&#39;text/javascript&#39;&gt;&lt;/script&gt;
&lt;script src=&#39;http://alexgorbatchev.com/pub/sh/current/scripts/shBrushCss.js&#39; type=&#39;text/javascript&#39;&gt;&lt;/script&gt;
&lt;script src=&#39;http://alexgorbatchev.com/pub/sh/current/scripts/shBrushJava.js&#39; type=&#39;text/javascript&#39;&gt;&lt;/script&gt;
&lt;script src=&#39;http://alexgorbatchev.com/pub/sh/current/scripts/shBrushJScript.js&#39; type=&#39;text/javascript&#39;&gt;&lt;/script&gt;
&lt;script src=&#39;http://alexgorbatchev.com/pub/sh/current/scripts/shBrushPhp.js&#39; type=&#39;text/javascript&#39;&gt;&lt;/script&gt;
&lt;script src=&#39;http://alexgorbatchev.com/pub/sh/current/scripts/shBrushPython.js&#39; type=&#39;text/javascript&#39;&gt;&lt;/script&gt;
&lt;script src=&#39;http://alexgorbatchev.com/pub/sh/current/scripts/shBrushRuby.js&#39; type=&#39;text/javascript&#39;&gt;&lt;/script&gt;
&lt;script src=&#39;http://alexgorbatchev.com/pub/sh/current/scripts/shBrushSql.js&#39; type=&#39;text/javascript&#39;&gt;&lt;/script&gt;
&lt;script src=&#39;http://alexgorbatchev.com/pub/sh/current/scripts/shBrushVb.js&#39; type=&#39;text/javascript&#39;&gt;&lt;/script&gt;
&lt;script src=&#39;http://alexgorbatchev.com/pub/sh/current/scripts/shBrushXml.js&#39; type=&#39;text/javascript&#39;&gt;&lt;/script&gt;
&lt;script src=&#39;http://alexgorbatchev.com/pub/sh/current/scripts/shBrushPerl.js&#39; type=&#39;text/javascript&#39;&gt;&lt;/script&gt;
&lt;script language=&#39;javascript&#39;&gt;
SyntaxHighlighter.config.bloggerMode = true;
SyntaxHighlighter.config.clipboardSwf = &#39;http://alexgorbatchev.com/pub/sh/current/scripts/clipboard.swf&#39;;
SyntaxHighlighter.all();
&lt;/script&gt;
&lt;!--SYNTAX HIGHLIGHTER ENDS--&gt;
&lt;/pre&gt;
Es indispensable que siempre incluyas shCore.js, shCore.css y las funciones que se detallan en el post a continuacion, luego dependiendo los lenguajes que quieras formatear en tu sitio deberas agregar los pinceles que detalla la tabla al final del post. &lt;br /&gt;
Claro que si quieres agregar todos los lenguajes disponibles basta con que copies y pegues el codigo anterior justo despues de la etiqueta head de tu plantilla.&lt;br /&gt;
&lt;pre :js=&quot;:js&quot; brush:=&quot;&quot; brush=&quot;&quot; class=&quot;brush: js&amp;gt;&amp;lt;head&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;br /&amp;gt;
Por ejemplo si quieres agregar el formato a un codigo de C++ deberas tener agregado el script shBrushCpp.js en tu plantilla; se verá asi en el codigo de tu plantilla:
&amp;lt;pre class=&quot;&gt;&lt;link href=&quot;http://alexgorbatchev.com/pub/sh/current/styles/shCore.css&quot; rel=&quot;stylesheet&quot; type=&quot;text/css&quot;&gt;&lt;/link&gt;
&lt;link href=&quot;http://alexgorbatchev.com/pub/sh/current/styles/shThemeDefault.css&quot; rel=&quot;stylesheet&quot; type=&quot;text/css&quot;&gt;&lt;/link&gt;
&lt;script src=&quot;http://alexgorbatchev.com/pub/sh/current/scripts/shCore.js&quot; type=&quot;text/javascript&quot;&gt;
&lt;script src=&#39;http://alexgorbatchev.com/pub/sh/current/scripts/shBrushCpp.js&#39; type=&#39;text/javascript&#39;/&gt;
&lt;script language=&#39;javascript&#39;&gt;
SyntaxHighlighter.config.bloggerMode = true;
SyntaxHighlighter.config.clipboardSwf = &amp;#39;http://alexgorbatchev.com/pub/sh/current/scripts/clipboard.swf&amp;#39;;
SyntaxHighlighter.all();
&lt;/script&gt;
&lt;/pre&gt;
Ahora que tienes agregadas las librerias en tu plantilla procederemos a formatear el código que queremos postear, para eso debemos editar la entrada a publicar como HTML y poner el código entre etiquetas pre .
Para elegir el formato según el lenguaje (ya que depende la sintaxis) le agregamos a la etiqueta pre
el atributo class=&quot;brush :xxx&quot; donde en xxx deberas escribir el &quot;Brush aliases&quot; que encontraras en la tabla al final del post.&amp;nbsp;


Por ejemplo para resaltar el código PHP debemos escribirlo asi en la edicion HTML de la entrada:



&lt;br /&gt;
&lt;pre class=&quot;brush :js&quot;&gt; &lt;pre class=&quot;brush :php&quot;&gt; echo &quot;Hola Mundo&quot;; &lt;/pre&gt;
&lt;/pre&gt;
Y como se vera en tu post sera asi:


&lt;br /&gt;
&lt;pre class=&quot;brush :php&quot;&gt; echo &quot;Hola Mundo&quot; &lt;/pre&gt;
&amp;nbsp;&amp;nbsp;Pero si prefieres tener alojados los scripts en tu hosting para evitar la dependencia del repositorio original descarga los archivos .js que encontraras en &lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/download&quot; target=&quot;_blank&quot;&gt;este link.&lt;/a&gt;


Entre los lenguajes soportados estan:
&lt;br /&gt;
&lt;table cellspacing=&quot;0&quot;&gt;&lt;thead&gt;
&lt;tr class=&quot;first&quot;&gt;&lt;th&gt;Brush name&lt;/th&gt;&lt;th&gt;Brush aliases&lt;/th&gt;&lt;th&gt;File name&lt;/th&gt;&lt;/tr&gt;
&lt;/thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/actionscript3.html&quot;&gt;ActionScript3&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;as3, actionscript3&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushAS3.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/bash.html&quot;&gt;Bash/shell&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;bash, shell&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushBash.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/coldfusion.html&quot;&gt;ColdFusion&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;cf, coldfusion&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushColdFusion.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/csharp.html&quot;&gt;C#&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;c-sharp, csharp&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushCSharp.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/cpp.html&quot;&gt;C++&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;cpp, c&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushCpp.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/css.html&quot;&gt;CSS&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;css&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushCss.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/delphi.html&quot;&gt;Delphi&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;delphi, pas, pascal&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushDelphi.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/diff.html&quot;&gt;Diff&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;diff, patch&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushDiff.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/erlang.html&quot;&gt;Erlang&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;erl, erlang&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushErlang.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/groovy.html&quot;&gt;Groovy&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;groovy&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushGroovy.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/javascript.html&quot;&gt;JavaScript&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;js, jscript, javascript&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushJScript.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/java.html&quot;&gt;Java&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;java&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushJava.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/javafx.html&quot;&gt;JavaFX&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;jfx, javafx&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushJavaFX.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/perl.html&quot;&gt;Perl&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;perl, pl&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushPerl.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/php.html&quot;&gt;PHP&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;php&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushPhp.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/plain.html&quot;&gt;Plain Text&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;plain, text&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushPlain.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/powershell.html&quot;&gt;PowerShell&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;ps, powershell&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushPowerShell.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/python.html&quot;&gt;Python&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;py, python&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushPython.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/ruby.html&quot;&gt;Ruby&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;rails, ror, ruby&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushRuby.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/scala.html&quot;&gt;Scala&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;scala&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushScala.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/sql.html&quot;&gt;SQL&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;sql&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushSql.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/vb.html&quot;&gt;Visual Basic&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;vb, vbnet&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushVb.js&lt;/td&gt;
      &lt;/tr&gt;
&lt;tr class=&quot;last&quot;&gt;&lt;td class=&quot;first&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/xml.html&quot;&gt;XML&lt;/a&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left;&quot;&gt;xml, xhtml, xslt, html, xhtml&lt;/td&gt;&lt;td class=&quot;last&quot; style=&quot;text-align: left;&quot;&gt;shBrushXml.js&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;
Encontraras mas información y ejemplos de los lenguajes en el sitio oficial:
&lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/&quot; target=&quot;_blank&quot;&gt;http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/5897252084046251095/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2012/06/como-formatear-el-codigo-fuente-que.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/5897252084046251095'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/5897252084046251095'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2012/06/como-formatear-el-codigo-fuente-que.html' title='Cómo formatear el codigo fuente que posteas en tu blog con SyntaxHighlighter'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-4560975434411761798</id><published>2012-06-17T18:17:00.004-07:00</published><updated>2012-06-17T18:25:36.574-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="base"/><category scheme="http://www.blogger.com/atom/ns#" term="conectar"/><category scheme="http://www.blogger.com/atom/ns#" term="datos"/><category scheme="http://www.blogger.com/atom/ns#" term="de"/><category scheme="http://www.blogger.com/atom/ns#" term="driver"/><category scheme="http://www.blogger.com/atom/ns#" term="jbdc"/><category scheme="http://www.blogger.com/atom/ns#" term="libreoffice"/><category scheme="http://www.blogger.com/atom/ns#" term="linux"/><category scheme="http://www.blogger.com/atom/ns#" term="oracle"/><category scheme="http://www.blogger.com/atom/ns#" term="oracledriver"/><category scheme="http://www.blogger.com/atom/ns#" term="ubuntu"/><title type='text'>Error oracle.jdbc.driver.OracleDriver al intentar conectar LibreOffice con Oracle en Ubuntu [SOLUCION]</title><content type='html'>Muchos podriamos haber recibido ese Mensaje: &quot;El conductor de la clase &#39;oracle.jdbc.driver.OracleDriver&#39; no puede ser cargado&quot; mientras intentabamos conectar LibreOffice con una base de datos que corriera en Oracle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://3.bp.blogspot.com/-zkrIdaV-QUA/T96AdrpihVI/AAAAAAAAAIg/oM6Ssu2lv8c/s1600/Base_error.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;61&quot; src=&quot;http://3.bp.blogspot.com/-zkrIdaV-QUA/T96AdrpihVI/AAAAAAAAAIg/oM6Ssu2lv8c/s320/Base_error.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
En mi caso usando Ubuntu caí en cuenta que el JDBC no lo agrega automáticamente LibreOffice para poder conectarse con Oracle, asi que aquí les presento como solucioné este problema y pude &lt;a href=&quot;http://blog.sorianocarlos.com/2012/05/conectar-libreoffice-con-oracle-xe-10g.html&quot; target=&quot;_blank&quot;&gt;Conectar LibreOffice con Oracle&lt;/a&gt;.&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;
Primero nos dirigimos al siguiente &lt;a href=&quot;http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-10201-088211.html&quot;&gt;Enlace&lt;/a&gt;&amp;nbsp; y descargamos un archivo llamado classes12.jar .&lt;br /&gt;
&lt;br /&gt;
Luego abrimos LibreOffice y seguimos la siguiente ruta en los menús para acceder a la configuracion &quot;Herramientas-&amp;gt;Opciones-&amp;gt;LibreOffice-&amp;gt;Java-&amp;gt;Ruta de clase&quot; y agregamos el classes12.jar que acabamos de descargar seleccionando &quot;Agregar Paquete&quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://4.bp.blogspot.com/-sxusufcjGRY/T96BcIe-zII/AAAAAAAAAIo/sE4edgm_BEY/s1600/Error_1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;200&quot; src=&quot;http://4.bp.blogspot.com/-sxusufcjGRY/T96BcIe-zII/AAAAAAAAAIo/sE4edgm_BEY/s320/Error_1.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://4.bp.blogspot.com/-hVEa6bTtsUY/T96BdhSSKrI/AAAAAAAAAIw/O3lfXNUrWSk/s1600/Error_3.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;200&quot; src=&quot;http://4.bp.blogspot.com/-hVEa6bTtsUY/T96BdhSSKrI/AAAAAAAAAIw/O3lfXNUrWSk/s320/Error_3.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
Despues cuando hacemos la prueba con la clase oracle.jdbc.driver.OracleDriver nos deberia decir que el controlador JDBC se ha cargado correctamente.&lt;br /&gt;
&lt;br /&gt;
Si reciben el error &quot;listener refused the connection ora-12505&quot; escriban XE en nombre de la Base de datos y se solucionara.&lt;br /&gt;
&lt;br /&gt;
Referencias: http://gabyokal.blogspot.com/2011/06/error-ora-12505.html</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/4560975434411761798/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2012/06/error-oraclejdbcdriveroracledriver-al.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/4560975434411761798'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/4560975434411761798'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2012/06/error-oraclejdbcdriveroracledriver-al.html' title='Error oracle.jdbc.driver.OracleDriver al intentar conectar LibreOffice con Oracle en Ubuntu [SOLUCION]'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-zkrIdaV-QUA/T96AdrpihVI/AAAAAAAAAIg/oM6Ssu2lv8c/s72-c/Base_error.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-1908419450736812801</id><published>2012-05-13T18:04:00.000-07:00</published><updated>2012-06-10T21:42:12.276-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="base"/><category scheme="http://www.blogger.com/atom/ns#" term="conectar"/><category scheme="http://www.blogger.com/atom/ns#" term="conexion"/><category scheme="http://www.blogger.com/atom/ns#" term="cubo"/><category scheme="http://www.blogger.com/atom/ns#" term="datos"/><category scheme="http://www.blogger.com/atom/ns#" term="driver"/><category scheme="http://www.blogger.com/atom/ns#" term="informacion"/><category scheme="http://www.blogger.com/atom/ns#" term="jbdc"/><category scheme="http://www.blogger.com/atom/ns#" term="libre"/><category scheme="http://www.blogger.com/atom/ns#" term="libreoffice"/><category scheme="http://www.blogger.com/atom/ns#" term="linux"/><category scheme="http://www.blogger.com/atom/ns#" term="office"/><category scheme="http://www.blogger.com/atom/ns#" term="oracle"/><category scheme="http://www.blogger.com/atom/ns#" term="ubuntu"/><title type='text'>Conectar LibreOffice con Oracle XE 10g en Linux</title><content type='html'>&lt;br /&gt;
Muchos o pocos han de conocer la utilidad de crear una hoja de cálculo cuyos datos sean provenientes de una base de datos. Generalmente se le conoce a esto como Cubos de Información y son bastante requeridos en las empresas para poder tomar decisiones o ver que rumbo llevan las que ya han sido tomadas. &lt;br /&gt;
&lt;br /&gt;
Asi que aqui explicaré como logré extraer datos de una base de datos en Oracle y crear una hoja dinamica en LibreOffice Calc. Aunque realicé esto en Ubuntu creo que también funcionaría en Windows.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;Para poder extraer datos de una base de datos en Oracle y presentarlos en una Hoja de Cálculo de LibreOffice Calc o cualquier otro uso que se le quiera dar en la suite LibreOffice se siguen los siguientes pasos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Abrimos LibreOffice Base y seleccionamos &quot;Conectar a una Base de Datos Existente&quot;.&lt;/li&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://4.bp.blogspot.com/-4hr-vibLpCI/T7BNgST7jeI/AAAAAAAAAGc/x6uxjmORdAI/s1600/Base_1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;200&quot; src=&quot;http://4.bp.blogspot.com/-4hr-vibLpCI/T7BNgST7jeI/AAAAAAAAAGc/x6uxjmORdAI/s320/Base_1.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;li&gt;En este paso es importante saber los datos de la base de datos.&lt;br /&gt;Nombre de la base de datos: XE&lt;br /&gt;Servidor: (deben colocar la dirección del servidor donde se encuentra la base de datos, en mi caso localhost)&lt;br /&gt;Puerto: Por defecto es 1521 pero debe escribirse el que se especificó en la configuracion del Oracle.&lt;/li&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://3.bp.blogspot.com/-qJUXEQZ08Xw/T7BPcf6D--I/AAAAAAAAAGk/zVSVGYkGCvM/s1600/Base_2.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;200&quot; src=&quot;http://3.bp.blogspot.com/-qJUXEQZ08Xw/T7BPcf6D--I/AAAAAAAAAGk/zVSVGYkGCvM/s320/Base_2.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;li&gt;En este paso se especifican los usuarios para el acceso a la base de datos; debemos escribir el nombre de usuario y seleccionar el CheckBox de &quot;Se requiere una contraseña&quot; si necesitaramos una para conectarnos a la base de datos.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;/li&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://2.bp.blogspot.com/-YWx9O4Hrtpw/T7BT0OplPlI/AAAAAAAAAGw/krwstVNvu9c/s1600/Base_3.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;200&quot; src=&quot;http://2.bp.blogspot.com/-YWx9O4Hrtpw/T7BT0OplPlI/AAAAAAAAAGw/krwstVNvu9c/s320/Base_3.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;li&gt;Hacemos Click en &quot;Conexión de Prueba&quot; para verificar que podemos conectarnos correctamente a la Base de Datos.&lt;/li&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://4.bp.blogspot.com/-SVcMRmaI5mQ/T7BT19pJN1I/AAAAAAAAAG4/bCm9RBoA_PM/s1600/Base_4.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;200&quot; src=&quot;http://4.bp.blogspot.com/-SVcMRmaI5mQ/T7BT19pJN1I/AAAAAAAAAG4/bCm9RBoA_PM/s320/Base_4.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;li&gt;Una vez obtenido una Conexión Exitosa, le damos siguiente y seleccionamos &quot;Sí, deseo registrar la base de datos&quot; (No es necesario que seleccionen que desean trabajar con la base de datos).&lt;/li&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://1.bp.blogspot.com/-nI9MpvxB8tI/T7BVQji_NUI/AAAAAAAAAHA/kz8BPyjsDrE/s1600/Base_5.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;200&quot; src=&quot;http://1.bp.blogspot.com/-nI9MpvxB8tI/T7BVQji_NUI/AAAAAAAAAHA/kz8BPyjsDrE/s320/Base_5.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;li&gt;Guardamos un archivo ODF, que sería la fuente de donde sacaremos los datos para usarlos en LibreOffice.&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora nos dirigimos a cualquiera de los programas de LibreOffice (en mi caso Calc) y seguimos los siguientes pasos:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Nos dirigimos a Datos-&amp;gt;Tabla de piloto de Datos-&amp;gt;Crear&lt;/li&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://3.bp.blogspot.com/-AGGRHfNIkPs/T7BZeMLlB9I/AAAAAAAAAH0/1UkQOD4jbk4/s1600/Calc_1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;200&quot; src=&quot;http://3.bp.blogspot.com/-AGGRHfNIkPs/T7BZeMLlB9I/AAAAAAAAAH0/1UkQOD4jbk4/s320/Calc_1.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;li&gt;Seleccionamos &quot;Fuente de datos registrada en LibreOffice&quot;&lt;/li&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://1.bp.blogspot.com/-2RLZ24B29c8/T7BZevAHtnI/AAAAAAAAAH8/8pyB4uRYqb0/s1600/calc_2.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;76&quot; src=&quot;http://1.bp.blogspot.com/-2RLZ24B29c8/T7BZevAHtnI/AAAAAAAAAH8/8pyB4uRYqb0/s320/calc_2.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;li&gt;En &quot;Base de Datos&quot; seleccionamos el nombre del documento ODF que guardamos (Nos pedira la contraseña para conectarlos a la base de datos)&lt;span id=&quot;goog_2130892804&quot;&gt;&lt;/span&gt;&lt;span id=&quot;goog_2130892805&quot;&gt;&lt;/span&gt;, en &quot;Fuente de Datos&quot; seleccionamos la tabla de la cual queremos extraer los datos y en &quot;Tipo&quot; lo dejamos como hoja (en mi caso tomare los datos de una Base de Datos Transaccional).&lt;/li&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://1.bp.blogspot.com/-dQk8M-gDsBE/T7BZfKJlgRI/AAAAAAAAAIE/cSAnRy0GvQ0/s1600/calc_3.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;63&quot; src=&quot;http://1.bp.blogspot.com/-dQk8M-gDsBE/T7BZfKJlgRI/AAAAAAAAAIE/cSAnRy0GvQ0/s320/calc_3.png&quot; style=&quot;cursor: move;&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;/ul&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Y listo, ya podemos trabajar con los datos almacenados en Oracle XE 10g.&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://3.bp.blogspot.com/-P7h42wrbNVU/T7BZfieHf6I/AAAAAAAAAIM/7pDWe3QkmcA/s1600/calc_4.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;149&quot; src=&quot;http://3.bp.blogspot.com/-P7h42wrbNVU/T7BZfieHf6I/AAAAAAAAAIM/7pDWe3QkmcA/s320/calc_4.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://3.bp.blogspot.com/-74qcBJwlXL4/T7BZgYDwLfI/AAAAAAAAAIU/tP66_RbxVTM/s1600/calc_5.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;180&quot; src=&quot;http://3.bp.blogspot.com/-74qcBJwlXL4/T7BZgYDwLfI/AAAAAAAAAIU/tP66_RbxVTM/s320/calc_5.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/1908419450736812801/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2012/05/conectar-libreoffice-con-oracle-xe-10g.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/1908419450736812801'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/1908419450736812801'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2012/05/conectar-libreoffice-con-oracle-xe-10g.html' title='Conectar LibreOffice con Oracle XE 10g en Linux'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-4hr-vibLpCI/T7BNgST7jeI/AAAAAAAAAGc/x6uxjmORdAI/s72-c/Base_1.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-6314954602675995160</id><published>2012-04-09T19:36:00.007-07:00</published><updated>2013-08-29T14:12:11.358-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="amigo"/><category scheme="http://www.blogger.com/atom/ns#" term="bloqueo"/><category scheme="http://www.blogger.com/atom/ns#" term="buscador"/><category scheme="http://www.blogger.com/atom/ns#" term="facebook"/><category scheme="http://www.blogger.com/atom/ns#" term="pagina"/><category scheme="http://www.blogger.com/atom/ns#" term="perfil"/><title type='text'>¿Cómo saber si me bloquearon en Facebook? [Ya No Aplica]</title><content type='html'>(Al parecer Facebook ya solventó esta vulnerabilidad, pero lo dejo como histórico)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En todo sistema hecho por humanos siempre hay errores, pero en el caso de la red social Facebook este no es necesariamente de programación, sino de políticas.&lt;br /&gt;
&lt;br /&gt;
Ahora explicare como saber si alguno de tus &quot;amigos&quot; te han bloqueado para que no puedas ver su perfil.&lt;br /&gt;
&lt;br /&gt;
Por ejemplo cuando tu intentas ingresar al perfil de esa persona te aparecerá un mensaje similar a este:&lt;a href=&quot;http://4.bp.blogspot.com/-4OfptiJVZ58/T4OctihEQpI/AAAAAAAAAF4/mABCN_4n-h8/s1600/Pantallazo.png&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; id=&quot;BLOGGER_PHOTO_ID_5729595457118945938&quot; src=&quot;http://4.bp.blogspot.com/-4OfptiJVZ58/T4OctihEQpI/AAAAAAAAAF4/mABCN_4n-h8/s320/Pantallazo.png&quot; style=&quot;display: block; height: 78px; margin: 0px auto 10px; text-align: center; width: 320px;&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;
Las razones por la que aparece este mensaje puede ser:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Cerró su perfil de Facebook&lt;/li&gt;
&lt;li&gt;Te bloqueó para que no pudieras ver su perfil&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
Asi que la pregunta sería: ¿Cómo saber si alguien me eliminó del Facebook?&lt;br /&gt;
Para determinar cual es la situación en este caso haremos lo siguiente:&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Usaremos nuestro perfil de Facebook como una página (si no tienes creala o pide que te nombren administrador de una)&lt;/li&gt;
&lt;li&gt;Buscaremos el perfil de esa persona ya sea con el link directo a su perfil ó a través del buscador.&lt;/li&gt;
&lt;/ol&gt;
&lt;a href=&quot;http://1.bp.blogspot.com/-B7I-L5lFKRU/T4OgHl49avI/AAAAAAAAAGQ/7b6lC2fQEb4/s1600/Pantallazo-2.png&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; id=&quot;BLOGGER_PHOTO_ID_5729599203235949298&quot; src=&quot;http://1.bp.blogspot.com/-B7I-L5lFKRU/T4OgHl49avI/AAAAAAAAAGQ/7b6lC2fQEb4/s400/Pantallazo-2.png&quot; style=&quot;cursor: hand; cursor: pointer; display: block; height: 160px; margin: 0px auto 10px; text-align: center; width: 400px;&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
Ahora si te aparece esa persona y puedes ver su perfil significa que te tenia bloqueado, y con este método podrias tener acceso a sus actualizaciones públicas.</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/6314954602675995160/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2012/04/tu-amigo-cerro-su-perfil-de-facebook-o.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/6314954602675995160'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/6314954602675995160'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2012/04/tu-amigo-cerro-su-perfil-de-facebook-o.html' title='¿Cómo saber si me bloquearon en Facebook? [Ya No Aplica]'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-4OfptiJVZ58/T4OctihEQpI/AAAAAAAAAF4/mABCN_4n-h8/s72-c/Pantallazo.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-5900041429024545670</id><published>2012-03-27T18:32:00.016-07:00</published><updated>2015-06-19T10:53:02.246-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="claro"/><category scheme="http://www.blogger.com/atom/ns#" term="clave"/><category scheme="http://www.blogger.com/atom/ns#" term="inalambrico"/><category scheme="http://www.blogger.com/atom/ns#" term="internet"/><category scheme="http://www.blogger.com/atom/ns#" term="turbonett"/><category scheme="http://www.blogger.com/atom/ns#" term="wep"/><category scheme="http://www.blogger.com/atom/ns#" term="wi-fi"/><category scheme="http://www.blogger.com/atom/ns#" term="wifi"/><title type='text'>Turbonett de Claro , podrías estar regalando tu Wi-fi [Clave por defecto de routers BroadTech]</title><content type='html'>Si tienes internet Claro en cualquiera de los paises centro americanos y tienes un router Broadtech (ver imagen) podrias estar siendo víctima del robo de tu ancho de banda.&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-vlN34uJoLp3VtszONFiIAQkmKK2V50ntOSj6wXII77HWkk5L9P_gU9pd6AoxtEV53P1YAcD-L1FodnQO2xic5goErztHkSBz8tBNNevlch40JFvdb0WmgKsH95O2f_q9KH2hJi_CmzQ/s1600/DSC04613.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;180&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-vlN34uJoLp3VtszONFiIAQkmKK2V50ntOSj6wXII77HWkk5L9P_gU9pd6AoxtEV53P1YAcD-L1FodnQO2xic5goErztHkSBz8tBNNevlch40JFvdb0WmgKsH95O2f_q9KH2hJi_CmzQ/s320/DSC04613.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;span style=&quot;font-size: 85%;&quot;&gt;Router Broadtech de Claro&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
La configuración de fábrica que traen estos routers no son beneficiosas para el usuario ya que desde el momento en que tienes activado Wi-fi si no cambias la configuración por defecto cualquier persona podría facilmente obtener la clave WEP y conectarse a tu red.&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
¿Pero cómo? .... en el caso de El Salvador el SSID por defecto de claro es TURBONETT pero para estos routers es TURBONETT_xxxxxx donde las x son cualquier dígito Hexadecimal (0-9 y A-F).&lt;br /&gt;
&lt;br /&gt;
Ahora el no tan secreto de obtener la clave para conectarnos por wi-fi es que esos números que aparecen en el nombre de la red son parte de la clave; y basta usar cualquier programa para la gestión de redes (en mi caso Wifi-Radar) para obtener la MAC y encontrar los dígitos que necesitamos para encontrar la WEP que son el segundo y tercer par de dígitos de la MAC.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://1.bp.blogspot.com/-0UXa95p1M3Q/T3JqSKdgFUI/AAAAAAAAAFU/HeXRhTdPEDw/s1600/wi-fi.jpg&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; id=&quot;BLOGGER_PHOTO_ID_5724754936619603266&quot; src=&quot;http://1.bp.blogspot.com/-0UXa95p1M3Q/T3JqSKdgFUI/AAAAAAAAAFU/HeXRhTdPEDw/s320/wi-fi.jpg&quot; style=&quot;display: block; height: 200px; margin: 0px auto 10px; text-align: center; width: 320px;&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
Ejemplo:&lt;br /&gt;
Tenemos la red con un SSID TURBONETT_123456  y en el programa nos aparece con la MAC 12:AA:EE:12:34:57 los dígitos que necesitamos son el AA y EE ahora tomamos esos dígitos y los agregamos al inicio de los números que aparecen en el nombre de la red (en nuestro caso 123456) y nos quedaría AAEE123456 y este número es la clave WEP de esa red.&lt;br /&gt;
&lt;br /&gt;
Otra forma de encontrar la WEP por defecto es tomando todos excepto el primer par de números de la MAC (en este caso AA:EE:12:34:57) y restarle 1 al ultimo par que nos quedaría AAEE123456.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Si aún tienes dudas, prueba esta herramienta que te ayudará a determinar la clave Wep por defecto de tu router en un paso: &lt;a href=&quot;http://blog.sorianocarlos.com/2013/09/herramienta-para-verificar-la-clave-por.html&quot; target=&quot;_blank&quot;&gt;http://blog.sorianocarlos.com/2013/09/herramienta-para-verificar-la-clave-por.html &lt;/a&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Asi que si posees unos de estos aparatos Broadtech cambies inmediatamente el nombre de tu red, la clave y el tipo de clave (WEP) ya que este tipo de encriptación tiene varias vulnerabilidades y la obtencion de la clave es bastante sencilla que cualquier persona sin mucho conocimiento de redes pero con un poco de paciencia y un software de auditoría de redes puede obtenerla.</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/5900041429024545670/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2012/03/turbonett-de-claro-podrias-estar.html#comment-form' title='228 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/5900041429024545670'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/5900041429024545670'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2012/03/turbonett-de-claro-podrias-estar.html' title='Turbonett de Claro , podrías estar regalando tu Wi-fi [Clave por defecto de routers BroadTech]'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-vlN34uJoLp3VtszONFiIAQkmKK2V50ntOSj6wXII77HWkk5L9P_gU9pd6AoxtEV53P1YAcD-L1FodnQO2xic5goErztHkSBz8tBNNevlch40JFvdb0WmgKsH95O2f_q9KH2hJi_CmzQ/s72-c/DSC04613.JPG" height="72" width="72"/><thr:total>228</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-7120992481859949117</id><published>2012-03-25T20:22:00.000-07:00</published><updated>2013-05-31T12:56:02.125-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="8086"/><category scheme="http://www.blogger.com/atom/ns#" term="assambler"/><category scheme="http://www.blogger.com/atom/ns#" term="binario"/><category scheme="http://www.blogger.com/atom/ns#" term="bit"/><category scheme="http://www.blogger.com/atom/ns#" term="ensamblador"/><category scheme="http://www.blogger.com/atom/ns#" term="hex"/><category scheme="http://www.blogger.com/atom/ns#" term="hexa"/><category scheme="http://www.blogger.com/atom/ns#" term="hexadecimal"/><category scheme="http://www.blogger.com/atom/ns#" term="intel"/><title type='text'>Convertir binario de 10 bits a Hexadecimal (Ensamblador para 8086)</title><content type='html'>Creo que este es el último programa que hago en el dia de hoy (espero poder dormir ya) y lo que hace este es convertir un numero binario con un maximo de 10 bits a su equivalente en Hexadecimal. Puede no sonar muy complicado (la verdad no lo es mucho ni en Assambler) pero salir de codificar de lenguajes de alto nivel como C++,Csharp a Ensamblador es un cambio fuerte aunque no dificil.&lt;br /&gt;&lt;br /&gt;Aqui les muestro el código que desarrolle hoy y cabe decir que no creo que sea la solución mas óptima pero si la que me sacó de aguas para poder ir a dormir ya!. Como siempre por falta de práctica el tiempo es mi peor enemigo para desarrollar estos programas.&lt;br /&gt;&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Si tienes una solución mas óptima agardeceria la compartieras ;)&lt;br /&gt;&lt;br /&gt;Que tengan un feliz inicio de semana.&lt;br /&gt;&lt;br /&gt;Haz Click en &quot;expand source&quot; para mostrar el código.&lt;br /&gt;&lt;pre class=&quot;brush:python;collapse:true&quot;&gt;.model smal&lt;br /&gt;.data&lt;br /&gt;welcome db &#39;Bienvenido, ingrese el numero binario (10 digitos obligatorios):&#39;,0Ah,0Dh,&#39;$&#39;&lt;br /&gt;error db &#39;Error numero incorrecto&#39;,0Ah,0Dh,&#39;$&#39;&lt;br /&gt;sig db &#39;Ingresar otro numero? (S o s para si / cualquier otra cosa para no): $&#39;&lt;br /&gt;congrats db &#39;El numero en hexa es: $&#39;&lt;br /&gt;doble db 0Ah,0Ah,0Dh,&#39;$&#39;;Doble Salto de linea&lt;br /&gt;cadena db &#39;          $&#39;&lt;br /&gt;digito1 db 00h&lt;br /&gt;digito2 db 00h&lt;br /&gt;digito3 db 00h&lt;br /&gt;.stack&lt;br /&gt;.code&lt;br /&gt;dar:                          &lt;br /&gt;mov ax,@data&lt;br /&gt;mov ds,ax&lt;br /&gt;mov digito1,00h&lt;br /&gt;mov digito2,00h&lt;br /&gt;mov digito3,00h&lt;br /&gt;;limpamos pantalla&lt;br /&gt;mov ah,06h&lt;br /&gt;mov al,0&lt;br /&gt;mov ch,0&lt;br /&gt;mov cl,0&lt;br /&gt;mov dh,24&lt;br /&gt;mov dl,79&lt;br /&gt;mov bh,0Fh&lt;br /&gt;int 10h&lt;br /&gt;mov ah,02h&lt;br /&gt;mov bh,0h&lt;br /&gt;mov dh,0&lt;br /&gt;mov dl,0&lt;br /&gt;int 10h&lt;br /&gt;;fin de limpieza&lt;br /&gt;lea dx,welcome&lt;br /&gt;call imprime&lt;br /&gt;&lt;br /&gt;mov si,0&lt;br /&gt;leer:&lt;br /&gt;call solicita&lt;br /&gt;mov cadena[si],al&lt;br /&gt;sub cadena[si],30h&lt;br /&gt;;Aqui verificamos que sea 1 o 0&lt;br /&gt;cmp cadena[si],0&lt;br /&gt;je continua&lt;br /&gt;cmp cadena[si],1&lt;br /&gt;jne err&lt;br /&gt;;fin de la comparacion&lt;br /&gt;&lt;br /&gt;continua:&lt;br /&gt;inc si&lt;br /&gt;cmp si,9d;mientras los digitos introducidos sean menores o iguales a 9 seguira leyendo&lt;br /&gt;jbe leer;Si ya leyo el digito 10 calcula&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;sub si,1;Decrementa 1 (el dato que incrementamos en la condicion anterior)&lt;br /&gt;calcula:&lt;br /&gt;;inicia el calculo de los primeros 4 bits&lt;br /&gt;mov ax,01h&lt;br /&gt;push ax&lt;br /&gt;mov cx,4&lt;br /&gt;pot1:&lt;br /&gt;mul cadena[si]&lt;br /&gt;add digito1,al&lt;br /&gt;dec si&lt;br /&gt;pop ax&lt;br /&gt;mov bx,0002h&lt;br /&gt;mul bx&lt;br /&gt;push ax&lt;br /&gt;loop pot1&lt;br /&gt;;finaliza calculo de los primeros 4bits&lt;br /&gt;;inicia el calculo de los segundos 4 bits&lt;br /&gt;mov ax,01h&lt;br /&gt;push ax&lt;br /&gt;mov cx,4&lt;br /&gt;pot2:&lt;br /&gt;mul cadena[si]&lt;br /&gt;add digito2,al&lt;br /&gt;dec si&lt;br /&gt;pop ax&lt;br /&gt;mov bx,0002h&lt;br /&gt;mul bx&lt;br /&gt;push ax&lt;br /&gt;loop pot2&lt;br /&gt;;finaliza calculo de los segundos 4bits&lt;br /&gt;;inicia el calculo de los ultimos 2 bits&lt;br /&gt;mov ax,01h&lt;br /&gt;push ax&lt;br /&gt;mov cx,2&lt;br /&gt;pot3:&lt;br /&gt;mul cadena[si]&lt;br /&gt;add digito3,al&lt;br /&gt;dec si&lt;br /&gt;pop ax&lt;br /&gt;mov bx,0002h&lt;br /&gt;mul bx&lt;br /&gt;push ax&lt;br /&gt;loop pot3&lt;br /&gt;;finaliza calculo de los ultimos 2 bits&lt;br /&gt;mov dl,digito3;convertimos el digito 3 a ascci&lt;br /&gt;call numero&lt;br /&gt;mov digito3,dl&lt;br /&gt;;convertimos el segundo digito a ascci&lt;br /&gt;mov dl,digito2&lt;br /&gt;cmp dl,0Ah&lt;br /&gt;jae c1;si es mayor a 10 lo convertimos a letra sino a numero&lt;br /&gt;call numero&lt;br /&gt;jmp f1&lt;br /&gt;c1:&lt;br /&gt;call letra&lt;br /&gt;f1:&lt;br /&gt;mov digito2,dl&lt;br /&gt;;fin de la conversion&lt;br /&gt;;convertimos el ultimo digito a ascci&lt;br /&gt;mov dl,digito1&lt;br /&gt;cmp dl,0Ah&lt;br /&gt;jae c2;si es mayor a 10 lo convertimos a letra sino a numero&lt;br /&gt;call numero&lt;br /&gt;jmp f2&lt;br /&gt;c2:&lt;br /&gt;call letra&lt;br /&gt;f2:&lt;br /&gt;mov digito1,dl&lt;br /&gt;;fin de la conversion&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;lea dx,doble&lt;br /&gt;call imprime&lt;br /&gt;lea dx,congrats; imprimimos el mensaje del resultado&lt;br /&gt;call imprime&lt;br /&gt;mov dl,digito3;Imprimimos el digito mas significativo&lt;br /&gt;call imprime_caracter&lt;br /&gt;mov dl,digito2; Imprimimos el segundo digito&lt;br /&gt;call imprime_caracter&lt;br /&gt;mov dl,digito1;imprime el ultimo digito&lt;br /&gt;call imprime_caracter&lt;br /&gt;jmp again;cuando lo calcule e imprima preguntara si quiere otro&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;err:;Mensaje de error&lt;br /&gt;lea dx,doble&lt;br /&gt;call imprime&lt;br /&gt;lea dx,error&lt;br /&gt;call imprime&lt;br /&gt;again:;Pregunta si quiere ingresar otro numero&lt;br /&gt;lea dx,doble&lt;br /&gt;call imprime&lt;br /&gt;lea dx,sig&lt;br /&gt;call imprime&lt;br /&gt;call solicita&lt;br /&gt;cmp al,53h&lt;br /&gt;jne k ;Si es S o s vuelve a la etiqueta inicio sino finaliza&lt;br /&gt;jmp dar&lt;br /&gt;k:&lt;br /&gt;cmp al,73h&lt;br /&gt;jne fin&lt;br /&gt;jmp dar&lt;br /&gt;&lt;br /&gt;fin:&lt;br /&gt;mov ax,4c00h&lt;br /&gt;int 21h&lt;br /&gt;&lt;br /&gt;solicita proc&lt;br /&gt;mov ah,01h&lt;br /&gt;int 21h&lt;br /&gt;ret&lt;br /&gt;endp&lt;br /&gt;&lt;br /&gt;imprime proc&lt;br /&gt;mov ah,09h&lt;br /&gt;int 21h&lt;br /&gt;ret&lt;br /&gt;endp&lt;br /&gt;&lt;br /&gt;imprime_caracter proc&lt;br /&gt;mov ah,02h&lt;br /&gt;int 21h&lt;br /&gt;ret&lt;br /&gt;endp&lt;br /&gt;&lt;br /&gt;numero proc ;procedimiento que convierte los numeros a Ascci&lt;br /&gt;add dl,30h&lt;br /&gt;ret&lt;br /&gt;endp&lt;br /&gt;&lt;br /&gt;letra proc ;Prodcedimiento que convierte las letras a ascci&lt;br /&gt;add dl,55d&lt;br /&gt;ret&lt;br /&gt;endp&lt;br /&gt;&lt;/pre&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/7120992481859949117/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2012/03/convertir-binario-de-10-bits.html#comment-form' title='6 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/7120992481859949117'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/7120992481859949117'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2012/03/convertir-binario-de-10-bits.html' title='Convertir binario de 10 bits a Hexadecimal (Ensamblador para 8086)'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-4342845475110239409</id><published>2012-03-25T15:45:00.000-07:00</published><updated>2013-05-31T12:56:02.146-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="#"/><category scheme="http://www.blogger.com/atom/ns#" term="abb"/><category scheme="http://www.blogger.com/atom/ns#" term="amplitud"/><category scheme="http://www.blogger.com/atom/ns#" term="arbol"/><category scheme="http://www.blogger.com/atom/ns#" term="c"/><category scheme="http://www.blogger.com/atom/ns#" term="datos"/><category scheme="http://www.blogger.com/atom/ns#" term="estructuras"/><category scheme="http://www.blogger.com/atom/ns#" term="linea"/><category scheme="http://www.blogger.com/atom/ns#" term="nodo"/><category scheme="http://www.blogger.com/atom/ns#" term="recorrido"/><category scheme="http://www.blogger.com/atom/ns#" term="sharp"/><category scheme="http://www.blogger.com/atom/ns#" term="simulador"/><category scheme="http://www.blogger.com/atom/ns#" term="visual"/><title type='text'>Simulador de Arbol ABB en Visual C#</title><content type='html'>Aqui presento un simulador de &lt;a href=&quot;http://www.blogger.com/es.wikipedia.org/wiki/%C3%83%C2%81rbol_binario_de_b%C3%83%C2%BAsquedav7nyMeuKK6ZUhQ&quot;&gt;Arbol ABB&lt;/a&gt; con las siguientes funciones:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Recorrido en Amplitud&lt;/li&gt;&lt;li&gt;Determinar Máximo y Mínimo&lt;/li&gt;&lt;li&gt;Altura del Arbol&lt;/li&gt;&lt;li&gt;Profundidad de un Nodo en específico&lt;/li&gt;&lt;li&gt;Determinar los nodos  hojas&lt;/li&gt;&lt;li&gt;Determinar los Nodos Intermedios&lt;/li&gt;&lt;li&gt;Insertar Nodo&lt;/li&gt;&lt;/ul&gt;Aqui   pongo el Proyecto para Visual C# y el ejecutable ya funcional en \bin\debug\ . Este código que he desarrollado no es el mas óptimo para este tipo de estructuras, sin embargo a la hora de ejecutar el programa funciona como debería. (Este proyecto no es tan eficiente por la falta de practica en este lenguaje por lo que lo considero mi &quot;Hola Mundo&quot; en Simulación y Estructuras de datos en C#).Recomiendo usarlo para una altura de arbol maxima de 4, porque de ahi en adelante no se aprecia bien el arbol en  su totalidad.&lt;br /&gt;&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Una de las mayores dificultades encontradas al desarrollar esto (ademas del tiempo) fueron lograr el &quot;retraso&quot; deseado para que se pudiera ver la simulación del recorrido que lo solucioné con &lt;a href=&quot;http://blog.sorianocarlos.com/2012/03/timer-para-efectos-visuales-en-c.html&quot; style=&quot;font-weight: bold;&quot;&gt;esto&lt;/a&gt;. Y el otro fue lograr dibujar las líneas que unieran los nodos.&lt;br /&gt;&lt;br /&gt;En este ultimo punto (en el cual aun no logro descubrir porque no me funcionan las soluciones mas habituales de internet) a lo que recurrí desesperadamente para poder dibujar las lineas fue:&lt;br /&gt;Como use un Panel para dibujar en el los nodos este crea el método  &lt;span style=&quot;font-size: 85%;&quot;&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;private void panel1_Paint(object sender, PaintEventArgs e)  &lt;/span&gt;&lt;/span&gt; en el cual se ejectuta todo lo que este dentro de el cada vez que se &quot;dibuja&quot; en el Formulario; y tambien cree la funcion &quot;pintar&quot; que recibe como parametros un objeto de tipo NodoT y un objeto de tipo PrintEventArgs. Al hacerlo asi me resulto mas facil dibuja&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class=&quot;brush:csharp&quot;&gt;public void pintar(NodoT Raiz, PaintEventArgs e)  {&lt;br /&gt;  Pen lapiz = new Pen(Color.Red, 2);&lt;br /&gt;  if (Raiz != null){&lt;br /&gt;      if (Raiz.NodoIzquierdo != null){&lt;br /&gt;          e.Graphics.DrawLine(lapiz, Raiz.t.Location.,Raiz.NodoIzquierdo.t.Location);&lt;br /&gt;          pintar(Raiz.NodoIzquierdo, e);&lt;br /&gt;       }&lt;br /&gt;      if (Raiz.NodoDerecho != null)&lt;br /&gt;      { &lt;br /&gt;         e.Graphics.DrawLine(lapiz, Raiz.t.Location,Raiz.NodoDerecho.t.Location);&lt;br /&gt;         pintar(Raiz.NodoDerecho, e);&lt;br /&gt;       }&lt;br /&gt;   }&lt;br /&gt;}&lt;/pre&gt;Y como no se aun como se usa la clase PrintEventArgs decidí llamar a Pintar dentro de panel1_Paint con el objeto PrintEventArgs de este.&lt;br /&gt;&lt;pre class=&quot;brush:csharp&quot;&gt; private void panel1_Paint(object sender, PaintEventArgs e)&lt;br /&gt;{&lt;br /&gt;  pintar(Raiz,e);&lt;br /&gt;}&lt;/pre&gt;&lt;br /&gt;Al hacerlo asi tambien me resultó mas facil dibujar las lineas de forma Recursiva.&lt;br /&gt;&lt;div style=&quot;color: #990000;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/goog_632152443&quot;&gt;&lt;br /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://dl.dropbox.com/u/22010646/Blog%20de%20Programacion/Arbol_abb.zip&quot;&gt;&lt;span style=&quot;color: #990000;&quot;&gt;Descargar Proyecto.&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a 20programacion=&quot;&quot; 22010646=&quot;&quot; com=&quot;&quot; descargar=&quot;&quot; href=&quot;http://dl.dropbox.com/u/22010646/Blog%20de%20Programacion/Arbol_abb.zip&quot; proyecto=&quot;&quot; u=&quot;&quot;&gt;&lt;span style=&quot;font-size: 85%; font-weight: bold;&quot;&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;Fuentes: &lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;a href=&quot;http://www.algoritmia.net/articles.php?id=17&quot;&gt;http://www.algoritmia.net/articles.php?id=17&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/4342845475110239409/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2012/03/simulador-de-arbol-abb-en-visual-c.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/4342845475110239409'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/4342845475110239409'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2012/03/simulador-de-arbol-abb-en-visual-c.html' title='Simulador de Arbol ABB en Visual C#'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-1691954262031439711</id><published>2012-03-24T22:48:00.010-07:00</published><updated>2012-06-10T21:44:23.263-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="c"/><category scheme="http://www.blogger.com/atom/ns#" term="delay"/><category scheme="http://www.blogger.com/atom/ns#" term="sharp"/><category scheme="http://www.blogger.com/atom/ns#" term="sleep"/><category scheme="http://www.blogger.com/atom/ns#" term="timer"/><title type='text'>Timer para efectos visuales en C#</title><content type='html'>Al querer hacer simulaciones simples en Visual C# nos encontramos con la necesidad de hacer un pequeño &quot;retraso&quot; para que cierto efecto visual sea perceptible para el usuario  (en el caso que despues de cierto evento este vuelva a la condición anterior en que se encontraba).&lt;br /&gt;
&lt;br /&gt;
Por ejemplo tener en un listbox N número de elementos en el y queremos que se seleccione el primer elemento(para resaltarlo) y que luego vuelva a su condición original cuando no estaba seleccionado para que siga con el mismo proceso en el elemento siguiente.&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;
Para controlar el tiempo de un estado a otro debemos usar el método Sleep() de la clase Thread,&lt;br /&gt;
para ello usamos la librería &lt;span style=&quot;font-size: 85%;&quot;&gt;&lt;span style=&quot;font-style: italic;&quot;&gt; System.Threading; &lt;/span&gt;&lt;/span&gt;en la cabecera del código y justo entre el cambio de estado usamos el método &lt;span style=&quot;font-size: 85%;&quot;&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;Thread.Sleep(ms);&lt;/span&gt;&lt;/span&gt; donde ms es el tiempo de espera en milisegundos.&lt;br /&gt;
&lt;br /&gt;
Pero ahora bien, cuando corremos el código notamos que la aplicacion se pausa el tiempo deseado pero no vemos el efecto visual que esperabamos en el Form, sino que al final del tiempo pareciera como si todo se hubiera ejecutado de una sola vez.&lt;br /&gt;
&lt;br /&gt;
Esto se soluciona agregando  &lt;span style=&quot;font-size: 85%;&quot;&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;Application.DoEvents();&lt;/span&gt;&lt;/span&gt; antes de la línea &lt;span style=&quot;font-size: 85%;&quot;&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;Thread.Sleep(ms); &lt;/span&gt;&lt;/span&gt;y veremos como el efecto si se aprecia correctamente. La única desventaja de este método es que mientras este corriendo el tiempo especificado en &lt;span style=&quot;font-size: 85%;&quot;&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;ms&lt;/span&gt;&lt;/span&gt; no podremos usar ningún control del Form ni mover la ventana y si cerramos la ventana mientras esta ejecutando el sleep quedara un proceso trabajando en segundo plano.&lt;br /&gt;
&lt;br /&gt;
Ejemplo:&lt;br /&gt;
&lt;pre class=&quot;brush:csharp&quot;&gt;textbox.BackColor=Color.Aqua;
Application.DoEvents();
Thread.Sleep(1000);
textbox.BackColor=Color.White;&lt;/pre&gt;
&lt;br /&gt;
En el anterior ejemplo cambiamos el color de fondo de un TextBox de blanco(por defecto) a Aqua durante 1 segundo y luego volvio al color blanco por defecto. Sin la linea Application.DoEvents() lo único que hubiera pasado es que se congela la ventana por 1 segundo y no se percibe el cambio de color.&lt;br /&gt;
&lt;br /&gt;
Tambien &lt;a href=&quot;http://programacion.sorianocarlos.com/2012/03/simulador-de-arbol-abb-en-visual-c.html&quot;&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;AQUI&lt;/span&gt;&lt;/a&gt; puedes ver un ejemplo del retardo al recorrer los textbox.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fuente: &lt;a href=&quot;http://msdn.microsoft.com/es-es/library/system.windows.forms.application.doevents.aspx&quot;&gt;http://msdn.microsoft.com/es-es/library/system.windows.forms.application.doevents.aspx&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/1691954262031439711/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2012/03/timer-para-efectos-visuales-en-c.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/1691954262031439711'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/1691954262031439711'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2012/03/timer-para-efectos-visuales-en-c.html' title='Timer para efectos visuales en C#'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-3759580038723526843</id><published>2012-03-13T13:50:00.004-07:00</published><updated>2012-03-13T14:35:48.249-07:00</updated><title type='text'>Hola Mundo</title><content type='html'>Bienvenidos a mi blog, donde publicaré los avances en mi aprendizaje, proyectos y cualquier otro tema con el propósito de documentar y registrar cada progreso realizado.&lt;br /&gt;&lt;br /&gt;Mas que todo escribiré sobre como hacer algunas cosas sin requerir configuraciones mas avanzadas, sino únicamente lo necesario para que algo funcione (poniendo en riesgo la seguridad pero se asume que es para un aprendizaje básico)....&lt;br /&gt;&lt;br /&gt;Espero no descontinuar este blog por la falta de tiempo xD mas que todo me doy la bienvenida a mi que seré quien leerá las entradas para futuras referencias.</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/3759580038723526843/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2012/03/hola-mundo.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/3759580038723526843'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/3759580038723526843'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2012/03/hola-mundo.html' title='Hola Mundo'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-8316406551095511038</id><published>2011-03-29T11:47:00.000-07:00</published><updated>2013-05-31T12:56:02.167-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="10"/><category scheme="http://www.blogger.com/atom/ns#" term="guia"/><category scheme="http://www.blogger.com/atom/ns#" term="guia10"/><title type='text'>Guia 10 Ejercicio 1</title><content type='html'>&lt;div&gt;&lt;b&gt;Ejercicio 1:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;Agregar una nueva derivación de Figuras con la clase Rombo, las propiedades que tendrá el&lt;/div&gt;&lt;div&gt;rombo son diagonal mayor y diagonal menor, el área del rombo es:&lt;/div&gt;&lt;div&gt;&lt;div&gt;Área Rombo = (Diagonal Mayor * Diagonal Menor) / 2&lt;/div&gt;&lt;div&gt;Realice las modificaciones necesarias al ejemplo No. 1, de tal manera que se construya una&lt;/div&gt;&lt;div&gt;solución para la jerarquía de clases mostrada en la Guia de laboratorio.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;&lt;b&gt;&lt;i&gt;&lt;a href=&quot;http://dl.dropbox.com/u/22010646/Blog%20de%20Programacion/Programacion%20II/Guia%2010/guia10ejercicio1.cpp&quot;&gt;Archivo CPP (codigo fuente)&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;http://dl.dropbox.com/u/22010646/Blog%20de%20Programacion/Programacion%20II/Guia%2010/guia10ejercicio1.exe&quot;&gt;Archivo .exe (Windows)&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;http://dl.dropbox.com/u/22010646/Blog%20de%20Programacion/Programacion%20II/Guia%2010/guia10ejercicio1&quot;&gt;Archivo Binario (Linux)&lt;/a&gt;&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;&lt;b&gt;Ejercicio 2:&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div style=&quot;font-size: large; font-weight: normal; &quot;&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;Considere la siguiente jerarquía de herencias:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;font-size: large; font-weight: normal; &quot;&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;&lt;b&gt;               &amp;lt;----Libros&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;&lt;b&gt;Biblioteca&amp;lt;---Revistas&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;&lt;b&gt;               &amp;lt;---Articulos&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;&lt;b&gt;&lt;div style=&quot;font-weight: normal; font-size: 16px; &quot;&gt;Definir las clases. Considerar todas las propiedades y funciones necesarias para una&lt;/div&gt;&lt;div style=&quot;font-weight: normal; font-size: 16px; &quot;&gt;implementación completa haciendo uso de funciones virtuales y polimorfismo. Decidir que&lt;/div&gt;&lt;div style=&quot;font-weight: normal; font-size: 16px; &quot;&gt;atributos y métodos incluir en cada clase de tal manera que su programa pueda a través de un&lt;/div&gt;&lt;div style=&quot;font-weight: normal; font-size: 16px; &quot;&gt;menú realizar las siguientes acciones:&lt;/div&gt;&lt;div style=&quot;font-weight: normal; font-size: 16px; &quot;&gt;a) Crear objetos de cualquier tipo, solicitando los datos al usuario.&lt;/div&gt;&lt;div style=&quot;font-weight: normal; font-size: 16px; &quot;&gt;b) Visualizar un objeto en particular, con todos sus atributos.&lt;/div&gt;&lt;div style=&quot;font-weight: normal; font-size: 16px; &quot;&gt;c) Salir de la aplicación.&lt;/div&gt;&lt;div style=&quot;font-weight: normal; font-size: 16px; &quot;&gt;Ser creativos con la solución, es decir, agregar más opciones al menú.&lt;/div&gt;&lt;div style=&quot;font-weight: normal; font-size: 16px; &quot;&gt;El menú deberá estar siempre activo, en la misma posición en pantalla, hasta que el usuario&lt;/div&gt;&lt;div style=&quot;font-weight: normal; font-size: 16px; &quot;&gt;seleccione la opción salir. El programa debe estar debidamente comentado.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-weight: normal; &quot;&gt;&lt;b&gt;&lt;i&gt;Archivo CPP (codigo fuente)&lt;br /&gt;Archivo .exe (Windows)&lt;br /&gt;Archivo Binario (Linux)&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-weight: normal; &quot;&gt;&lt;b&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-weight: normal; &quot; &gt;&lt;b&gt;&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-style: normal; font-weight: normal; &quot;&gt;&lt;b&gt;&lt;a href=&quot;http://www.udb.edu.sv/Academia/Laboratorios/informatica/Programacion%20II/guia10ProgII.pdf&quot;&gt;Guia de Laboratorio&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/8316406551095511038/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2011/03/guia-10-ejercicio-1.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/8316406551095511038'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/8316406551095511038'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2011/03/guia-10-ejercicio-1.html' title='Guia 10 Ejercicio 1'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-9102999218597487332</id><published>2011-03-22T17:07:00.000-07:00</published><updated>2013-05-31T12:56:02.189-07:00</updated><title type='text'>Tarea de Investigación</title><content type='html'>&lt;div&gt;PROBLEMA No. 1&lt;/div&gt;&lt;div&gt;Construir una solución que permita el manejo de números complejos. Un número complejo está&lt;/div&gt;&lt;div&gt;formado por dos partes: una parte real y una parte imaginaria, por ejemplo: 2.2 + 3.11 i; la parte real es&lt;/div&gt;&lt;div&gt;2.2 y la parte imaginaria es 3.11.&lt;/div&gt;&lt;div&gt;Puesto que un número complejo (a, b) es un par ordenado de números reales, puede representarse&lt;/div&gt;&lt;div&gt;geométricamente mediante un punto en el plano, es decir, mediante un vector.&lt;/div&gt;&lt;div&gt;De aquí se deduce que a + bi, número complejo en forma binómico, es equivalente a:&lt;/div&gt;&lt;div&gt;m (cos α + i sen β), número complejo en forma polar, lo que indica que:&lt;/div&gt;&lt;div&gt;a = m cos α y b = m sen α&lt;/div&gt;&lt;div&gt;El número positivo m = √a2 + b2 se denomina módulo o valor absoluto y el ángulo α = arc tg (b/a)&lt;/div&gt;&lt;div&gt;recibe el nombre de argumento.&lt;/div&gt;&lt;div&gt;Las operaciones que deben implementarse son:&lt;/div&gt;&lt;div&gt;a) Una función que permita inicializar un objeto de tipo Complejo.&lt;/div&gt;&lt;div&gt;b) Una función que permita la visualización del número complejo.&lt;/div&gt;&lt;div&gt;d) Operaciones aritméticas de números complejos: Suma, Resta, Multiplicación y División.&lt;/div&gt;&lt;div&gt;e) Convertir un número complejo de forma polar a binómica.&lt;/div&gt;&lt;div&gt;f) Comparar dos números complejos: Igual, Menor, Menor o igual, Mayor, Mayor o igual, distinto&lt;/div&gt;&lt;div&gt;de.&lt;/div&gt;&lt;div&gt;g) Operaciones trigonométricas con complejos: Seno, Coseno, Tangente.&lt;/div&gt;&lt;div&gt;h) Otras operaciones con complejos: Logaritmo natural, exponencial, potencia y raíz cuadrada.&lt;/div&gt;&lt;div&gt;i) Conjugado de números complejos.&lt;/div&gt;&lt;div&gt;j) Negativo de números complejos.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;&lt;a href=&quot;http://dl.dropbox.com/u/22010646/Blog%20de%20Programacion/Programacion%20II/Investigacion%20II/Investigacion%20II.cpp&quot;&gt;Archivo .cpp (Codigo fuente) &lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;a href=&quot;http://dl.dropbox.com/u/22010646/Blog%20de%20Programacion/Programacion%20II/Investigacion%20II/Investigacion%20II&quot;&gt;Archivo Binario (Linux)&lt;/a&gt;&lt;/div&gt;&lt;a href=&quot;http://dl.dropbox.com/u/22010646/Blog%20de%20Programacion/Programacion%20II/Investigacion%20II/Tareaprogra.exe&quot;&gt;Arhivo .exe (Windows)&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;http://dl.dropbox.com/u/22010646/Blog%20de%20Programacion/Programacion%20II/Investigacion%20II/analisis.pdf&quot;&gt;Parte de la lógica utilizada (PDF)&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/9102999218597487332/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2011/03/tarea-de-investigacion.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/9102999218597487332'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/9102999218597487332'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2011/03/tarea-de-investigacion.html' title='Tarea de Investigación'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-3407862267723912242</id><published>2011-03-01T10:04:00.000-08:00</published><updated>2013-05-31T12:56:02.210-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="2"/><category scheme="http://www.blogger.com/atom/ns#" term="guia7"/><category scheme="http://www.blogger.com/atom/ns#" term="II"/><category scheme="http://www.blogger.com/atom/ns#" term="programacion"/><title type='text'>Ejercicio 1 Guia 7</title><content type='html'>&lt;div&gt;Ejercicio 1&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;Modifique el código del ejemplo No. 2, de tal manera que la solución se maneje a través de un&lt;/div&gt;&lt;div&gt;menú que contenga las siguientes opciones:&lt;/div&gt;&lt;div&gt;a) Crear los objetos de tipo vector, solicitando los datos al usuario.&lt;/div&gt;&lt;div&gt;b) Realizar la suma de vectores.&lt;/div&gt;&lt;div&gt;c) Realizar la resta de vectores.&lt;/div&gt;&lt;div&gt;d) Realizar el producto escalar de vectores.&lt;/div&gt;&lt;div&gt;e) Salir de la aplicación.&lt;/div&gt;&lt;div&gt;El programa debe estar debidamente comentado.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;blockquote&gt;El ejemplo que menciona 2 esta en la guia que puedes descargar abajo&lt;/blockquote&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://www.udb.edu.sv/Academia/Laboratorios/informatica/Programacion%20II/guia7ProgII.pdf&quot;&gt;Guia completa&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;Archivos:&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://dl.dropbox.com/u/22010646/Blog%20de%20Programacion/Programacion%20II/Guia%207/Ejercicio1.cpp&quot;&gt;Archivo cpp (Código fuente)&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;a href=&quot;http://dl.dropbox.com/u/22010646/Blog%20de%20Programacion/Programacion%20II/Guia%207/ejercicio1&quot;&gt;Archivo Binario para Linux&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;a href=&quot;http://dl.dropbox.com/u/22010646/Blog%20de%20Programacion/Programacion%20II/Guia%207/Ejercicio1.exe&quot;&gt;Archivo .exe&lt;/a&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/3407862267723912242/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2011/03/ejercicio-1-guia-7.html#comment-form' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/3407862267723912242'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/3407862267723912242'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2011/03/ejercicio-1-guia-7.html' title='Ejercicio 1 Guia 7'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-692521949805258698.post-2177658930188940368</id><published>2011-02-28T18:08:00.000-08:00</published><updated>2013-05-31T12:56:02.221-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="2"/><category scheme="http://www.blogger.com/atom/ns#" term="guia6"/><category scheme="http://www.blogger.com/atom/ns#" term="II"/><category scheme="http://www.blogger.com/atom/ns#" term="programacion"/><title type='text'>Guia 6 Programacion II</title><content type='html'>&lt;div&gt;Investigación&lt;/div&gt;&lt;div&gt;Complementaria&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Escribir un programa en C++ que simule la operación de una gasolinera haciendo uso de&lt;/div&gt;&lt;div&gt;punteros a objetos y el puntero this.&lt;/div&gt;&lt;div&gt;La gasolinera debe manejar al menos 6 bombas de combustible y cada bomba manejará tres&lt;/div&gt;&lt;div&gt;tipos de combustibles.&lt;/div&gt;&lt;div&gt;Los tipos de combustibles que se manejarán serán: Gasolina Especial, Gasolina Regular,&lt;/div&gt;&lt;div&gt;Diesel&lt;/div&gt;&lt;div&gt;En cualquier momento durante la simulación deberíamos poder determinar, a partir de la&lt;/div&gt;&lt;div&gt;bomba seleccionada, el precio por galón de combustible y la cantidad restante en el tanque de&lt;/div&gt;&lt;div&gt;suministro. Si la cantidad de combustible en el tanque de suministro es mayor o igual que la&lt;/div&gt;&lt;div&gt;&lt;div&gt;cantidad de combustible solicitada, la solicitud debe despacharse; de lo contrario, solo deberá&lt;/div&gt;&lt;div&gt;usarse la cantidad disponible en el tanque de suministro.&lt;/div&gt;&lt;div&gt;Una vez que se ha bombeado el combustible, deberá desplegarse el precio total de los&lt;/div&gt;&lt;div&gt;galones surtidos y la cantidad de combustible en galones que se ha bombeado deberá&lt;/div&gt;&lt;div&gt;restarse de la cantidad sobrante en el tanque.&lt;/div&gt;&lt;div&gt;Para la simulación suponga que la capacidad de las bombas es la siguiente:&lt;/div&gt;&lt;div&gt;Para gasolina especial: 600 galones y el precio por galón es de $3.95.&lt;/div&gt;&lt;div&gt;Para gasolina regular: 800 galones y el precio por galón es de $3.50.&lt;/div&gt;&lt;div&gt;Para diesel: 800 galones y el precio por galón es de $3.25.&lt;/div&gt;&lt;div&gt;Deberá considerarse un menú con las siguientes opciones:&lt;/div&gt;&lt;div&gt;a) Verificar el nivel de combustible de una bomba en particular.&lt;/div&gt;&lt;div&gt;b) Verificar el precio por galón. Aquí deberá considerarse la opción de poder cambiar el&lt;/div&gt;&lt;div&gt;precio por galón del combustible en cualquier momento.&lt;/div&gt;&lt;div&gt;c) Surtir un pedido solicitado en un monto de dinero( por ejemplo: $15.00)&lt;/div&gt;&lt;div&gt;d) Surtir un pedido solicitado en número de galones( por ejemplo: 5 galones)&lt;/div&gt;&lt;div&gt;e) Salir de la aplicación.&lt;/div&gt;&lt;div&gt;El programa debe estar debidamente comentado.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href=&quot;http://www.udb.edu.sv/Academia/Laboratorios/informatica/Programacion%20II/guia6ProgII.pdf&quot;&gt;Link a la guia completa&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href=&quot;http://dl.dropbox.com/u/22010646/Blog%20de%20Programacion/Programacion%20II/Guia%206/Ejercicio.cpp&quot;&gt;Archivo cpp&lt;/a&gt; (Código fuente)&lt;/div&gt;&lt;div&gt;&lt;a href=&quot;http://dl.dropbox.com/u/22010646/Blog%20de%20Programacion/Programacion%20II/Guia%206/ejercicio&quot;&gt;Archivo Binario para Linux&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;a href=&quot;http://dl.dropbox.com/u/22010646/Blog%20de%20Programacion/Programacion%20II/Guia%206/Ejercicio.exe&quot;&gt;Archivo .exe&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Avisenme si les da algun error ;)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.sorianocarlos.com/feeds/2177658930188940368/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://blog.sorianocarlos.com/2011/02/guia-6-programacion-ii.html#comment-form' title='5 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/2177658930188940368'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/692521949805258698/posts/default/2177658930188940368'/><link rel='alternate' type='text/html' href='http://blog.sorianocarlos.com/2011/02/guia-6-programacion-ii.html' title='Guia 6 Programacion II'/><author><name>Carlos Soriano</name><uri>http://www.blogger.com/profile/08026189405683863692</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>5</thr:total></entry></feed>