elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


  Mostrar Temas
Páginas: 1 2 3 4 5 6 7 8 [9] 10
81  Foros Generales / Foro Libre / Misterioso penacho en Marte en: 17 Febrero 2015, 15:09 pm
http://francis.naukas.com/2015/02/17/espectacular-penacho-en-la-alta-atmosfera-marciana/

No, esto no va de "marcianos", sino de un fenómeno de momento sin explicar. Se ha localizado un "penacho" de gases de gran tamaño en el hemisferio sur marciano que ronda los 300 Km de altura

No es el primero, pero si son pocos, y de momento no se conoce ni que son, ni que los provoca. Pueden ser enormes tormentas que lleven polvo de hielo de C02 o agua, o incluso una aurora (si, Marte tiene, pero comparativamente deberían de ser mucho mas débiles que las de nuestro planeta)

En el enlace podéis ver fotos y mediciones varias, y de momento la cosa está en que... no tenemos ni idea

¿Supertormentas?, ¿algún volcán travieso que no está extinguido por completo?

A todo esto, recordar que la densidad de esas nubes es extraordinamente pequeña, del orden de una partícula por cada 100 cm3 o así.

Igualmente se desconoce si todos los fenómenos parecidos están relacionados de algún modo o no.

82  Foros Generales / Foro Libre / La naturaleza nunca deja de sorprender en: 17 Febrero 2015, 12:37 pm
Que hay peces que tienen señuelos para atraer a otros peces es conocido. Que hay insectos que imitan a otros también.

Pero esto... esto no lo había visto hasta ahora

https://www.youtube.com/watch?v=7CjtQOc9euU#t=145

En la zona de Irán, se ha encontrado esta curiosa víbora

Pseudocerastes urarachnoides

Como se ve en el vídeo, esta víbora ha desarrollado un señuelo en la punta de la cola imitando a una araña, que atrae a pájaros predadores de insectos, para que ella pueda zamparselos. (visto en NAUKAS)

Y mientras tanto...

https://www.youtube.com/watch?v=MPLKSI5grFY

Un clérigo Saudi nos cuenta que la tierra no se mueve... para ir a mear y no echar gota  :laugh:
83  Informática / Hardware / Gráfica muerta, gráfica nueva en: 13 Febrero 2015, 18:51 pm
Uno no gana para sustos.

Mi AMD 7950 ha fallecido esta tarde repentinamente. Le ha dado por sacar lineas de colorines y todo eso, a todas las resoluciones y a petar el sistema.

Incluso en Bios, tengo claro que no es tema de software, ni de potencia porque la fuente va fina. De hecho ahora mismo el ordenador funciona perfectamente con la gráfica integrada (la Intel HD 3000), pero claro, no es cuestión de dejarlo así porque no moverá mucho en 3D la pobre.

De manera que nada, toca comprarme otra gráfica, y la verdad es que AMD ya me tiene un poco "quemado" con el tema de los controladores en algunos ámbitos, pero estoy abierto a sugerencias.

Hablo de 250/280 como mucho, eso descarta una 970, pero entra dentro de la gama 960. ¿Ideas, sugerencias?
84  Foros Generales / Foro Libre / Una pequeña aportación a eso de los "fantasmas" en: 22 Enero 2015, 13:56 pm
https://es.noticias.yahoo.com/blogs/cuaderno-de-ciencias/%C2%BFte-has-despertado-sin-poder-moverte-y-sintiendo-la-presencia-de-un-intruso-en-tu-habitaci%C3%B3n-083404383.html

Aquí podeis leer un interesante artículo sobre un fenómeno muy comentado por los que "buscan fantasmas", el de una aparición nocturna que te paraliza... algo que tiene una explicación mucho mas sencilla que una "aparición de ultratumba", donde la paralisis es un mecanismo natural que experimentamos todos durante el periodo de sueño, y que si te despiertas (por ejemplo por una pesadilla) en ese momento, tu cuerpo puede necesitar incluso varios minutos para poder recobrar la movilidad, y mientras tanto parte de tu pesadilla "sigue" en tu cerebro, mientras encima te entra una angustia del copón por no poderte mover.

