Ubuntu 9.10 Karmic Alpha 3 Disponible

12 08 2009

No me voy a extender mucho en éste post porque ando preparando otras cosas para el weblog, pero quería avisaros de que, Ubuntu 9.10 Alpha 3 ya está disponible para su descarga (Aunque lo cuento con algo de retraso).

http://cdimage.ubuntu.com/releases/karmic/alpha-3/ (Ubuntu Desktop, Server, y Netbook Remix)
http://cdimage.ubuntu.com/kubuntu/releases/karmic/alpha-3/ (Kubuntu Desktop y Netbook)
http://cdimage.ubuntu.com/xubuntu/releases/karmic/alpha-3/ (Xubuntu)
http://cdimage.ubuntu.com/ubuntustudio/releases/karmic/alpha-3/ (Ubuntustudio)

Por el momento, los únicos cambios significativos son que apartir de la Alpha 3, Ubuntu usará como compilar por defecto GCC 4.4 en vez de el ya conocido 4.3 y que pasará a usar GNOME 2.27.4 (Versión en desarrollo), lo ideal es; realizar instalaciones límpias porque dejará de usar ext3 para pasar a usar ext4 (mayor rendimiento, control y calidad de archivos) y como novedad, usaremos GRUB 2 como gestor de arranque.

Espero que lo disfruteis 🙂

Anuncios




Juego de la vida (Juego en C)

7 03 2008

Hoy quería hablaros de un juego que ha publicado mi compañero Imydes y el cuál quiere compartir con todo el mundo. He aquí la creación de “Un Juego de la Vida”;

Los Requisitos: con las típicas librerias ANSI C y un compilador de C en condiciones (Veasé gcc(Linux/Unix) ó Dev C++ (Win32) debería bastaros para probar el juego, aún así cualquier duda que se os proponga podeís dejarmela aquí o en la web de mi compi sin ningún problema. La licencia es CC (Creative Commons)

Web Oficial de Imydes

/*
Autor: Imydes
Descripció: Joc de la vida
Data: 21/02/2008
*/

#include

/*****************************
* Definicions *
****************************/
#define MAX_COOR 7

/*****************************
* Tipus *
*****************************/

typedef int Tterreny[MAX_COOR][MAX_COOR];

/*****************************
* Capcelera de les funcions *
******************************/

void preparar_terreny(Tterreny &original, Tterreny &temporal);
void inserir_habitants(Tterreny &original);
void mostrar_terreny(Tterreny &original);
int obtenir_generacions(void);
void resoldre_terreny(int generacions, Tterreny &original, Tterreny &temporal);
void copiar_terreny(Tterreny &original,Tterreny &temporal);

int main() {

int generacions;
Tterreny original, temporal;

printf(”Introduce los habitantes mediante coordenadas, la tabla es de 5×5\n”);

preparar_terreny(original, temporal);

inserir_habitants(original);

mostrar_terreny(original);

generacions = obtenir_generacions();

resoldre_terreny(generacions, original, temporal);

return 0;
}

/* Copiar Terreny */
void copiar_terreny(Tterreny &original,Tterreny &temporal) {
int fila, col;
for (fila = 1; fila < MAX_COOR-1;fila++)
for (col = 1; col < MAX_COOR-1; col++)
original[fila][col] = temporal[fila][col];
}

/* Gestió d’habitants del terreny */
void resoldre_terreny(int generacions, Tterreny &original, Tterreny &temporal) {
int g, fila, col;
int contador;
for(g=0;g
printf(“GENERACION %i\n”,g+1);
for (fila=1;fila
for (col=1;col
contador = 0;
contador = original[fila-1][col-1]+original[fila-1][col]+original[fila-1][col+1];
contador = contador+original[fila][col-1]+original[fila][col+1];
contador = contador+original[fila+1][col-1]+original[fila+1][col]+original[fila+1][col+1];

/* Decidim si creem o eliminem un habitant */

if (original[fila][col] == 1) {
if (contador == 2 || contador == 2 ) {
temporal[fila][col] = 1;
}
else {
temporal[fila][col] = 0;
}
}
else {
if (contador == 3) temporal[fila][col] = 1;
else temporal[fila][col] = 0;
}
printf(“%i”,temporal[fila][col]);
}
printf(“\n”);
}
copiar_terreny(original,temporal);
}
}

/* Preparació del terreny */
void preparar_terreny(Tterreny &original, Tterreny &temporal) {
int fila, col;
for (fila=0;fila
for (col=0;col
original[fila][col] = 0;
temporal[fila][col] = 0;
}
}
/* Sistema d’insersió d’habitants */
void inserir_habitants(Tterreny &original) {
int fila, col;
do {
scanf(“%i”,&fila);
scanf(“%i”,&col);

if (fila > 0 && fila < MAX_COOR-1 && col > 0 && col < MAX_COOR-1)
if (original[fila][col] == 1)
printf(“Ya tienes un habitante en la casilla %i:%i\n”,fila,col);
else
original[fila][col] = 1;
else
if (fila != 0 || col != 0) printf(“El terreno es de 1×5 x 1×5\n”);
}while(fila != 0 || col != 0);
}

/* Obtenim el nombre de generacions */
int obtenir_generacions(void) {

int generacions;
printf(“Dime el numero de generacions que quieres que haga (valor positivo)\n”);

do {
scanf(“%i”,&generacions);
printf(“\n”);
}while(generacions < 1);
return generacions;
}

/* Mostrem el terreny amb els habitants */
void mostrar_terreny(Tterreny &original) {

int fila, col;

for (fila=1;fila
for (col=1;col
printf(“%i”,original[fila][col]);
printf(“\n”);
}
}

PS: Como ya sabreís WordPress no preformatea correctamente el texto, asíque para una versión completa del código fuente, ir al weblog del autor, más arriba indicado.