Render Cafetera

Un render del diseño de la cafetera para que se entienda un poco mejor:



Cafetera

Este es un diseño que alguna vez hicimos para una cafetera:









Redireccionar blog

Muchas veces estamos trabajando en nuestro blog y no queremos que los visitantes vean como va sufriendo transformaciones que muchas veces fallan y el blog queda patas para arriba. Para eso podemos redireccionar nuestro blog a una imagen que diga "En construcción" o a otro sitio.

Para eso agremamos:


<script>
location.href='URLdelaRedirección';
</script>

Desbloquear o bloquear el navbar (barra navegación superior)

Algunas plantillas tienen el navbar bloqueado, y para desbloquearlo tenemos que eliminar el siguiente código:

#navbar-iframe {
height:0px;
visibility:hidden;
display:none;
}


En cambio si lo que estamos buscando es bloquear el navbar agregamos el mismo código dentro del <body>

Para ponerle un efecto al navbar, para que aparezca y desaparezca al cruzar el mouse por encima (mouseover) de manera gradual agregamos el siguiente segmento de código antes del </head>:

<script src='http://www.google.com/jsapi'/><script>
  google.load("prototype", "1.6.0.2");
  google.load("scriptaculous", "1.8.1");
</script>
<script type="text/javascript">
function navbarShow() {
new Effect.Opacity('navbar-iframe', {duration:0.5, from:0.0, to:1.0});
}
function navbarHide() {
new Effect.Opacity('navbar-iframe', {duration:0.5, from:1.0, to:0.0});
}
function navbarHack() {
Event.observe('navbar-iframe', 'mouseover', navbarShow, false);
Event.observe('navbar-iframe', 'mouseout', navbarHide, false);
navbarHide();
}
Event.observe(window, 'load', navbarHack, false);
</script>

Seguir leyendo con Scriptaculous (slide)

En Diseño>>Edición HTML colocar por única vez antes del </head>

<script type='text/javascript' src='http://www.google.com/jsapi'></script>
<script type='text/javascript'>
google.load("prototype","1.6.0.3");
google.load("scriptaculous", "1.8.2");
</script>


Luego en cada post que necesitemos incluir un "Seguir leyendo" ponemos lo siguiente:

<a href='URLDeLaEntrada' onclick='Effect.toggle("NombreDeLaEntrada","slide"); return false'>Seguir leyendo</a><div id='NombreDeLaEntrada' style='display: none;'>

Aquí la parte oculta de la entrada

</div>


Los valores que tendremos que modificar son:
NombreDeLaEntrada: por el título de la entrada en donde incluyamos el seguir leyendo. Noten que es necesario ponerlo en los dos lugares, y tienen que ser iguales.
URLDeLaEntrada: como dice la dirección única que se le asigna cuando posteamos, por eso hay que publicar primero la entrada luego copiamos la dirección y agregamos el seguir leyendo.

Cambiar favicon

El favicon es la imagen pequeña que aparece al lado de la barra del navegador, como la B naranja y blanca de blogger.

Buscamos la siguiente línea:
<title><data:blog.pageTitle/></title>



Antes de ella pegamos la siguiente con la dirección del nuevo favicon:
<link href='http://sitio.com/favicon.ico' rel='shortcut icon' type='image/x-icon'/>

La imagen del favicon tiene que tener algunas características:



*Dimensiones 16 píxeles x 16 píxeles;
*16 colores (4 bits);
* Formato ICO, no BMP, no GIF, no JPG.


Puede que algunos navegadores acepten de tamaños mayores, pero para el buen funcionamiento se recomiendan esos datos.
Existen editores de favicones como este.

Ayudando a SoloMochila

Nuestro blog de viajes y anécdotas amigo.. SoloMochila, está cumpliendo sus primeros tres primeros (duplica) meses de publicaciones en la web de la blogosfera.. por lo que vamos a colaborar con él.. y le vamos a hacer un pequeño regalo de cumpleaños..

Que consta no más ni menos.. que un pequeño tutorial para que todos aquellos que tienen facebook puedan ver un resumen de las entradas publicadas en su muro, como una especie de feeds.. que en verdad es lo que es...

Consta de 8 pasos muy simples:

1-Una vez iniciada la sesión en facebook, vamos a "Notas" y luego "Escribir una nota nueva".


2- En el panel de la nueva entrada escribimos cualquier cosa solo de muestra y hacemos click en "publicar".


3- Volvemos a aceptar el mensaje haciendo click en "publicar".


4- Volvemos al "perfil" y nos aparecerá la nota que recién escribimos, hacemos click en "opciones".



5- En donde decía "opciones" ahora va a aparecer "Configuración", hacemos click.



6-  Hacemos click sobre el logo naranja de "Blog/RSS", de blogger.


7-  Y ahora ingresamos en "URL pública" el siguiente link "http://feeds.feedburner.com/SoloMochila "que es el feeds del blog, e "importar"... y ya casi estamos..





8- Como último paso.. ahora podemos leer y enterarnos de las nuevas publicaciones del blog desde nuestro muro de facebook.



***Un detalle más... puede ser que al principio en el muro les aparezca una lista con todos los mensajes, eso es porque exporta todas las entradas antiguas, al principio puede ser una molestia, pero en un rato con las actividad de sus amigos se van a ir acomodando hasta desaparecer.

Optimizar título (mejora búsqueda)

Para poder mejorar las búsquedas en nuestros blogs, por parte de los buscadores, debemos comenzar con esto.

En Diseño >> Edición HTML, buscamos la siguiente línea (con ctrl+f abre el buscador, es más fácil de encontrarlo)

<title><data:blog.pageTitle/></title>

Y la reemplazamos por la siguiente:

<b:if cond="data:blog.pageType == "item"">
<title> : </title>
<b:else>
<title></title>
</b:else>
</b:if>

Inicializar Plantilla

Los temas que vamos a tratar son:

  • Dar de alta en buscadores y demás.
  • Optimizar título (mejora búsqueda)
  • Cambiar favicon
  • Seguir leyendo con Scriptaculous (slide)
  • Bajar columnas (para ver la foto superior entera)
  • Desbloquear el navbar (barra navegación superior)
  • Redireccionar blog

Y algún otro elemento que vamos a ir agregando a medida que se nos cruce por la cabeza..

Entramos en actividad..

Luego de un merecido descanso entramos nuevamente en actividad por tiempo y temas indeterminados...