La paralisis no es ningún misterio, ni son "poderes malignos", es algo mucho mas simple

Citar
Los neurocientíficos explican que esta parálisis del sueño se produce cuando la persona se despierta durante la etapa del sueño conocida como REM (movimiento ocular rápido). Durante esta fase del sueño nos encontramos soñando y nuestros músculos están casi paralizados. Un despertar brusco o inesperado puede hacer que en ocasiones nuestro cuerpo tarde de uno a tres minutos en recuperar la movilidad.
El estar inmovilizados durante esta fase de sueño profundo representa una ventaja evolutiva puesto que impide que podamos hacernos daño con movimientos bruscos durante un sueño o una pesadilla.
Sin embargo, no todas las parálisis del sueño llevan aparejadas las sugestiones de presencia extraña. En un pequeño porcentaje de estas incómodas situaciones de inmovilidad el sujeto experimenta una creciente sensación de agobio y ansiedad que puede llevarle a tener visiones realmente horribles.

Lo de la "presencia extraña" (fantasmas, monstruos, el coco, el hombre del saco, etc...)

También tiene su explicación

http://es.wikipedia.org/wiki/Par%C3%A1lisis_del_sue%C3%B1o#Tipos_de_experiencia

Claro, que intentar buscar explicaciones racionales, a veces es solo querer hacerlo.

No se si alguien por aquí ha tenido este tipo de experiencias (no son para nada raras), pero al menos con esta información, es posible que su próximo episodio sea bastante menos problemático.

El miedo lo tenemos a lo desconocido, cuando lo conocemos, las cosas cambian
85  Foros Generales / Foro Libre / El cerebro y la IA en: 29 Diciembre 2014, 19:35 pm
Como llevamos unos días con temas bastante bizarros, propongo uno divertido.

En un "tocho" que aparece por otro hilo, recomendé (eso si, bajo vuestra responsabilidad) un ensayo de Roger Penrose que habla de la IA entre otras cosas.

Sin entrar en muchos detalles (que los hay), la pregunta es curiosa y tiene su miga.

Ignoremos las limitaciones técnicas. Este es un "experimento mental", no necesitamos preocuparnos por esos detalles a menos que estos sean imposibles en teoría.

Supongamos, que podemos identificar individualmente todas y cada una de las neuronas de un cerebro humano. Sabemos como funcionan, y de hecho podemos incluso emular su funcionamiento en un programa informático.

Identificamos todas esas neuronas, todas sus conexiones y recreamos en un ordenador una simulación completa de un cerebro.

¿Tendríamos un cerebro funcionando?, ¿un equivalente en un ordenador de una inteligencia humana?, ¿funcionaría este invento?

Os adelanto que el autor del ensayo dice que no, por una serie de razones que... bueno, son un poco complejas de explicar en poco espacio, pero podemos jugar sobre esa idea
86  Programación / Programación C/C++ / Problema con mapas en: 19 Diciembre 2014, 16:28 pm
Tengo un curioso problema que me esta mareando un poco, os explico:

Código:

int main(){
    string entrada;
    map <int, bool> A;
    map <int, bool> B;
    getline (cin, entrada);
    cout << entrada << endl;
    A = separa (entrada);
    while (getline (cin, entrada)){
        B = separa (entrada);
        map<int, bool>::iterator it = A.begin();
        for (; it != A.end(); it++){
            map<int, bool>::iterator itb = B.find(it->first);
            if (itb == B.end()){
                A.erase(it->first);
                map<int, bool>::iterator it = A.begin();
            }
        }
        muestra (A);
    }
}


Omito las funciones y cabeceras, se que funcionan y no me dan problemas, y aclaro un poco este follón de código.

