Menú

Mostrar Mensajes

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

Mostrar Mensajes Menú

Mensajes - xiruko

#381
Foro Libre / Re: ¿Por qué soy ateo?
1 Septiembre 2012, 19:51 PM
CitarPor ejemplo, según Einstein la luz era la partícula más rápida, todos lo creían.

Luego hace unos meses dijeron haber encontrado una partícula más rápida que la luz:
http://www.abc.es/20110923/ciencia/abci-particula-rapida-201109230736.html

Todos los creían.

Meses después dijeron que no, que había sido un error por la señora de la limpieza.

Todos los creían.

cuando paso lo de los neutrinos no es que lo creyeran, en la mayoria de noticias siempre se leia que la comunidad de cientificos estaba en una posicion esceptica aunque no descartaban que pudiera ser verdad. esa es la diferencia entre religion y ciencia... en religion hubiera sido un: "ahora los neutrinos son mas veloces que la luz". mientras que en ciencia fue: "ha pasado esto con el experimento de los neutrinos, algo que no se esperaba y que teoricamente no puede ser, vamos a hacer mas experimentos que corroboren o no la teoria y luego ya decidimos." esta deberia ser la diferencia... luego claro estan los fanaticos de tanto ciencia como tecnologia, extremistas y demas, pero eso siempre es otro tema.

CitarY luego te quejas de 'las religiones'. Por lo menos se ha podido demostrar que Jesus existió, hace poco además. Puede que fuera un mentiroso y un 'mago' y que todo el mundo creyera que era el hijo de Dios, o que realmente lo fuera. Pero existió.

yo estoy seguro de que un tal jesus existio por aquella epoca. seguramente fuera un buen tio, alguien con buenos valores, que ayudaba a los demas solo por ayudar, sin esperar nada a cambio. pero ya esta. todo lo demas que ha venido despues, basura. asi somos los humanos... convertimos algo bueno y digno de admiracion en basura.

CitarFalso, la mayoría de cosas se 'crean/explican' para demostrar otras y que las otras encajen, siendo falso que existen, simplemente se lo inventan por que "creen" que es lo que pasa...

como puedes decir algo asi? eso quizas es lo que ocurre en fisica teorica, agujeros negros, universos paralelos, etc. donde si que es verdad que cientificos se llegan a inventar un puñado de dimensiones extras para que sus cuentas cuadren. pero fuera de la fisica teorica... acaso la relatividad no es un hecho? la fisica clasica de newton? el electromagnetismo? y es que todas ramas de la ciencia que se te puedan ocurrir dejando de lado la fisica teorica.
#382
Foro Libre / Re: ¿Por qué soy ateo?
1 Septiembre 2012, 18:42 PM
la religion esta en decadencia, o al menos eso parece... tiene sentido que cuanto mas avance una sociedad, cosas como la religion no tengan otra cosa que hacer que desaparecer. sino mirad atras 200 años, o 30 o 40 que mas da, y comparad con la generacion de ahora. yo al menos apenas tengo unos 3 o 4 conocidos de mi edad que son creyentes. la evolucion y el progreso no es solo en ciencia y tecnologia, tambien afecta a la manera de pensar de la gente, aunque lastima que esta ultima sea mas lenta que las otras dos...

en fin, otro ateo que saluda!
#383
Programación C/C++ / Re: Concatenar cadenas
31 Agosto 2012, 22:12 PM
hola, me he mirado tu codigo por encima y la verdad creo que andas un poco liado... normal si estas empezando claro.

te aconsejo que te mires este tema bastante completo donde varios usuarios y yo escribimos distintas maneras de hacer un generador de diccionarios.

http://foro.elhacker.net/programacion_cc/como_hacer_un_generador-t366597.0.html;msg1765314#msg1765314

asi que solo te haria falta mirarte eso, y luego usar la funcion strncat (mejor esta que strcat, ya que con esta ultima no puedes limitar el numero de caracteres a añadir a la otra cadena y te puede dar problemas por gestion de memoria).

http://c.conclase.net/librerias/?ansifun=strncat

no se si conoceras esta pagina, pero por si acaso acuerdate de ella, ya que es muy util para mirar toda clase de funciones de librerias estandar, con explicacion y ejemplos.

un saludo!