Inauguramos una nueva sección.. donde vamos a ir poniendo todas las "inicializaciones básicas", como las llamamos nosotros, para cuando creamos un nuevo blog o cambiamos de plantillas...

Todos esos pequeños trucos que hacen tanto a la buena funcionalidad del blog como al control de como están reaccionando las visitas...

y bueno.. así comenzamos...

Descansando

Y nos fuimos de vacaciones infinitas, quien sabe donde..... pero no dejes de visitar:

(...todos tus viajes...)

Lo recomendamos....


Closed...

Y nos fuimos de vacaciones infinitas, quien sabe donde..... pero no dejes de visitar:

(...todos tus viajes...)

Lo recomendamos....



Vacaciones.................

Y nos fuimos de vacaciones infinitas, quien sabe donde..... pero no dejes de visitar:

(...todos tus viajes...)

Lo recomendamos....

Seguimos cansados

Y nos fuimos de vacaciones infinitas, quien sabe donde..... pero no dejes de visitar:

(...todos tus viajes...)

Lo recomendamos....


tanto tanto..

Y nos fuimos de vacaciones infinitas, quien sabe donde..... pero no dejes de visitar:

(...todos tus viajes...)

Lo recomendamos....

Mucho mucho..

Y nos fuimos de vacaciones infinitas, quien sabe donde..... pero no dejes de visitar:

(...todos tus viajes...)

Lo recomendamos....

ocho acostado

Y nos fuimos de vacaciones infinitas, quien sabe donde..... pero no dejes de visitar:

(...todos tus viajes...)

Lo recomendamos....

Infinitas

Y nos fuimos de vacaciones infinitas, quien sabe donde..... pero no dejes de visitar:

(...todos tus viajes...)

Lo recomendamos....


Eternas

Y nos fuimos de vacaciones infinitas, quien sabe donde..... pero no dejes de visitar:

(...todos tus viajes...)

Lo recomendamos....


Vacaciones eternas

Y nos fuimos de vacaciones infinitas, quien sabe donde..... pero no dejes de visitar:

(...todos tus viajes...)

Lo recomendamos....


Frases

Vivir ocupado, deseando tiempo libre...

Curso antiayuda Peto Menahem

Cerrado por vacaciones

Y nos fuimos de vacaciones infinitas, quien sabe donde..... pero no dejes de visitar:

(...todos tus viajes...)

Lo recomendamos....


La sartén de Einstein

Se cuenta que un día un periodista le preguntó a Einstein:
“¿Me puede Ud. explicar la Ley de la Relatividad?” y Einstein le contestó “
¿Me puede Ud. explicar cómo se fríe un huevo?”.El periodista lo miró extrañado y le contestó: “Pues, sí, sí que puedo”, a lo cual Einstein replicó:
“Bueno, pues hágalo, pero imaginando que yo no se lo que es un huevo, ni una sartén, ni el aceite, ni el fuego”.

Carl Friedrich Gauss

Estaba Carl Friedrich Gauss allá por el año 1787 en la escuela. Tenía unos 10 años de edad. Con esa edad pasó lo que tenía que pasar, todos los niños empezaron a tirarse papeles, tizas, etc. En ese momento apareció el profesor y cabreado como estaba, ordenó a todos los niños que, como castigo, le sumaran todos los números del 1 al 100.
El profesor debió pensar: ¡que idea mas buena he tenido!. ¡Durante un buen rato, me dejarán todos estos mocosos en paz!.A los pocos minutos, nuestro pequeño genio se levantó del pupitre, y entregó la respuesta correcta: 5050.

El profesor, asombrado, debió pensar que había puesto un número al azar, y se dispuso él mismo a hacer la interminable suma. Al cabo de un buen rato, comprobó que, efectivamente, la suma pedida era 5050.No es que Gauss fuera un calculador extraordinario, capaz de hacer sumas a la velocidad de un ordenador moderno. Gauss llegaría a ser uno de los mejores matemáticos de la historia, y los matemáticos no calculan: piensan...
Lo que hizo Gauss fue lo siguiente:Tenía que sumar los siguientes números:1+2+3+4+5+6+7+8+9+.....................................+95+96+97+98+99+100
Pero nadie le obligaba a sumarlos por orden. Gauss se percató de un hecho singular: si agrupaba los número por parejas, tomando el primero y el último, el segundo y el penúltimo, etc., tenía lo siguiente:Es decir, todos los pares de números sumaban 101. Como entre el uno y el 100 podía hacer 50 pares con esa propiedad, 50 X 101 =5050.
Mas tarde, aplicaría este mismo principio para hallar la suma de la serie geométrica y muchas otras series.

El Hotel Infinito de Hilbert

El gran matemático alemán David Hilbert nació el 23 de enero de 1862 en Königsberg (Prusia Oriental). Se lo reconoce mundialmente como uno de los matemáticos más influyentes del siglo XIX y principios del XX, y ha contribuido a esa ciencia desarrollando conceptos como la teoría de invariantes, la axiomatización de la geometría y la noción de espacio de Hilbert, uno de los fundamentos del análisis funcional. Hizo aportes significativos a la infraestructura matemática necesaria para la mecánica cuántica y la relatividad general, e incluso algunos historiadores sostienen que descubrió las ecuaciones correctas para la relatividad general antes que Einstein, aunque esto nunca ha sido probado. En 1900 presentó un conjunto de 23 problemas matemáticos que establecieron el curso de gran parte de la investigación matemática del siglo XX. Parte de su trabajo se relacionó con la teoría de conjuntos y los números transfinitos de Cantor, explicando algunas de las paradojas del infinito, en las que ya había reparado Galileo.

Para explicar los conceptos relacionados con el infinito, Hilbert utilizaba a menudo el ejemplo de un hotel muy especial, uno que contaba con infinitas habitaciones. Hilbert imaginó un hotel con infinitas habitaciones numeradas 1, 2, 3, 4... y así hasta el infinito. Lo primero que tenemos que recordar es que “infinito” no significa “un número grande”. Si fuese así, siempre podríamos encontrar un número algo mayor (“un número grande” +1) que lo superase. Aclarado esto, podemos intentar comprender las paradojas que plantea el Gran Hotel de Hilbert.
¿Son infinitas las partículas que componen el universo?
¿Son infinitas las partículas que componen el universo?