Lo que hago, es capturar secuencias de enteros y filtrar solo los que aparecen en todas las líneas. Mi idea es capturar una linea y meterla en un mapa (Mapa A), las siguientes en el mapa "B".

Luego, itero el mapa "A" y compruebo si la llave del iterador existe en el mapa "B", y en caso de que no sea así, borro de A esa clave.

El caso es que el programa, tal y como está "revienta". Solo puedo asumir que tengo un iterador "loco" corriendo por ahi, pero no acabo de ver cual, porque veamos:

Tengo un iterador "it" que va a recorrer los valores del mapa A, y lo ubico en su primera casilla. Luego, compruebo con el iterador ITB si el valor de la llave de ese iterador existe en "B", si el valor devuelto es "B.end" entonces es que no está, por lo que borro ese contenido en "A".
Soy consciente desde luego, que desde el momento en que efectuo una operación de borrado, ese iterador deja de ser valido, por lo que lo devuelvo a su punto inicial, pero vamos... no se porque "explota"

Estoy pensando obviamente en no borrar nada, y usar el valor asociado a la clave (que es booleano) para marcarlo, y ya os diré como va la cosa, pero claro, el tema es que si quisiera borrar datos, me veo ante un código que falla, y no tengo claro porque.

A ver si alguien ve donde estoy metiendo la gamba

Por cierto, si hago eso que os he comentado, el programa funciona... os pongo el código entero por si alguien quiere aclararse un poco mas


Código:
#include <iostream>
#include <sstream>
#include <map>
using namespace std;

map <int, bool> separa (string& s){
    istringstream S (s);
    map<int, bool> ret;
    int n;
    while (S >> n){
        ret[n] = false;
    }
    return ret;
}

void muestra (const map<int, bool>& m){
    map<int, bool>::const_iterator itm = m.begin();
    for (; itm != m.end(); itm++){
        if (itm->second == false) cout << itm->first << ' ';
    }
    cout << endl;
}

int main(){
    string entrada;
    map <int, bool> A;
    map <int, bool> B;
    getline (cin, entrada);
    cout << entrada << endl;
    A = separa (entrada);
    while (getline (cin, entrada)){
        B = separa (entrada);
        map<int, bool>::iterator it = A.begin();
        for (; it != A.end(); it++){
            map<int, bool>::iterator itb = B.find(it->first);
            if (itb == B.end()){
                it->second = true;
            }
        }
        muestra (A);
    }
}

Claro, el programa ahora va, pero sigo sin saber porque la versión anterior que borraba los elementos no repetidos no lo hace, y preferiría saber porque es eso, antes que pensar "buenooooo ahora funciona, no me preocupo mas"
87  Comunicaciones / Android / Red Local entre W7 y Android en: 7 Diciembre 2014, 18:49 pm
He estado buscando por los foros, pero no encuentro algo que debería de ser teóricamente sencillo, pero que me está volviendo loco.

En XP era capaz de poner un tablet android y el ordenador en la misma red, compartir carpetas, etc... en W7 he sido incapaz de hacerlo. He creado usuarios, he dado permisos... todo lo que se me ha ocurrido (los tutos que corren por ahi no ayudan mucho, o no los he sabido encontrar)

La cuestión es si alguien tiene idea de donde podría encontrar un tutorial que me explique como meter en la misma red local un ordenador, y un tablet android.

Para concretar, el ordenador tiene un W7 X64 Profesional, y el Android es un Nexus 10 con Android Lolipop (última versión)

88  Programación / Programación C/C++ / C++ Mas iteradores, con vectores de vectores ¡ juerga ! en: 4 Diciembre 2014, 16:58 pm
Vale... he podido con todos los problemas que he encontrado en el "cursillo" que estoy siguiendo, pero este confieso que me ha dejado a cuadros.

Tenemos un vector tal que

Código:
vector<vector<int> > Datos;

A menos que me equivoque mucho, un iterador para este vector (para lo que serían "filas" del mismo)

Sería tal que...

Código:
vector<vector<int> >::iterator it