edito: modifico para recalcar lo que ha dicho avesudra en cuanto al tamaño del fichero. fijate que en el tema que te he pasado, ahi intentabamos hacer las combinaciones desde AAAAAAAA hasta ZZZZZZZZ. y creo recordar que solo intentando hacerla de 7 caracteres, acabe interrumpiendo el codigo ya que llevaba una media hora y unos 32GB de tamaño.
#384
Programación C/C++ / Re: Flujo stderr [Duda]
31 Agosto 2012, 19:06 PM
cuando ejecutas un programa hecho para la terminal, stdout y stderr (y stdin) significaran el mismo flujo, la terminal. pero si, por ejemplo, haces lo de redirigir la salida estandar del programa (stdout) a un archivo (con el operador > en la linea donde ejecutas el programa en la terminal) estaras cambiando stdout por el archivo, con lo que ahora tendras que:

stdout = archivo
stderr y stdin = terminal

por lo que todos los errores que tengas con fprintf(stderr,...) los veras en la terminal, pero la salida normal del programa, las que has hecho con printf(), las tendras en el archivo.

no se explicarme mejor... a ver si alguien mas dice algo.

un saludo!

edito: solo quiero añadir algo mas acerca de los flujos y quizas asi lo entiendes mejor. igual que puedes cambiar stdout por un archivo, tambien puedes cambiar stdin por uno. estos flujos no son mas que entradas y salidas predefinidas para tu programa, pero tu puedes cambiarlas cuando quieras para que asi las 3 no sean el mismo flujo (por defecto la terminal). para cambiar la entrada en este caso, y para el programa que has colgado al principio, podrias hacer un archivo de texto llamado "prueba.txt" y añadirle esta linea "./prueba.txt". ahora ejecutalo desde la terminal asi: ./main < prueba.txt (en este caso, el operador es < y no >). con esto estaras cambiando stdin, que pasara de recibir la entrada por la terminal a recibirla por el archivo. si todo va bien, deberia borrarse el archivo "prueba.txt".
#385
Programación C/C++ / Re: Flujo stderr [Duda]
31 Agosto 2012, 18:55 PM
stderr es, como su nombre indica, la salida estandar de errores. este es util cuando por ejemplo, rediriges la salida de tu programa a un archivo. si en ese caso ocurre algun error en la ejecucion del programa y tienes puesta su salida por stderr, el error saldra en la terminal en vez de en el archivo. esto lo puedes probar con el mismo ejemplo que has puesto ejecutandolo desde terminal asi: ./main > prueba.txt  y veras como la salida normal del programa la imprime en el archivo, y en cambio los errores los dice por la terminal.

no se si me explique muy bien... igualmente, no se mas aplicaciones a parte de redirigir siempre los errores a la terminal para que asi no se te impriman en un archivo o algo parecido.

un saludo!
#386
Citar¿Que todos tenemos la misma capacidad mental? Permitid que me ria. Esta afirmacion apenas se puede defender, yo veo bastante claro que esto no es asi en el dia a dia. Es mas, hoy en dia me parece que la gente se enorgullece de ser ignorante o inculta.

totalmente de acuerdo... incluso lo veo en el ambiente de mi universidad y estoy haciendo ingenieria industrial (me refiero a que no es un ade o magisterio, donde apenas saben resolver un sistema de ecuaciones). tuvimos un par de asignaturas de programacion donde aprendimos C, y yo solo por el hecho de seguir aprendiendolo en mis ratos libres, mis amigos de alli me consideran un friki...

en fin, que hoy en dia mejor hacerse el tonto en la mayoria de lugares y asi evitar posibles marrones.

y por cierto, estoy completamente de acuerdo con el creador del tema con lo de la gente que no intenta resolver sus problemas. es mas, me gustaria añadir que hoy en dia a mucha gente le da pereza pensar. es mas facil que te lo den todo hecho... pero mucho menos divertido y satisfactorio.

un saludo!
#387
Programación C/C++ / Re: Numeros primos
30 Agosto 2012, 19:01 PM
CitarHola tengo que descompones un numero y que muestre sus numeros primos

hola, normalmente cuando se factoriza un numero ya se hace en numeros primos... asi que tu problema seria directamente factorizar cualquier numero? aqui te dejo otra manera de hacerlo que no usa una lista de numeros primos y asi el programa no esta limitado.


#include <stdio.h>

int EsPrimo(unsigned int n);