Infinito + 1
Imaginemos que una noche de tormenta llega al hotel de infinitas habitaciones un viajero con evidentes intenciones de alojarse en él, pero se encuentra con un cartel en la puerta que avisa que está completo. De todos modos, decide entrar y ver si hay alguna posibilidad de pasar la noche resguardado de la lluvia. Rápidamente, la recepcionista -posiblemente una matemática consumada- encuentra una solución: le pide al cliente de la habitación 1 que se cambie a la 2, al de la 2 que pase a la 3, y así sucesivamente. Cuando todos los pasajeros se han movido de habitación, la primera queda disponible para el recién llegado. Uno podría preguntarse qué ocurrió con el pasajero que se encontraba en el último cuarto, ya que en un hotel convencional se hubiese quedado sin lugar. Sin embargo, en el Gran Hotel de Hilbert no hay algo así como “último cuarto”, por lo que ese problema no existe. El infinito siempre admite “un lugar más” al final.

Este mecanismo de correr a los pasajeros hacia los cuartos con números más grandes puede aplicarse todas las veces que sea necesario para alojar cualquier número extra de pasajeros. Si llegasen 10, 20 o 256.345 pasajeros, bastaría con desplazar ese número de cuartos a cada una de las personas alojadas, y asunto resuelto. Pero ¿qué pasaría si al hotel, ya completo, llegasen infinitos pasajeros más?

Hotel infinito, pasajeros infinitos
Hilbert contaba que un día -estando su hotel lleno con infinitos huéspedes- llegó el representante de una agencia de viajes con un problema. Tenia una excursión compuesta por infinitos turistas que necesitaban hospedarse esa noche en el hotel, y así se lo planteo a la astuta recepcionista. No podia recurrir al truco anterior, ya que los pasajeros a desplazar nunca hubiesen terminado de recorrer los infinitamente largos pasillos del hotel para llegar a sus nuevas habitaciones. Sin embargo, pudo resolver el problema. Simplemente, pidió a todos los huéspedes que se mudaran a la habitación correspondiente al resultado de multiplicar por 2 el número de su habitación actual. De esa forma todos los huéspedes se mudaron a una habitación par, y las infinitas habitaciones impares quedaron libres. Así, los infinitos turistas pudieron alojarse sin problemas. ¿No es asombroso?

Hotel infinito y pasajeros infinitos en autobuses infinitos
Así planteado, parecería que el hotel no puede llenarse nunca. Imaginemos por un momento que al Gran Hotel llegasen infinitos autobuses con infinitos pasajeros cada uno. ¿Podríamos alojarlos en un hotel que “solo” tuviese infinitas habitaciones? El problema exigió que la inteligente recepcionista demorase un par de segundos en encontrar una solución. Se acomodó las gafas, se arrimó al intercomunicador, y le pidió a todos los pasajeros que se encontraban en una habitación cuyo número fuese primo (números solo divisibles por si mismos o por la unidad), o alguna potencia de estos, que calculasen el resultado de elevar el número 2 a la potencia correspondiente al número de la habitación en la que se encontraban y se cambiasen a esa habitación. Esto provocó algún que otro revuelo entre los pasajeros, pero finalmente todos los implicados en el cambio llegaron a su nueva habitación.

Hecho esto, la recepcionista sonrío con aires de suficiencia y asignó a cada uno de los autobuses un número primo (distinto de 1), y a cada uno de los turistas de cada una de las excursiones un número impar. Hizo que cada uno de los nuevos pasajeros calculasen el numero de habitación que le correspondía elevando el número primo correspondiente a su autobús al número impar que le tocó. Dado que existe una cantidad infinito de números primos, y un número infinito de números impares, se logró hospedar a un número infinito de infinitos huéspedes dentro de un hotel que “solo” tiene un número infinito de habitaciones.

Números transfinitos
El relato anterior podría inducir a pensar que no puede haber un infinito mayor que otro. Pero no es así. Georg Cantor (1845-1918), otro matemático alemán, descubrió que los conjuntos infinitos no tienen siempre el mismo tamaño o -matemáticamente hablando- no tienen el mismo cardinal. Por ejemplo, el conjunto de los racionales es numerable, es decir, del mismo tamaño que el conjunto de los naturales, mientras que el de los reales no lo es. Existen, por lo tanto, varios infinitos, más grandes los unos que los otros. Entre estos infinitos, incluso los hay tan grandes que no tienen correspondencia en el mundo real. Estos infinitos componen la “terrible dinastía” -como la denominó el escritor argentino Jorge Luis Borges- de los números transfinitos. Cantor designo estos “infinitos grados de infinitud” con la letra hebrea álef (de allí el título del famoso cuento de Borges) y los correspondientes subíndices. Álef subcero (o álef-0) es el simple infinito de los números naturales, que Hilbert utilizó como base para las paradojas de su Gran Hotel. Álef-1 es el infinito de los números reales, que incluyen a los irracionales y los trascendentes, como pi, y no son numerables. Existen infinitos “Álef”, y constituyen un concepto cuya comprensión suele demandar unas cuantas horas de meditación por parte de los simples mortales.

David Hilbert falleció el 14 de febrero de 1943 en Göttingen, Alemania, y dicen que su espíritu suele aparecerse por las noches en alguna de las infinitas habitaciones de su Gran Hotel.

Frases

Ser impaciente y esperar...

Curso antiayuda Peto Menahem

La primera ciudad del mundo abastecida con estiércol

Los caminos de las energías renovables son inescrutables. La humanidad se encuentra tan acorralada con las desventajas de los combustibles fósiles que no paran de inventar nuevas vías para seguir disfrutando de una energía barata. La ciencia ha recorrido todo el espectro de posibilidades, desde la luz del sol, hasta la fuerza de las mareas, pasando por el viento, el calor de la tierra y otras muchas que tratan de posicionarse como alternativas reales al petróleo. Pues bien, Lünen, una ciudad de unos 90.000 habitantes, situada al norte de Dortmund(Alemania), se va a convertir pronto en la primera del mundo que conseguirá abastecerse de energía utilizando biogás. Lo llamativo del asunto es que este gas no proviene de grandes bolsas subterráneas, sino del vientre del ganado. Hablando claro: de sus excrementos.
¿Cómo se obtiene el biogás? Se trata simplemente de la descomposición natural del detritus orgánico. La creación y utilización del biogás de manera artificial se remonta a la segunda guerra árabe-israelí, a mediados de los años setenta del siglo XX, cuando el precio del petróleo subió ostensiblemente al ser utilizado como arma política, lo que hizo que se investigasen otras posibilidades de producir energía. Este proceso desprende una mezcla de gases que surge gracias a microorganismos anaerobios, es decir, sin presencia de oxígeno, que descomponen la materia orgánica. Las bacterias consumen el carbono y el nitrógeno y como resultado se produce una combinación de gases formado por un 70% de metano, 20% de anhídrido carbónico y un poco de monóxido de carbono y anhídrido sulfuroso.