Suponiendo que eso este bien... ¿como accedo pues por ejemplo al tamaño de las "filas" del vector?

Porque algo como it.size() obviamente no funciona, ni *it.size() ni cualquier otra cosa que se me ocurra.

O lo mismo es que el mismo iterador está mal planteado, pero como este es uno de esos casos "raros" que no te aparecen en ejemplos por ningún lado, me pasa lo que me pasa, que llevo un par de horas dándome cabezazos contra la pared (contra el teclado no, que el jodio es caro)

Ya ni me atrevo a preguntar como hago un iterador para alguno de los vectores anidados en el vector... pero si alguien sabe donde puedo encontrar ejemplos de esta atrocidad, o explicarme "como se come esto" espero que Dios se lo pague con muchos hijos.

O al menos con intentos, que es mas divertido
89  Programación / Programación C/C++ / C++ Error al borrar última casilla de un vector con iteradores en: 3 Diciembre 2014, 17:22 pm
Bueno... lo reconozco, no se que he hecho mal

Código:
    it=v.begin();
    double dist;
    for (; it!=v.end(); it++){
      dist = abs (medvec - *it);
      if (dist > med) v.erase(it);
      }

Os pongo en antecedentes, esto es sencillo.

Tengo un vector de números reales, y pretendo borrar del mismo los que estén a mas de una distancia específica de la media. No parece problemático, pero ahaha...

El error me aparece en esta línea:

Código:
if (dist > med) v.erase(it);

Supongamos 5 valores: 1.0, 2.0, 3.0, 4.0, 5.0

Los valores que cumplen con la condición del if son el primero y el último

El primero es borrado, pero cuando el programa llega a intentar borrar la última posición del vector, simplemente "revienta".

Si cojo en otra parte del programa, creo un iterador para ese vector, lo posiciono en la posición del "5.0" y hago un erase(it)... funciona, no me da el problema.

Precisamente al usar iteradores, asumo que este nunca va a ponerse fuera de rango, ya que en el bucle if especifico claramente que "mientras it != v.end() con lo que no puedo suponer (en principio) que estoy intentando borrar una casilla inaccesible del vector.

He hecho algunas comprobaciones obviamente, y si por ejemplo limito el bucle a una vuelta menos ( it != v.end()-1) entonces el programa funciona sin errores, y se para tras llegar al "4.0"

El problema llega a la hora de intentar borrar la última casilla, cosa que aparentemente si puedo hacer "a lo bruto".

Si cambio el "erase" por un "cout << *it" veo que efectivamente, los números que cumplen la condición son los adecuados.

La verdad es que estoy atascado y no tengo claro que es lo que falla.
90  Programación / Programación C/C++ / ¿Esto se puede hacer mejor? (C++ iteradores) en: 1 Diciembre 2014, 11:06 am
Estoy trasteando con iteradores para conseguir aprender como funcionan, o mejor dicho: estoy intentando "soltarme" con su manejo y coger soltura.

Entre otras cosillas, he montado una función que devuelve un iterador indicando el valor mas alto de un vector, y funciona eso está claro, pero no se porque lo veo "feo" y pienso que tiene que haber algún modo mas elegante de hacerlo.

A ver si me podéis decir si esto se puede hacer de algún modo mas simple

Código:
#include <iostream>
#include <vector>
using namespace std;

vector<double>::iterator maximo(vector<double>& v){
    vector<double>::iterator it = v.begin();
    vector<double>::iterator ret = it;
    if (v.empty()){
        it= v.end();
        return it;
    }
    double max=*it;
    for (it++; it!=v.end(); it++){
        if (*it > max){
        max=*it;
        ret = it;
       }
    }
    return ret;
    }

int main(){
    vector<double> Datos = {1.1, 2.2, 300.3, 5.5, 98.5, -12.5};
    vector<double>::iterator itd;
    itd = maximo (Datos);
    cout << *itd;
}

Páginas: 1 2 3 4 5 6 7 8 [9] 10
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines