jueves, 27 de septiembre de 2007

Ubuntu7.10GutsyGibbonBeta

Ya se publico hoy la version beta de ubuntu gutsy

Es libre de descargar bajo la siguiente dirección

http://releases.ubuntu.com/releases/gutsy/

su wallpaper es:

lunes, 24 de septiembre de 2007

___-.Ondas Electromagnéticas.-___

ECUACIONES DE LAS ONDAS ELECTROMAGNÉTICAS

Las ecuaciones de Maxwell implican que tanto el campo eléctrico como el campo magnético se propagan en forma de ondas; ondas cuya amplitud decrece al avanzar en medios de conductividad no nula.

El medio de propagación.

Para obtener la estructura matemática de las ondas electromagnéticas, es decir, las ondas de propagación del campo eléctrico y del campo magnético, podemos partir de las cuatro ecuaciones de Maxwell, que en el vacío y en el sistema CGS Gauss, pueden expresarse por


(J es la densidad de corriente, r es la densidad de carga eléctrica, c es la velocidad de la luz)
Pueden definirse los vectores “Desplazamiento”, D, e “Inducción Magnética”, B, por la relación particular con el vector Campo Eléctrico y Campo Magnético, respectivamente, de modo que las ecuaciones de Maxwell pueden expresarse por


Siendo el conjunto de las relaciones del desplazamiento D con el vector campo eléctrico, y de la inducción magnética B con el vector campo magnético lo que realmente define el tipo de medio en el que se efectúa la propagación del campo electromagnético.

sábado, 15 de septiembre de 2007

MeDiRcAdEnAsInStRlEn


#include {stdio.h}
main()
{
int i ;
char cad[] = "nuevo comienzo" ;
printf("%s\n",cad) ;
for(i = 0 ; cad[i] != '\0' ; i++ ) ;
printf("la longitud de la cadena es:%d\n",i) ;
system("PAUSE") ;
}

viernes, 14 de septiembre de 2007

http://goodbye-microsoft.com/

Adios a windows





http://goodbye-microsoft.com/


El uso del logotipo de Debian no implica apoyo por parte del proyecto Debian.
No tenemos ningún tipo de afiliación con Microsoft.
'Microsoft' es una marca registrada de Microsoft Corporation.

Ophcrack

Es una herramienta para crackear las contraseñas de Windows basada en las tablas Rainbow. Es una implementación muy eficiente de las tablas rainbow hecha por los inventores de este método. Viene con una Interfaz Gráfica de Usuario GTK+ y corre bajo Windows, Mac OS X (CPU Intel) y también en Linux.


Ophcrack 2.3.4 - 2007-02-19
Soporte para Vista
Bkhive 1.1.0
Samdump2 1.1.0
Soporte para crackear hashes LM con caracteres alemanes
Facilidad de cambiar las tablas en el LiveCD

Características

* » Corre bajo Windows, Linux y Mac OS X (intel).
* » Rompe hashes LM y NTLM.
* » Tablas libres disponibles para hashes LM alfanuméricos.
* » Carga hashes desde SAM local y SAM remota.
* » Carga hashes desde SAM encriptadas recuperadas desde una partición Windows, incluyendo Vista.

Ophcrack LiveCD 1.1.4 - 2007-02-19

El LiveCD de Ophcrack contiene un sistema Linux completo (SLAX), ophcrack para Linux y las tablas Rainbow para contraseñas alfanuméricas.

El liveCD crackea las contraseñas automáticamente, sin necesidad de una instalación y sin la necesidad de conocer la contraseña de administrador (solo es necesario arrancar desde el CD).

La versión 1.1.4 crackea el archivo SAM de Windows Vista

ver el link para mas informacion

http://ophcrack.sourceforge.net/es.index.php

Ubuntu Gutsy finalmente traerá Compiz Fusion por defecto