El biogás obtenido mediante este proceso será quemado en una planta de cogeneración para que pueda generar calor y electricidad. La planta podría producir 6.8 megavatios de energía verde, que es suficiente para abastecer alrededor de 26.000 hogares. El biogás actualmente se está usando en todo el mundo de modo experimental pero las autoridades locales aseguran que la pequeña ciudad de Lünen tendrá el honor de ser la primera del planeta que conseguirá abastecerse de modo regular con el biogás generado de las deposiciones de los animales de granja. El sustento energético de la población se efectuará mediante una red de biogás que pretenden llevar a cabo a la mayor brevedad en la forma de un gasoducto subterráneo. El calor generado durante el proceso será distribuido en toda la ciudad y podrá dar abasto al 30-40 % del total de la población.
Las ventajas del biogás son muchas, pues además de generar electricidad sin agravar el problema del calentamiento global del planeta, también elimina los residuos orgánicos que produce la naturaleza (ganado, plantas muertas, etc). Las desventajas podrían ser que este tipo de energía se presta a los entornos rurales antes que a los urbanos y, además, que producen gases nocivos (aunque en muy poca cantidad), como el ácido sulfhídrico que hay que eliminar. De todos modos, Lünen ya está lista para producir su biogás y no te extrañe que les dediquen algún monumento a sus útiles animales de granja.

Quien iba a decir que una cosa tan sucia produciría una energía tan limpia.

Frases

...Algunas cosas las hace el hombre, y otras el hambre...

Profesor Web

Fujitsu Venus: El procesador más rápido del mundo

El procesador en cuestión fue bautizado como "Venus", un nombre que puede no ser muy original pero es mucho más agradable que el SPARC64 VIIIfx que tuvo al principio. La presentación fue llevada a cabo en el "Fujitsu Forum 2009", y la única imagen que ha trascendido los medios nos muestra a un procesador significativamente más grande de lo que hemos vista hasta ahora. Sin embargo, el tamaño físico no es lo único grande en este procesador. Su capacidad, de acuerdo a sus desarrolladores, puede alcanzar un pico máximo de 128 Gigaflops, aproximadamente dos veces y medio el poder de procesamiento del mejor exponente de Intel en existencia


.
Ahora, nosotros los usuarios tal vez estemos acostumbrados a ver los logros de Fujitsu a través de otros productos y componentes, como son discos duros y ordenadores portátiles, pero lo cierto es que Fujitsu ha demostrado tener una gran experiencia en la fabricación de procesadores y ordeandores de alto poder. Es más, su súperordenador "Numerical Wind Tunnel" fue primero en la lista de los 500 ordenadores más poderosos del mundo entre 1993 y 1996, lo cual no es poco.

El procesador ha sido fabricado con tecnología de 45 nm, y cuenta con un total de ocho núcleos. Como si eso fuera poco, Fujitsu ha declarado que Venus requiere solamente un tercio de la energía que necesita el mejor chip de Intel. Hasta el momento se desconocen otros detalles como la cantidad de caché y las propiedades de su zócalo, pero pocas dudas quedan de que Venus es el procesador más poderoso del planeta. Aún no se tiene una idea específica de las aplicaciones prácticas del procesador (y podría demandar varios años determinarlas), sin embargo se especula que Venus podría tener un uso intensivo en campos como la medicina, en el desarrollo de nuevas drogas. Además, un detalle no menos importante: Fujitsu ha dicho que la posibilidad de adaptar esta tecnología para crear procesadores de consumo general, "no ha sido descartada".

Calculadora números complejos

Este, no es más que una calculadora. Lo interesante, es que se trata de números complejos, como 10+5i, por ejemplo.. con un menú de opciones.

#include 'cstdlib'
#include 'iostream'
#include 'stdio.h'
#include 'math.h'

struct complejo tpolar (struct complejo);
struct complejo trectangular(struct complejo);
struct complejo bsuma (struct complejo, struct complejo);
struct complejo fpotencia (struct complejo, float);
struct complejo fproducto (struct complejo, struct complejo);
struct complejo { float a, b; };
struct complejo fdivision (struct complejo, struct complejo);

int main(void)
{
int opcion;
printf ("\t\t\t\tNUMEROS COMPLEJOS\n\n");
printf ("Seleccione la operacion que quiera realizar\n\n");
printf ("1-Pasaje de forma rectangular a forma polar\n");
printf ("2-Pasaje de forma polar a forma rectangular\n");
printf ("3-Sumar dos numeros complejos. Nota: Ingrese los valores en forma rectangular\n");
printf ("4-Multiplicar dos numeros complejos. Nota: Ingrese los valores en forma polar\n");
printf ("5-Dividir dos numeros complejos. Nota: Ingrese los valores en forma polar\n");
printf ("6-Potenciacion. Nota: Ingrese los valores en forma polar\n\n");
printf ("Nota: La fase de los numero complejos debera ser ingresada en radianes y sera devuelta tambien en radianes \n\n");
scanf ("%d", &opcion);
switch (opcion)
{
case 1 :
printf ("\n1-PASAJE DE FORMA RECTANGULAR A FORMA POLAR\n\n");
struct complejo fpolar, frectangular;
printf ("Ingrese la parte real del numero complejo:");
scanf ("%f", &frectangular.a);
printf ("Ingrese la parte imaginaria de numero complejo:");
scanf ("%f", &frectangular.b);
fpolar = tpolar (frectangular);
printf ("\nEl modulo del numero complejo es =%f\n", fpolar.a);
printf ("La fase del numero complejo es =%f\n\n", fpolar.b);
system("PAUSE");
return EXIT_SUCCESS;

break ;

case 2 :
printf ("\n2-PASAJE DE FORMA POLAR A FORMA RECTANGULAR\n\n");
struct complejo frec, fpol;
printf ("Ingrese el modulo de numero complejo:");
scanf ("%f", &fpol.a);
printf ("Ingrese la fase de numero complejo:");
scanf ("%f", &fpol.b);
frec = trectangular (fpol);
printf ("\nLa parte imaginaria del numero complejo es =%f\n", frec.a);
printf ("La parte real del numero complejo es =%f\n\n", frec.b);
system("PAUSE");
return EXIT_SUCCESS;

break ;

case 3 :
printf ("\n3-SUMAR DOS NUMEROS COMPLEJOS\n\n");
struct complejo z2p,z1p, csuma;
printf ("Ingrese la parte real del primer numero complejo:");
scanf ("%f", &z1p.a);
printf ("Ingrese la parte imaginaria del primer numero complejo:");
scanf ("%f", &z1p.b);
printf ("\nIngrese la parte real del segundo numero complejo:");
scanf ("%f", &z2p.a);
printf ("Ingrese la parte imaginaria del segundo numero complejo:");
scanf ("%f", &z2p.b);
csuma = bsuma (z1p, z2p);
printf ("\nEl resultado es= %f +j%f\n\n", csuma.a,csuma.b);
system("PAUSE");
return EXIT_SUCCESS;

break ;

case 4 :
printf ("\n4-MULTIPLICAR DOS NUMEROS COMPLEJOS\n\n");
struct complejo z2pa,z1pa, producto;
printf ("Ingrese el modulo del primer numero complejo:");
scanf ("%f", &z1pa.a);
printf ("Ingrese la fase del primer numero complejo:");
scanf ("%f", &z1pa.b);
printf ("\nIngrese el modulo del segundo numero complejo:");
scanf ("%f", &z2pa.a);
printf ("Ingrese la fase del segundo numero complejo:");
scanf ("%f", &z2pa.b);
producto = fproducto (z1pa, z2pa);
printf ("\nEl resultado del producto es= Modulo= %f Fase=%f\n\n", producto.a,producto.b);
system("PAUSE");
return EXIT_SUCCESS;

break ;

case 5 :
printf ("\n5-DIVIDIR DOS NUMEROS COMPLEJOS\n\n");
struct complejo z2pb,z1pb, division;
printf ("Ingrese el modulo del primer numero complejo:");
scanf ("%f", &z1pb.a);
printf ("Ingrese la fase del primer numero complejo:");
scanf ("%f", &z1pb.b);
printf ("\nIngrese el modulo del segundo numero complejo:");
scanf ("%f", &z2pb.a);
printf ("Ingrese la fase del segundo numero complejo:");
scanf ("%f", &z2pb.b);
division = fdivision (z1pb, z2pb);
printf ("\nEl resultado de la division es= Modulo= %f Fase=%f\n\n", division.a,division.b);
system("PAUSE");
return EXIT_SUCCESS;

break ;

case 6 :
printf ("\n6-POTENCIACION\n\n");
struct complejo z1pc, potencia;
float exponencial;
printf ("Ingrese el modulo del numero complejo:");
scanf ("%f", &z1pc.a);
printf ("Ingrese la fase del primer numero complejo:");
scanf ("%f", &z1pc.b);
printf ("\nIngrese el exponencial:");
scanf ("%f", &exponencial);
potencia = fpotencia (z1pc, exponencial);
printf ("\nEl resultado de la operacion es= Modulo= %f Fase=%f\n\n", potencia.a,potencia.b);
system("PAUSE");
return EXIT_SUCCESS;

break ;

default : printf ("\nNo corresponde a ninguna opcion dada\n\n");

}

system("PAUSE");
return EXIT_SUCCESS;

}
struct complejo tpolar (struct complejo z)

{
float g,h,s,d;
struct complejo w;
g= pow (z.a,2);
h= pow (z.b,2);
s=g+h;
w.a = sqrt (s);
d=z.a/z.b;
w.b= atan (d);

return (w);

}
struct complejo trectangular (struct complejo z)

{
float c,d;
struct complejo w;
c = cos (z.b);
w.a = c * z.a;
d = sin(z.b);
w.b = d * z.a;
return (w);

}
struct complejo bsuma (struct complejo x, struct complejo y)

{
struct complejo w;
w.a= x.a + y.a;
w.b= x.b + y.b;
return (w);
}
struct complejo fproducto (struct complejo x, struct complejo y)

{
struct complejo w;
w.a = x.a * y.a;
w.b = x.b + y.b;
return (w);
}
struct complejo fdivision (struct complejo x, struct complejo y)

{
struct complejo w;
w.a = x.a / y.a;
w.b = x.b - y.b;
return (w);
}
struct complejo fpotencia (struct complejo x, float y)

{
struct complejo w;
w.a = pow (x.a, y);
w.b = x.b * y;
return (w);
}

Par, Impar, Cero

Este código lo que realiza, es detectar, si el número introducido por pantalla, es par, impar o cero. Lo presenta en forma de un byte, utilizando los bits, como flags para indicar el tipo de número.

#include
#include
#include



int main(void)
{
int numero, paridad,alu,peso;
char cero, positividad;
printf("Ingrese un numero entero:");
scanf("%d",&numero);
if (numero==0)
{
cero=(char)0X2;//Obtiene cero=0x4 o no cero=0x0.
}
else
{
paridad=(char)numero&1; //Obtiene paridad par=0x0, impar=0x1.
if(numero>=0)
{
positividad=(char)0;//Obtiene positivo=0x0.
}
else
{
positividad=(char)0X4;//Obtiene negativo=0x10.
}
}
alu=cero+positividad+paridad;//Junta la información en un byte para la alu.
for (peso=128;peso!=0;peso>>=1)//Lo traduce a binario.
{
if (peso<=alu)//pregunta por el orden de pesos de los caracteres.
{
printf("1");//imprime un 1 si el peso corresponde.
alu=alu-peso;//disminuye el peso para la próxima evaluación.
}
else
{
printf("0");//si el 1 no corresponde rellena con 0.
}
}
printf("\n");
printf("1er bit: par=0 impar=1\n");
printf("2do bit cero: v=1 f=0\n");
printf("3er bit: 0>=0 0<=1\n");
printf("\n");

system("PAUSE");
return EXIT_SUCCESS;
}
//1er bit: par=0 impar=1
//2do bit cero: v=1 f=0
//3er bit: 0>=0 0<=1

Frases

...La palabra con sangre, entra...

Profesor Análisis Matemático II

