Ver Mensaje Individual
  #12 (permalink)  
Antiguo 12/10/2015, 01:54
Tachikomaia
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Reto/favor: Plantead problemas sencillos que no pueda resolver.

Ok, pero aún no lo solucioné realmente, me tomará tiempo.

He estado pensando en en el tema de las listas, cómo implementarlo. En principio mi idea era crear archivos L1P1.txt, L1P2.txt, etc (L=Lista, P=Parte) cada uno conteniendo el elemento correspondiente de la lista, marcado en el nombre del archivo (de modo que si requiero la variable L1P1 cargo el archivo L1P1.txt). La ventaja de usar archivos en vez de variables es que ocupan menos ram, creo. Luego cambié de idea, porque quise usar cierto método de revisión que idee, y pensé que no se podía o no convenía usarlo con archivos pero ahora lo dudo. En fin, como dije en el post anterior, desde mi punto de vista cuando hacía chequos de las listas sólo podía "variar" elementos de una u otra, entonces tenía chequeos de este orden:
Lista1:___Lista2:
Comparo L1P1 con L2P1
L1P1 con L1P2
L1P1 con L1P3
lo primero no variaba hasta que llegase el límite de lo 2ndo. O al revés, no podía variar amas cosas al mismo tiempo.
Bien, pero idee un método para variar ambas. Sí, probablemente ya existe, pero ese no es el tema.
L1P1 con L2P1
L1P1 con L2P2
L1P2 con L2P1
L1P1 con L2P3
L1P2 con L2P2
L1P3 con L2P1
etc.

Tengo códigos desparramados en una cuadernola y sin mucho sentido porque como dije dependen de si la lista se hace antes de las comparaciones, o durante, y si se generan archivos o no. Me tomará tiempo analizar más o menos cada posibilidad y decidirme por una.
En fin, el código puede que esté mal pero por lo que pensé sería:
Código a:
Ver original
  1. Generar L1P1
  2. Generar L2P1
  3. X=1
  4. MaxX=1
  5. Y=1
  6. Comparar L1PX con L1PY
  7. X--
  8. Si X == 0
  9.    MaxX++
  10.    X=MaxX
  11.    Generar L1PX
  12.    Generar L2PX
  13.    Y=1
  14. sino
  15.    Y--

Por otro lado ¿cómo generar una lista de número primos? Investigué un poco sobre eso. Y ya lo logré o estoy cerca:
Código Frame 1:
Ver original
  1. // Elementos de la lista.
  2. E1 = 2;
  3. // Otros elementos:
  4. M.Es = 1;
  5. // Candidato.
  6. E2 = 2;
  7. M.NextENom = "E"+(M.Es+1);
  8. M.NextE = eval(M.NextENom);
  9. M.Tx = E1+"\n";

Código Frame 2:
Ver original
  1. M.A = 0;
  2. // Siguiente candidato.
  3. M.NextE = M.NextE+1;

Código F3:
Ver original
  1. M.A = M.A+1;
  2. M.B = M.NextE/eval("E"+M.A);
  3. if (M.B == Math.floor(M.B)) {
  4.     // El condicado no sirve, Siguiente.
  5.     gotoAndPlay (2);
  6. }

Código F4:
Ver original
  1. if (M.A < M.Es) {
  2.     // Probar con otro num al candidato.
  3.     gotoAndPlay (3);
  4. }

Código F5:
Ver original
  1. // El candidato se agrega a la lista.
  2. M.Tx = M.Tx + M.NextE + "\n";
  3. set (M.NextENom, M.NextE);
  4. M.Es = M.Es+1;
  5. M.NextENom = "E"+(M.Es+1);
  6. if (M.Es < 10) {
  7.     gotoAndPlay (2);
  8. } else {
  9.     stop ();
  10. }

Pero no tiene mucho sentido, es decir, inicialmente lo pensé como para que fuese el programa o la parte del programa que hiciera las listas, pero como se me complicó empecé a poner comentarios relacionados con el caso específico en vez de algo general. Y los conceptos que usé ahí quizá se contradicen con los que usé en otro sitio, lo siento, es que estoy pensando, no tengo las cosas tan claras. En fin, seguiré y más adelante les paso archivos swf.

Ah, también usé Eureqa para ver cual era la ecuación/función para los primos, pero resultó muy complicada. Me refiero a y en función de x:
x___y
1___2
2___3
3___5
4___7
5___11

Última edición por Tachikomaia; 12/10/2015 a las 02:14