Desde hace casi un mes el equipo de Ubuntu se ha estado planteando si usar el conocido gestor de ventanas por defecto o no. Recordad que había una serie de inconvenientes que provocó la duda ya que era uno de los objetivos de esta versión.

Parece que la decisión ya ha sido tomada, y Gutsy traerá Compiz Fusion por defecto como ha venido haciéndolo en sus versiones Tribe.

Actualizada con más info de la charla y la votación de la decisión de habilitar Compiz.

Según Travis Watkins, más conocido como Amaranth, la mayoría de los bugs que hay en Compiz Fusion son problemas menores y señala que en el peor de los casos, no funcionaría, es de suponer que se refiere a circunstancias de hardware, no de la aplicación.

El mismo Amaranth está colaborando en la corrección de bugs. Ha hecho una lista de 12 que espera resolver en los próximos días, aunque la mitad de ellos son simples errores en la configuración. Nos insta a que aquellos que lo deseen lo prueben ya mismo sin esperar a que llegue la versión beta de Gutsy y comuniquemos cada bug que podamos encontrar.

Estas son las líneas de la votación que se produjo ayer para habilitar Compiz Fusion por defecto:

10:31 mdz_ mvo,Amaranth: do you think this is good enough to be our default?
10:31 Amaranth I think so, yes
10:31 mvo within the limitations outlined in my mail to ubuntu-devel yes
10:32 Amaranth It still has some rough spots but if we don’t get it out there at some point it’ll never get good enough
10:32 mjg59 Amaranth: The rough spots are issues that are not directly related to compiz
10:32 Amaranth mjg59: I meant aside from those
10:32 mjg59 Shipping compiz won’t make those problems get fixed faster

Resumiendo, Travis Watkins (Amaranth) y Michael Vogt (mvo) votan positivo y Matthew Garret (mjg59) que se muestra menos seguro comentando que hay algunos problemas no relacionados directamente con Compiz y que no hará que se resuelvan antes incluyendo Compiz por defecto. Amaranth piensa lo contrario y sigue la lógica de que al haber mayor número de usuarios más información de los problemas habrá y más “presión” se puede producir (por ejemplo a los desarrolladores de drivers) para resolverlos.

Hay que comentar que uno de los problemas principales está ligado con los drivers de las gráficas Intel, así que es probable que no os funcione. Otros problemas derivan a NVIDIA y ATI y se espera que con sus futuras versiones de sus drivers los solventen.

Algunos otros problemas derivan de XOrg 7.3 y comentan que sus desarrolladores no cuenta con Compiz como objetivo prioritario hoy por hoy, sin embargo el que se extienda el uso del gestor de ventanas puede provocar que la prioridad sea mayor.

En la charla de ayer se ha hablado también de otras aplicaciones como Automatix (cuyo desarrollador no ha contestado a una invitación a hablar con ellos) o tracker y deskbar. Al parecer tracker tiene algunos problemas de rendimiento y en algunos casos puede llegar a comerse la CPU. Se sospecha que puede estar relacionado con alguna actualización del kernel y están investigándolo.

La conversación entre los desarrolladores es realmente muy interesante. Si entendéis inglés y queréis estar al tanto de todo lo que se cuece, de las opiniones de los responsables y de cómo se toman las decisiones os recomiendo su lectura. Podéis leerla aquí.

Finalmente añadir que aquellos usuarios que tengan problemas o que simplemente no les guste, pueden seguir usando el gestor de ventanas Metacity como siempre, en lugar de Compiz Fusion.

Agenda.c

//Programa diseñar un programa que haga una agenda

#include {stdio.h} //Se introduce la librería estándar "input" and "output"

#include {conio.h}> //Se introduce librería para usar el "gets()" y "getch()"

#include {string.h} //Se introduce la librería de cadenas

#include {stdlib.h} //librería necesaria para utilizar la función "atoi"

main() //Inicia programa con función principal "main()"

{

//Inicia cualquier función con '{' y termina con '}'

char ver, nuamigo ;

//Para ver la agenda en la "segunda parte", la "primera

//parte" es donde se piden los datos con un ciclo 'for'

//'nuamigo' es de tipo char se puede cambiar a valor entero

//con la función atoi, en éste programa cuando cambiamos una

//cadena de letras o cualquier caracter a valor entero

//nos regresa un cero al convertir, si convertimos una

//serie de números lo que nos regresa es ese mismo valor


int a, b, n, i = 0;

//'a' es una variable para conocer la cantidad de amigos

//'b' es una variable para contar ciclos dentro del 'for'

//'n' es para ver el número de amigo ingresado

//'i' es una variable para contar la posición de caracter


printf("\t\t\t:=ESTA ES TU AGENDA=:\n\n") ;

printf("\t\tCuantos amigos quieres agregar (no mayor a cinco)?\n\n\t\t") ;

scanf("%d",&a) ;

//Se pide el valor de la variable 'a'

//Se guarda ese valor de 'a' mediante la función 'scanf'

char amigo[a][15];

char carrera[a][10];

char generacion[a][5];

char semestre[a][1];

char numerodecuenta[a][9];

char promedio[a][3];

//Los datos de los amigos son arreglos, son de tipo char

//Para que C no se trabe cuando usamos enteros y que

//recibamos caracteres del teclado todo lo dejamos en caracteres

//y si necesitamos valores enteros usamos la función 'atoi'

for( b = 0 ; b <>

//Entra en un ciclo para acomodar los datos de los amigos

//mediante un 'for' comienza el ciclo utilizando la

//variable 'b' contando desde cero hasta 'a - 1'

//cuando 'b' toma el valor de 'a' sale de este ciclo

if( a > 5 )

{

printf("\n\n\t\tQUE NO MAS DE CINCO!") ;

getch() ;

break;

}

//Imprime mensaje si se trató de introducir mas de cinco

//amigos en ésta agenda, en clase de algoritmos se

//especifico así, por lo tanto no se aceptan mas ce cinco

system("cls") ;

printf("\t\t\tTECLEAME LOS DATOS DE TU AMIGO %d\n",b+1) ;

getchar();

//Limpia pantalla, luego muestra mensaje, después

//una pausa, espera confirmación

printf("\n\tDame su nombre completo\n\t\t\t") ;

while ( 1 == 1 ) {

amigo[b][i]=getch() ;

printf("%c",amigo[b][i]) ;

if( i == 15 ) break ;

i++ ;

} i = 0 ; getchar() ;

//Pide el nombre del amigo 'b'

//Atrapa del teclado el nombre del amigo amigo 'b'

//Lee quince caracteres los demás no los lee, no se almacenan


printf("\tEstudia ingenieria en .. \n\t(Ej: computacion)\n\t\t\t") ;

while ( 1 == 1 ) {

carrera[b][i]=getch() ;

printf("%c",carrera[b][i]) ;

if( i == 10 ) break ;

i++ ;

} i = 0 ; getch() ;

//Pide la carrera del amigo 'b', muestra ejemplo

//Atrapa del teclado la carrera del amigo 'b'

printf("\n\tEs de la generacion .. \n\t(Ej: 2004-2)\n\t\t\t") ;

while ( 1 == 1 ) {

generacion[b][i]=getch() ;

printf("%c",generacion[b][i]) ;

if( i == 5 ) break ;

i++ ;

} i = 0 ; getch() ;

//Pide La generación del amigo 'b', muestra ejemplo

//atrapa del teclado la generación del amigo 'b'

printf("\n\tSemestres en la facultad .. \n\t(Ej: 8)\n\t\t\t") ;

while ( 1 == 1 ) {

semestre[b][i]=getch() ;

printf("%c",semestre[b][i]) ;

if( i == 0 ) break ;

i++ ;

} i = 0 ;

//Pide el número de semestres cursados del amigo 'b'

//Atrapa del teclado el semestre que ha cursado el amigo 'b'

//se espera leer un solo caracter para salir


printf("\n\tSu numero de cuenta es .. \n\t(Ej: 400400123)\n\t\t\t") ;

while ( 1 == 1 ) {

numerodecuenta[b][i]=getch() ;

printf("%c",numerodecuenta[b][i]) ;

if( i == 8 ) break ;

i++ ;

} i = 0 ;

//Pide el numero de cuenta del amigo 'b'

//Atrapa del teclado su número de cuenta del amigo 'b'

//se espera leer al menos 9 caracteres para salir



printf("\n\tSu promedio es .. \n\t(Ej: 10.0)\n\t\t\t") ;

while ( 1 == 1 ) {

promedio[b][i]=getch() ;

printf("%c",promedio[b][i]) ;

if( i == 3 ) break ;

i++ ;

} i = 0 ;

//Pide el promedio del amigo 'b'

//Atrapa del teclado el promedio del amigo 'b'

//Se espera leer al menos tres caracteres

system("cls") ;

printf("\t\t<-=:Ha sido agregado tu amigo:=-> \n\n\t\t\t") ;

for( i = 0 ; i <>

{

printf("%c",amigo[b][i]) ;

}

getch() ;

//Se limpia pantalla con 'system("cls")'

//Se notifica que se agrego correctamente

//si 'b' no alcanza el valor de 'a' se regresa al 'for'

//y comienza de nuevo con el ciclo de pedir datos

}

//Hemos salido del ciclo 'for' .... continúa programa

while( 1 == 1 )

{

//Se abre un ciclo infinito para revisar la agenda

//normalmente no se puede limitar el uso de una agenda personal

//viéndolo por ese lado se abre éste ciclo

system("cls") ;

//Limpiamos pantalla después de haber agregado o no

//información a la agenda del usuario


printf("\t\tQuieres revisar tu agenda?, s/n ") ;

ver = getch() ;

if( ver == 'n' ) { break ; }

//Cuando sí se ha introducido información de "el" o "los"

//amigo(s), pregunta si se quiere ver esa información

//teclea 'cualquier tecla' para ver o 'n' para no ver y salir

system("cls") ;

printf("\t\tDame el numero que le corresponde a tu amigo\n\t\t") ;

nuamigo = getch() ;

n = atoi(&nuamigo);

//Se pide el número que se registro del amigo aquí la función

//'scanf("%d",&n)' se pudo utilizar pero para que no haya

//errores utilizamos la función 'atoi'



if( n <> 5 )

{

system("cls") ;

printf("\t\tSALIMOS DE LA AGENDA, ESE NUMERO NO EXISTE") ;

getch();

break ;

} else;

//Si la variable 'n' toma el valor de 0 o menor a éste

//sale del programa y manda un mensaje para evitar errores

if( n > 0 )

{

n = n - 1 ;

system("cls") ;

//Si la variable 'n' toma el valor de 1 o mayor a éste

//inmediatamente se muestran el contenido de la agenda

//Se limpia la pantalla con "system("cls")"



printf("\t\tHa sido seleccionado tu amigo ") ;

for( i = 0 ; i <>

printf("%c",amigo[n][i]) ;

printf("\n\n\tEstudia ingenieria en ") ;

for( i = 0 ; i <>

printf("%c",carrera[n][i]) ;

printf("\n\n\tEs de la generacion ") ;

for( i = 0 ; i <>

printf("%c",generacion[n][i]) ;

printf("\n\n\tSemestres en la facultad ") ;

for( i = 0 ; i <>

printf("%c",semestre[n][i]) ;

printf("\n\n\tSu numero de cuenta es ") ;

for( i = 0 ; i <>

printf("%c",numerodecuenta[n][i]) ;

printf("\n\n\tSu promedio es ") ;

for( i = 0 ; i <>

printf("%c",promedio[n][i]) ;

getch() ;

//Imprime los datos de la agenda en pantalla

}

//Sale el programa del 'if' donde 'i' debe ser mayor a 0

//Se regresa al ciclo de nuevo siempre y cuando no quiera

//revisar la agenda o haya pedido información que no exista



}

//El ciclo infinito while ha terminado, ya no se van a

//ver datos de otro amigo que se hayan ingresado


struct {

char name[22];

char ingenieria[10] ;

char generac[5] ;

char semester[2] ;

int nucuenta ;

float promd ;

} agenda[2] ;

//Se hace la estructura de los creadores de la agenda

//nombre, carrera, semestre, generación, promedio, etc

//La estructura es de tipo agenda y para hacer referencia

//al contenido de cada parámetro en la agenda se añade un '.'

//de esa forma se manda a llamar a ese parámetro

strcpy(agenda[0].name,"Francisco Perez Jimenez") ;

strcpy(agenda[0].ingenieria,"electronica") ;

strcpy(agenda[0].generac,"2004-2") ;

strcpy(agenda[0].semester,"5") ;

agenda[0].nucuenta = 302197022 ;

agenda[0].promd = 8.47 ;

strcpy(agenda[1].name,"Ismael Solano Perez") ;

strcpy(agenda[1].ingenieria,"computacion") ;

strcpy(agenda[1].generac,"2004-2") ;

strcpy(agenda[1].semester,"7") ;

agenda[1].nucuenta = 400400123 ;

agenda[1].promd = 7.90 ;

//Dado que son valores fijos solo se les asigna un valor

//'strcpy' se utiliza para asignar valor a las cadenas

//los que son tipo entero y flotante no necesitan eso

//se les asigna el valor directamente

while ( 1 == 1 )

{

system("cls") ;

printf("\t\tQuieres ver la informacion de los creadores s/n\n\n\t\t") ;

ver = getch() ;

if( ver == 'n' ) { break ; }

//inprime mensale al usuario

//Se teclea 's' para ver o 'n' para no ver y salir

system("cls") ;

printf("\t\tFrancisco (1) Ismael (2)\n\n\t\t") ;

nuamigo = getch() ;

n = atoi(&nuamigo);

//A Francisco le corresponde el valor de '1'

//A Ismael le corresponde el valor de '2'


if( n <> 2 )

{

system("cls") ;

printf("\t\tSOLAMENTE HAY DOS CREADORES") ;

getch();

break ;

} else;

//Si la variable 'n' toma el valor de 0 o menor a éste

//o que pida un número mayor a dos sale del programa

if( n > 0 )

{

n = n - 1 ;

system("cls") ;

//Si la variable 'n' toma el valor de 1 o mayor a éste

//inmediatamente se muestran el contenido de la agenda

//Se limpia la pantalla con "system("cls")"



printf("\t\tHa sido seleccionado tu amigo ") ;

for( i = 0 ; i <>

printf("%c",agenda[n].name[i]) ;

printf("\n\n\tEstudia ingenieria en ") ;

for( i = 0 ; i <>

printf("%c",agenda[n].ingenieria[i]) ;

printf("\n\n\tEs de la generacion ") ;

for( i = 0 ; i <>

printf("%c",agenda[n].generac[i]) ;

printf("\n\n\tSemestres en la facultad ") ;

for( i = 0 ; i <>

printf("%c",agenda[n].semester[i]) ;

printf("\n\n\tSu numero de cuenta es ") ;

printf("%d",agenda[n].nucuenta) ;

printf("\n\n\tSu promedio es ") ;

printf("%f",agenda[n].promd) ;

getch() ;

//Imprime los datos de la agenda en pantalla

}

}

//El ciclo infinito while ha terminado, ya no se van a

//ver datos de los creadores de éste programa



}

//Fin del programa agenda