Descomponer un número en factores primos

Como sabemos, todos los números se pueden descomponer en una sucesión de números primos, y este programa hace eso. Recordamos que los números primos son aquellos que solo se puede dividir por si mismo, dando como resultado un número entero.

#include
#include

int main(void)
{
int cont,numero;
printf("Ingrese un numero entero para descomponer en factores primos:");
scanf("%d",&numero);
if (numero<0) //valida que el número ingresado no sea negativo.
{
printf("%d no es valido.\n",numero);
}
if (numero==1) //arregla el detalle de que todos los números son divisibles por 1
{
printf("1 es primo.\n");
}
else
{

while (numero!=1)//Cuando el resultado es 1 termina de descomponer
{
for (cont=2;cont<=numero;cont+=1)//realiza la división por todos los números menores
{
if (numero%cont==0)//Si una división tiene resto cero imprime
{
printf("%d\t|%d\n",numero,cont);
numero=numero/cont;//Cambia por el resultado de la división de resto cero
break;
}
}
}
printf("%d\t|\n",numero);
}
system("PAUSE");
return EXIT_SUCCESS;
}

Racional a fracción

En este caso, el programa se encarga, de devolver en pantalla, un número expresado en forma de fracción, el cual se introduce previamente en forma racional.

#include
#include
#include

int main(void)
{
float racional,Y;
int decimales,denominador,numerador,mult,densimp,numsimp,Z,X;

denominador=1;
printf("Ingrese un numero racional:");//Pide racional.
scanf("%f",&racional);
for(decimales=-1,Z=1;Y!=X;decimales+=1,Z*=10)//Obtiene cantidad de decimales.
{
Y=(racional*Z);
X=((int)Y);
}
for (mult=1;mult<=decimales;mult++,denominador*=10)//Multiplica por 10 como tantos decimales tenga.
{
}
numerador=(int)(racional*denominador);//Obtiene el numerador multiplicado.
printf("%f = %d\/%d",racional,numerador,denominador);//Fracción del racional.
while (numerador%2==0 && denominador%2==0)//Simplifica por 2.
{
numsimp=(int)(numerador/2);
densimp=(int)(denominador/2);
numerador=numsimp;
denominador=densimp;
}
while (numerador%5==0 && denominador%5==0)//Simplifica por 5.
{
numsimp=(int)(numerador/5);
densimp=(int)(denominador/5);
numerador=numsimp;
denominador=densimp;
}
printf("= %d\/%d\n",numerador,denominador);//Fracción mínima expresión.
system("PAUSE");
return EXIT_SUCCESS;
}

Escribe número decimal en binario

Como dice el título, este programita, lo que hace es cambiar los sistemas de numeración. Ya que el C ansii, no posee un formato binario, nos servirá cuando necesitemos analizar alguna variable.

#include
#include

int main(void)
{
int dato,anterior,peso;
printf("Ingrese un numero entero decimal positivo:\t");//Pide dato
scanf("%d", &dato);
if (dato>99999 || dato<0)//Pregunta por overflow y cero
{
printf("FUERA DE RANGO\n");
}
else
{
anterior=dato;//conserva el numero ingresado y trabaja con la copia
for (peso=65536;peso!=0;peso>>=1)
{
if (peso<=anterior)//pregunta por el orden de pesos de los caracteres
{
printf("1");//imprime un 1 si el peso corresponde
anterior=anterior-peso;//disminuye el peso para la próxima evaluación
}
else
{
printf("0");//si el 1 no corresponde rellena con 0
}
}
printf("\n");
}
system("PAUSE");
return EXIT_SUCCESS;
}

Cabio de bit (0 por 1 y 1por 0)

Es código lo que hace es el complemento de un número. Es decir, intercambia, los bits 0 por los 1, y los 1 por los ceros. Siempre hablando en números binarios (base 2).


#include
#include


int main(void)
{
int numero,anterior,peso,inverso;
printf("ingrese un numero positivo:");
scanf("%d",&numero);
if (numero>65535 || numero<0)//Pregunta por overflow y cero
{
printf("FUERA DE RANGO\n");
}
else
{
anterior=numero;//conserva el numero ingresado y trabaja con la copia
for (peso=32768;peso!=0;peso>>=1)
{
if (peso<=anterior)//pregunta por el orden de pesos de los caracteres
{
printf("1");//imprime un 1 si el peso corresponde
anterior=anterior-peso;//disminuye el peso para la próxima evaluación
}
else
{
printf("0");//si el 1 no corresponde rellena con 0
}
}
printf("\n");
}
anterior=65535-numero;//conserva el numero ingresado y trabaja con la copia
for (peso=32768;peso!=0;peso>>=1)
{
if (peso<=anterior)//pregunta por el orden de pesos de los caracteres
{
printf("1");//imprime un 1 si el peso corresponde
anterior=anterior-peso;//disminuye el peso para la próxima evaluación
}
else
{
printf("0");//si el 1 no corresponde rellena con 0
}
}
printf("\n");
system("PAUSE");
return EXIT_SUCCESS;
}

Numero decimal a romano

En este ejemplo, se toma un número decimal ingresado por pantalla y devuelve, el número ingresado escrito en números romanos.

#include
#include