int main() {

unsigned int num, i;

printf("Ingresa el numero a descomponer: ");
scanf("%u", &num);

if (EsPrimo(num) > 0) {
printf("El numero introducido es primo y no se puede factorizar.\n");
return 0;
}

printf("Numero factorizado: ");
for (i=2; i<=num && num!=1; i++) {
if (num%i==0) {
printf("%u ", i);
num/=i;
i=1;
}
}
printf("\n");

return 0;
}

int EsPrimo(unsigned int n) {

unsigned int i;

for (i=2; i<n; i++)
if (n%i==0) return -1;

return 1;
}


espero que te sirva... un saludo!
#388
hola, hace poco respondi a una duda parecida y quizas te sirva de ayuda:

http://foro.elhacker.net/programacion_cc/duda_lista_simple_enlazada_c-t368885.0.html;msg1773697#msg1773697

me dio ganas de hacer el codigo de lo que pides, lo he probado y diria que funciona, aunque falta alguna funcion que recorra la lista para buscar y mostrar algo.


#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define TAM 256

struct lista {
char* palabra;
struct lista *sig;
};

struct lista* InsertarPalabra(struct lista* l, char* word);
struct lista* EliminarLista(struct lista* l);
void MostrarPalabras(struct lista* l);

int main(int argc, char** argv) {

char bufer[TAM], opt;
struct lista* l=NULL;

do {
printf("Inserta la palabra: ");
memset(bufer, '\0', sizeof(bufer));
fgets(bufer, TAM-1, stdin);
bufer[strlen(bufer)-1]='\0';
l=InsertarPalabra(l, bufer);
printf("Quieres salir? y/Y ");
scanf("%c", &opt);
while(getchar()!='\n');
} while(opt!='y' && opt!='Y');

MostrarPalabras(l);
l=EliminarLista(l);
return 0;
}

struct lista* InsertarPalabra(struct lista* l, char* word) {

struct lista *q, *p;

q=(struct lista*)malloc(sizeof(struct lista));
q->palabra=(char*)malloc(strlen(word)*sizeof(char));
strncpy(q->palabra, word, sizeof(q->palabra));
q->sig=NULL;

if (l==NULL) return q;
p=l;
while (p->sig!=NULL) p=p->sig;
p->sig=q;

return l;
}

struct lista* EliminarLista(struct lista* l) {

struct lista *q, *p;

q=l;
while (q!=NULL) {
p=q->sig;
                free(q->palabra);
free(q);
q=p;
}

return NULL;
}

void MostrarPalabras(struct lista* l) {

struct lista *q;

q=l;
while (q!=NULL) {
printf("%s %d\n", q->palabra, (int)strlen(q->palabra));
q=q->sig;
}
}


espero que sirva. un saludo!

edito: he hecho la funcion para mostrar las palabras y el numero de caracteres de cada una (incluida el null al final) para saber si tenia algun error y si que tenia alguno...  :silbar: ahora si que funciona bien, y ya que estoy lo dejo acabado.

Citarte pasaste xiruko , muchisimas gracias. Solo esperaba alguna sujerencias. De verdad muchisimas gracias ^^ es muy util

de nada!
#389
Mac OS X / Re: Problemas con GCC en mac
28 Agosto 2012, 23:52 PM
algo habras hecho mal... no estoy seguro que con eso se solucione lo del gcc (diria que si por lo que comentas...) pero si estoy seguro que haciendo eso deberia salirte el directorio en la variable PATH. ademas, acabo de hacerlo yo ahora mismo por si me habia equivocado en algo pero a mi me funciona correctamente.

repasalo todo, mira que no te hayas equivocado escribiendo la linea, mira que no te hayas equivocado de directorio, y acuerdate que tienes que cerrar la terminal y abrirla de nuevo para que se hagan efectivos los cambios.

yo lo estoy haciendo desde snow leopard, pero esto en lion deberia funcionar igual. copia y pega aqui tu archivo .profile por si acaso. luego se me ocurre que en lion el nombre del archivo no sea .profile, sino .bash_rc (o algo asi) que a veces tambien lo he visto o quizas sea otro. eso podrias buscarlo en google con algo acerca de cambiar los colores de la terminal en lion, y te dira el nombre del archivo que deberia tener.
#390
Mac OS X / Re: Problemas con GCC en mac
28 Agosto 2012, 14:54 PM
el archivo .profile lo deberias guardar en tu directorio de usuario. si por ejemplo tu eres el usuario pepe en el ordenador, tu directorio home estara en: /Users/pepe y ahi es donde deberias guardarlo. prueba con eso y ya cuentas.

un saludo!