int main(void)
{

/*Numeros Romanos
I=1
V=5
X=10
L=50
C=100
D=500
M=1000*/
int N;
printf("ingrese numero decimal:");
scanf("%d",&N);
while(N!=0)
{
switch (N)
{
case N>=1000;
printf("M");
N=N-1000;
break;
case N>=500 && N<1000:
printf("D");
N=N-500;
break;
case N>=100 && N<500:
printf("C");
N=N-100;
break;
case N>=50 && N<100:
printf("L");
N=N-50;
break;
case N>=10 && N<50:
printf("X");
N=N-10;
break;
case N>=5 && N<10:
printf("V");
N=N-5;
break;
case N>=1 && N<5:
printf("I");
N=N-1;
break;
}
system ("PAUSE");
exit(0);
}


A la búsqueda de la fotosíntesis artificial para obtener hidrógeno

Un centenar de investigadores de trece universidades de seis países europeos trabajan en la producción de hidrógeno mediante el programa Solar-H, coordinado por la universidad sueca de Uppsala.

Trabajan en dos grandes líneas. La biomimética o copiar a la naturaleza para conseguir fotosíntesis artificial y la producción de hidrógeno mediante organismos vivos.

hidrogeno.jpg

Descripción del diseño de la investigación: Dos líneas principales para lograr la formación de hidrógeno a partir de energía solar y agua. En la línea biológica, se usa biología molecular para desarrollar y mejorar las cianobacterias fotosintéticas para biorreactores. Imagen: Consorcio de la fotosíntesis artificial.

El cianobacterio (alga verde) es idóneo, ya que "resiste temperaturas bajo cero y hasta 70 grados positivos", explicó Matthias Rögner, de la Ruhr Universidad de Bochum, al diario El Punt.

Los investigadores concluyen hoy un encuentro en Cambrils (Tarragona) y el balance es positivo. Calculan que en unos 10 años, "podremos ser capaces, a través de procesos articulados, de generar la reacción que transforme el agua en hidrógeno y oxígeno. Acudimos a la naturaleza para ver cómo lo hace", resumió Stenbjörn Styring, coordinador del proyecto.

Fuente

Batería magnética revolucionaria

El futuro se presenta en forma de cambio de paradigma para las baterías. Hasta ahora, los sistemas de almacenamiento de electricidad mas comunes funcionaban de modo químico pero gracias a un grupo de científicos se han plantado las semillas de lo que podría ser una verdadera revolución: las baterías magnéticas. Con ellas dispondremos de energía rápida y duradera. Solo hay que esperar a que madure la tecnología para poder disponer de una auténtica revolución.Estamos tan habituados a las baterías actuales que hemos olvidado la idea de que se puede almacenar energía de otras maneras. Día tras día, las baterías aumentan su rendimiento y bajan su precio, pero mantienen algo inalterable: su proceso químico. Se cambian materiales, se aplican nanotecnologías, de optimizan reacciones y se estudian nuevas combinaciones de estos elementos, pero siempre en formato químico. Un grupo de investigación de la Universidad de Miami en coordinación con otro de la Universidad de Tokio y Tohoku, han publicado en la prestigiosa revista Nature un interesante trabajo que abre un nuevo campo de estudio en el mundo del almacenamiento energético. Demuestran que es posible construir una batería que utilice un spin magnético para cargarse, de modo parecido a como lo hacen los discos duros que tan conocidos nos resultan. Dicho sistema almacenaría energía solo con aplicarle un campo magnético, que luego puede extraerse de la misma manera, convirtiendo este sistema en un espléndido almacén de electricidad. El secreto de esta tecnología estriba en el uso de nano-imanes, que permiten aprovechar este efecto de “spin battery” para dejará atrás cualquier tipo de reacción química y prescinde también de cualquier parte móvil que pudieran tener las baterías tradicionales. Además, se prevee que se recarguen de modo casi instantáneo.

Los puntos blancos son los átomos y los circulos blancos los nano-imanes

El dispositivo que ha servido de experimento apenas tiene el tamaño de un cabello humano. Recordemos que estamos hablando de nanotecnología, pero el físico Stewart Barnes afirma que aunque la energía generada ahora mismo apenas ha sido suficiente para encender un pequeño LED, se han hecho cálculos que permiten especular que dentro de poco tiempo, ese mismo dispositivo proporcionará electricidad para mover un coche unos kilómetros. Si ampliamos el sistema al tamaño de una batería normal, el automóvil podría recorrer miles de kilómetros sin tener que recargar. Barnes afirma que las posibilidades de esta revolucionaria tecnología son infinitas y que llevarán a un cambio total en la concepción energética del mundo actual. Imaginen lo que podría hacerse con una batería microscópica que aguante varios días alimentando un dispositivo de tamaño considerable. O hasta donde podemos llegar a poco que aumentemos el tamaño de la batería. Realmente, esta tecnología promete. Las baterías químicas quizá estén llegando ya a su techo de rendimiento, sin embargo, las magnéticas solo han hecho que comenzar su andadura.

Fuente

Baterías recargables con celdas solares

Muchos utilizamos baterías recargables en lugar de pilas comunes por una cuestión de ahorro. En efecto, a pesar de que el costo inicial puede ser un poco (o bastante) más alto, las baterías tienen la ventaja de poder recargarse cientos de veces, lo que en definitiva las hace muchísimo más económicas que las pilas tradicionales. El uso de baterías también reduce el impacto que tiene sobre la naturaleza escuchar MP3 o ver vídeos en el tren, ya que descartaremos un par de baterías cada 12 o 18 meses en lugar de dos pilas cada dos o tres días.Pero las baterías siguen teniendo una pega: deben ser recargadas. Esto implica el uso de una fuente de energía eléctrica, cuyo origen posiblemente haya sido una central que quema algún combustible fósil para funcionar. Y, de pronto, ya no nos parece una alternativa tan ecológica. Sin embargo, uno de los integrantes de esta clase especial de humanos que pasan sus días pensando que pueden inventar, Knut Karlsen, ha encontrado una muy elegante solución. En lugar de utilizar un cargador común, recarga sus baterías con celdas solares. Sí, seguramente has visto decenas de cargadores solares en el mercado. Pero Knut ha ido un paso más allá, incluyendo las celdas solares en el mismo cuerpo de las baterías, lo que hace innecesario el uso de cargadores.
Según explica Karlsen, la inspiración apareció cuando supo que una empresa estaba desarrollando células solares flexibles. Esta característica las hacía aptas para su uso en la superficie de un montón de objetos que no eran planos, baterías cilíndricas incluidas. Ni corto ni perezoso, solicitó unas muestras gratis al fabricante, y se puso manos a la obra. El resultado es el que ves en las fotografías: baterías convencionales recubiertas por una delgada célula solar. Tan fina que no interfieren con su uso normal, ya que siguen entrando en sus gadgets sin problemas. Ahora, cuando las baterías de Knut se descargan, simplemente las saca de su cachivache y las deja unas horas al sol. Los pesados e incómodos cargadores forman parte de su pasado. Le basta con llevar un par de sus ejemplares recargables con energía solar de repuesto, como para seguir alimentando sus cosas mientras recarga las que se han agotado.

Fecha UNIX 1234567890

El día Viernes 13 de Febrero a las 23:31:30 UTC será el momento en que el UNIX Time llegue al número 1234567890.

Como sabrán el UNIX Time (POSIX Time o UNIX epoch) es un sistema para describir fechas que utilizan todos los sistemas UNIX, sus derivados y otros, que consiste en representarlas a partir de la cantidad de segundos transcurridos desde el 1 de Enero de 1970 UTC sin contar los segundos intercalares. Una de las grandes ventajas que tiene este sistema, y que cualquiera que haya programado algo alguna vez en su vida seguramente conozca, es que permite comparar fechas sencillamente.

El problema que tiene es que en los sistemas UNIX de 32 bits la fecha del sistema se almacena en un entero con signo de 32 bits, lo cual implica que el límite superior correspondería a las 03:14:07 UTC del Martes 19 de Enero de 2038. En los sistemas de 64 bits la fecha ya se almacena en enteros de 64 bits, con lo cual según Alan Cox el reinicio del UNIX epoch llegará después de que se haya apagado el sol jeje.

fuente

Ar-tecnológico

Si sos estudiante de cualquier Universidad o Escuela Secundaria de la Ciudad de Buenos Aires y Gran Buenos Aires, no podés dejar pasar esta oportunidad.

¡Microsoft te invita a participar del Concurso Ar-tecnológico para que demuestres tu talento!



Microsoft te invita a participar del Concurso Ar-tecnológico: la consigna es diseñar una obra de arte a partir de un mouse, una webcam, un teclado o cualquier otro accesorio de PC que interprete el concepto "Arte y Tecnología".
Además, podés ganarte fabulosos premios y exhibir tu obra en la Galería de Arte "Objeto a", ubicada en Niceto Vega 5181, Palermo, Ciudad de Buenos Aires.
1° Premio: $5.000
2° Premio: Kit de accesorios Microsoft Hardware
3° Premio: Kit de accesorios Microsoft Hardware

Registrate desde el 01/12/08 al 31/03/09 en

Promoción válida en el territorio de la Ciudad de Buenos Aires y Gran Buenos Aires, para personas físicas mayores de 15 años entre el 1ro de diciembre de 2008 y el 31 de marzo de 2009. Consulte bases y condiciones en www.microsoft.com/argentina/hardware/ar-tecnologico.
Premios: 1° premio: $5.000; 2° premio: 1 kit de accesorios Microsoft Hardware consistente en un mouse, un teclado, una webcam, un auricular, una caja de Office 2007 Hogar y Estudiantes y Office 2008 para Mac Hogar y Estudiantes ; 3° premio: 1 kit de accesorios Microsoft Hardware consistente en un mouse, un teclado, una webcam y un auricular.













SDXC ¡¡Tarjetaza de 2 TB!!

Aún estoy peinándome los pelos de la nuca. Lo que acaban de anunciar la SD Association (SDA) hace saltar las bolillas de los ojos al tipo más templado. Se trata de las tarjetas de memoria extraíbles de la nueva generación llamada SDXC, que en teoría pued

en alcanzar los 2 TB de capacidad y una velocidad de lectura/escritura de hasta 300 MB/s. Una tarjeta de memoria SDXC de 2 TB puede almacenar 100 películas de alta definición, 60 horas de grabación de alta definición, 4.000 fotos en RAW ó 17.000 fotografías de primera calidad. La especificación SDXC utiliza el sistema de archivos exFAT de Microsoft para respaldar su extensa capacidad e interoperabilidad en una amplia gama de computadoras personales, artículos electrónicos de consumo y teléfonos celulares. El sistema exFAT se diseñó para brindar una mayor compatibilidad con medios flash, desde la portabilidad de datos hasta la interoperabilidad con múltiples plataformas y dispositivos en medios extraíbles. Y lo mejor de todo esto es que no estamos hablando de tecnologías de almacenamiento cuántico que vete a saber tú cuando las comercializan (si es que alguna vez lo consiguen).

Lo que muestran en el CES se trata de una realidad palpable, si bien es un estándar nuevo y aún tardará algo de tiempo en salir al mercado. Pero saldrá. Y pronto. De eso no hay ya ninguna duda. Tampoco esperéis precios para seres humanos. Al menos hasta que pasen unos años y la tecnología se masifique y se abarate en consecuencia. Hay que resaltar que aunque técnicamente las tarjetas SDHC soportan también 2 TB la asociación definió un límite de 32 GB para ellas y a una ridícula velocidad de 6 MB/s. Así que fijaros lo que se nos viene encima, porque Sandisk y Sony se han picado y ha presentado en respuesta su Expand Memory Stick Pro, también con un tope teórico de 2 TB pero con sólo 60 MB/s. Con tantísimas gigas a nuestra disposición y con una velocidad similar a la de los discos duros nos acercamos definitivamente al paraíso terrenal.

Las tarjetas SD se consolidan en todos los ámbitos electrónicos

La SD Association es un ecosistema global compuesto de más de 1.100 empresas de tecnología encargadas de establecer estándares SD interoperables. La asociación fomenta el desarrollo de artículos electrónicos de consumo, productos de comunicaciones inalámbricas, procesamiento de imágenes digitales y redes que utilizan la tecnología SD líder en el mercado. El estándar SD es la opción número uno para los consumidores y ha obtenido casi el 80% del mercado de tarjetas de memoria gracias a su interoperabilidad confiable y a su formato fácil de usar. En la actualidad, los teléfonos celulares, los reproductores Blu-ray, la televisión de alta definición (HDTV), los reproductores de audio, los sistemas multimedia para automóviles, las computadoras portátiles, las cámaras y las videocámaras ofrecen la interoperabilidad SD. Las especificaciones para el estándar abierto se publicarán durante el primer trimestre de 2009. Las especificaciones SDHC, SD incorporado y SDIO también se verán beneficiadas con las nuevas velocidades de la interfaz SD.

La inmensa mayoría de dispositivos existentes no soportarán el SDXC, pero algunos fabricantes lanzarán actualizaciones de firmware que las harán compatibles lo más pronto posible. Aunque está claro que aún es demasiado pronto para disponer de los 2 TB, Panasonic ya planea lanzar la primera tarjeta del mercado con 64 GB y alrededor de 104 MB/s de velocidad. Obsérvese que con semejante memoria, supera incluso a los Blu-ray, que andan por los 50 GB de máximo. Ya decíamos que a estos sistemas ópticos no les queda mucho tiempo de vida. Se estima que los 2 TB de máximo teórico y los 300 MB/s se alcanzarán allá por el 2011 a un precio razonable.

fuente

Si llegaste hasta acá y no lo encontraste lo que necesitás intentá buscarlo: