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


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


  Mostrar Mensajes
Páginas: 1 ... 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 [107] 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 ... 257
1061  Media / Juegos y Consolas / Re: YouTube: Demostración de Castlevania Vampire's Kiss Hackeado de SNES en: 8 Mayo 2023, 07:05 am
Vaya, sí que ha sido una demostración de que ha hackeado el juego, que le den una medalla por esas más de 2 horas de enorme esfuerzo de demostración.

Sería más interesante si dijera cómo hizo el hack y que aprendiera a jugar más o menos bien, pero eh, lo importante es demostrar que hackeó.

De hackear no sé, de cómo jugar bien acá tiene:
https://www.youtube.com/watch?v=zlT4qbPo300
No digo que juegue así, pero puede aprender varias cosas.

Y no sé si es por el aparato en que corre el juego, la versión, el emulador o el hack, pero el juego parece más lento en el video que has puesto. Tal vez eso explica un poco la diferencia de tiempo.
1062  Programación / Programación General / Re: Ayuda con cálculos para que la trayectoria de una pelota cumpla ciertas condiciones. en: 3 Mayo 2023, 16:35 pm
También parece que te estaban dando ecuaciones para que la bola pase sobre la red exactamente a una cierta altura (¿?), pero, al menos aquí en este foro, lo que pedías era simplemente que fuera mayor o igual a un valor.
Me entreveré porque hay 2 tipos de tiros: Rápido y profundo.

La diferencia se nota si el personaje no tiene tanta fuerza.

En el profundo, se intenta que la bola bote en lo más profundo del área de saque, por lo que, si el personaje no tiene suficiente fuerza (pero suficiente como para pasar la red), golpeará un poco hacia arriba, será como un globito, la bola pasará a una distancia considerable de la red.

En el rápido, se intenta que la bola llegue a la cancha rival lo más rápido posible, independientemente de si bota profundo o no, por lo que siempre que el personaje tenga suficiente fuerza como para pasar la red, pasará a la mínima altura posible (18.6).

Prefiero que los cálculos sean para el profundo, ya que si se saca hacia el centro con poca fuerza, botaría fuera del área de saque y tendría que corregir eso; primero quiero lo mínimo necesario, o más importante.

Citar
Esos cálculos están mal. Como te había dicho, con tu fórmula sí estás aplicando una especie de "aceleración" pero no correctamente. Si la gravedad es 1 cm/s2,  entonces, si empezamos a contar en el momento en que la bola comienza a caer:

en 1 s, habrá caído 0.5 cm
en 2 s, habrá caído 2 cm
en 3 s, habrá caído 4.5 cm

porque la distancia s recorrida por un cuerpo con aceleración constante a (en este caso, la gravedad, o g), luego de t segundos es:

s = v0 * t + a * t2/2

donde v0 es la velocidad inicial. Como en tu ejemplo calculas el momento justo en que empieza a caer, v0 = 0, por lo que sólo queda: a * t2/2, y de ahí salen las distancias que te puse.
Gracias por la explicación.

Citar
corrijo un error de tecleo (...) Creo que era muy obvio
Sí, no problem.

Gracias también por la explicación de DistanciahastaRed.

Bueno... ¿y qué hago en el código? ¿qué agrego, qué modifico o quito?
1063  Programación / Programación General / Re: Dudas lenguajes programación en: 2 Mayo 2023, 17:59 pm
Para mí es como si estuvieraas preguntando si se nota la diferencia entre un cuadrado y un cubo, si mencionas esas cosas deberías saber las diferencias y saber notarlas. Yo no soy experto en programación pero el bajo nivel son sólo 0s y 1s o lenguaje hexadecimal, mientras que el alto nivel parece como el lenguaje normal.

O_O

https://qr.ae/pyTJzK

¿Para qué usas palabras que no sabes lo que significan?
1064  Programación / Programación General / Re: Ayuda con cálculos para que la trayectoria de una pelota cumpla ciertas condiciones. en: 1 Mayo 2023, 13:51 pm
En otro foro alguien me estaba respondiendo esto de un modo que yo lo entendía más que como me lo estaban explicando aquí y no seguí respondiendo aquí porque si intentar entenderlo de una manera me resultaba complicado, se imaginan si fueran 2, pero la persona del otro foro abandonó, yo en parte también, y ahora quiero retomar, así que retomo esto y envío un privado a RayR a ver si él también quiere. Respuestas de otros también son bienvenidas.

fuerza
Yo le llamaba fuerza a la medida de la capacidad de hacer que la pelota se mueva rápido, ahora uso fuerza de tiros que es calculado basado en varias cosas, pero en el fondo sigue siendo lo mismo. Músculos, no sé, es una palabra común en videojuegos.

...

Si la gravedad atrayera 1cm/s a la pelota, y la pelota está en 100cm, entonces con mi fórmula ocurriría esto:
En 1s cayó 1cm.
En 2s cayó 1cm+2cm
En 3s cayó 3cm+3cm
En 4s cayó 6cm+4cm
En 5s cayó 10cm+5cm
¿Con la fórmula que me dices qué ocurriría? Puede que necesite saberlo por si hago algo simplificado en algún momento y resulta que no quedaría bien porque caería a velocidades distintas.

Citar
primero debes calcular la distancia total (que llamaremos x) hasta el punto destino:

x =  raiz(DistanciahastaDestinoX^2 +  DistanciahastaDestinoY^2)
Considerando que estás trabajando en 2d y midiendo las distancias de un modo más complejo que yo, primero te pediría que me digas cómo obtengo DistanciahastaDestinoX y DistanciahastaDestinoY.

Si DhDX es como la línea que has puesto en la imagen, ten en cuenta que no sé cómo hacer que el programa gire los datos de modo que la línea quede totalmente horizontal.

DhDY supongo que es simplemente la altura a la que está la pelota (Z en la perspectiva aérea).

Empecemos por eso o, si quieres, continúa donde la otra persona me dejó, te muestro lo que me parece más relevante del cálculo pero si crees que falta algo me puedes avisar.
Nota: Es vista aérea.
Código
  1. // Datos para determinar velocidades del tiro.
  2. DistanciahastaDestinoX = 280.1-BallX;
  3. DistanciahastaDestinoY = 180-BallY;
  4. DistanciahastaMinsafeBallZ = BallZ-18.6;
  5. BallZwhenstriked = BallZ;
  6. DistanciahastaDestinoXY = Math.sqrt(DistanciahastaDestinoX*DistanciahastaDestinoX+DistanciahastaDestinoY*DistanciahastaDestinoY);
  7. DistanciahastaRed = DistanciahastaDestinoXY * Math.abs(BallY-300) / DistanciahastaDestinoY;
  8. // Determinando velocidades del tiro.
  9. BallXSpeed = DistanciahastaDestinoX/DistanciahastaDestinoXY*AlexFuerzadetiros;
  10. BallYSpeed = DistanciahastaDestinoY/DistanciahastaDestinoXY*AlexFuerzadetiros;
  11. BallZSpeed = 0;
  12. // Datos para determinar posiciones de la pelota.
  13. Tiempotranscurridodeltiro = 0;
  14. BallXwhenstriked = BallX;
  15. BallYwhenstriked = BallY;
DistanciahastaRed no entiendo cómo está calculada. BallY es en qué punto del eje Y está la bola, 300 es donde está la red, la distancia es la resta hecha absoluta, lo demás no lo entiendo.
AlexFuerzadetiros es básicamente lo que te expiqué, la fuerza del personaje, Alex.
Falta calcular la velocidad Z, pero la fuerza del personaje parece haber sido usada toda en dar velocidad X e Y, así que el cálculo de esas parece mal.

Luego tengo:
Código
  1. function Ballmoving () {
  2. Tiempotranscurridodeltiro = Tiempotranscurridodeltiro+1;
  3. BallX = BallXwhenstriked+BallXSpeed*Tiempotranscurridodeltiro;
  4. setProperty (BallShadow, _x, BallX);
  5. setProperty (Ball, _x, BallX);
  6. BallY = BallYwhenstriked+BallYSpeed*Tiempotranscurridodeltiro;
  7. setProperty (BallShadow, _y, BallY);
  8. DistanciaXYrecorrida = AlexFuerzadetiros * Tiempotranscurridodeltiro * C;
  9. Senodelangulodeltiro = Math.sqrt(1-C*C);
  10. BallZ = BallZwhenstriked + AlexFuerzadetiros * Tiempotranscurridodeltiro * Senodelangulodeltiro;
  11. BallZ = BallZ - 0.01 * Tiempotranscurridodeltiro*Tiempotranscurridodeltiro /2;
  12. }
C supongo que es Coseno, pero casi nada sé de eso.
La posición de BallZ parece que está mal calculada, demasiadas sumas y multiplicaciones (a menos que fueran números negativos pero lo dudo).
Y el resultado es este si el personaje tiene poca fuerza:
https://drive.google.com/file/d/1bY60WE73Gvh7eUFoRX8NAeuBoWIaYtNJ/view?usp=share_link
está aplicando más de la que tiene y además la pelota debe pasar más cerca de la red.

Con un poco más:
https://drive.google.com/file/d/1YEhAz8nrcztWpttScLOeMekfXlZHUVZ9/view?usp=share_link

¿Puedes arreglar eso? Aquí tienes su post:
https://foro.rinconmatematico.com/index.php?topic=122044.msg492794#msg492794

Gracias.
1065  Foros Generales / Dudas Generales / ¿Cómo el texto puede quedar prolijo en Reddit? en: 30 Abril 2023, 10:04 am
https://www.reddit.com/r/espanol/comments/132m8r4/c%C3%B3mo_el_texto_puede_quedar_prolijo_aqu%C3%AD/

Gracias.
1066  Informática / Software / Re: Algun programa para subir más brillo al monitor? en: 29 Abril 2023, 12:24 pm
Antes tenía algo, no sé si un programa o algo relativo a la configuración de la pantalla o el monitor de cierta marca específica, que también me permitía subir la gamma, que es otra cosa, aunque no sé explicarlo bien. En los primeros monitores que tuve se veía todo bien, no digo que fueran mejores, pero en los siguientes lo casi negro se veía negro, no había caso. Con el que tengo ahora ocurre similar, y además lo veo medio desde abajo así que, no sé explicarlo pero si la imagen es muy oscura, casi que sólo veo todo negro.

También pensé en pedir algo parecido, pero nunca lo desee tanto.
1067  Foros Generales / Foro Libre / Re: Trolls usando IA y muchos sus clones virtuales. en: 29 Abril 2023, 12:00 pm
¿Qué falta para ser posible?

No sabía que Schumacher estaba tan mal, pero según leí fue luego de retirarse, por un accidente esquiando.

Ese trolleo es malvado, o casi todos lo son, pero me gusta saber responder cualquier cosa, y no quiero ser sorprendido por ciertas cosas, así que ver trolleos no sería tan malo, si es como ver una pelea en un anime, con palabras en este caso. Sin duda sería feo que en las redes sociales haya trolls usando IA, o IA trolls (no es lo mismo) y otros perdiendo tiempo con ellos, pero siento que ocurrirá o que es parte de la vida y hay que mentalizarse para eso. Yo no sabía que en Internet hubieran tantos pero lo experimenté.
Por otro lado, me pasa que es como que ya no me interesa qué es verdad, es decir, como que me gusta refutar todo, o al menos frases que veo repetidamente, y que no están escritas en lugares legales (son grafitis), como una parecida a "la gente con poder intenta que seamos ignorantes" o "los muros son nuestros", me dan ganas de decirles cosas como "si fuese cierto serias ignorante y tu frase una tontería", pero es una falsedad así que no quiero, pero es que lo suyo... No sé explicarlo, parece una frase de un ignorante xP No es que le hayan prohibido entrtar a una biblioteca y leer tranquilo, o mirar cosas educativas por Internet, así que, es como que da risa y ganas de tomarle el pelo, como hicieron en este ancestral caso:
"Cuando Platón definió al hombre como un “animal bípedo sin plumas” y fue elogiado por su definición tan astuta, Diógenes desplumó una gallina y la arrojó en la Academia de Platón, anunciando: “He aquí el hombre de Platón”."
Pero no le haría eso a un pollo.
1068  Programación / Programación General / Re: ¿Qué valores se pueden obtener de una variable y cómo? en: 28 Abril 2023, 14:06 pm
Supongamos que la variable se llama V.

Desde tipo número obtener un número:
(sólo usar si se sabe que V es número).

1- Cantidad de caracteres.
Los lenguajes de programación suelen tener una función para esto, quizá antes es necesario convertir al número en texto.
Sin esa función tendría que ser algo como:
Código:
Largo = 0
Lupa = -1
Repetir
   Lupa++
   Si caracter nro Lupa de V != vacío
      Largo++
   sino
      Lupa = -1
mientras Lupa != -1

2- Cantidad de caracteres sin contar el "-" (si tiene).
Los lenguajes suelen tener una función que convierte un número a su absoluto, pero sino podría ser:
Igual que el anterior pero luego poner:
Si el 1er caracter de V == "-"
__Largo--

3- Cantidad de caracteres sin contar la "," (si tiene).
ValorObtenido = Largo de (Quitar decimales a V)
Sin esa función o similares habría que hacer algo como:
Código:
Largo = 0
Lupa = -1
Repetir
   Lupa++
   Si caracter nro Lupa de V != vacío y != ","
      Largo++
   sino
      Lupa = -1
mientras Lupa != -1

4- Cantidad de caracteres sin contar los (inserte número de un caracter).
Código:
Largo = 0
Lupa = -1
Repetir
   Lupa++
   Si caracter nro Lupa de V != vacío y != (caracter)
      Largo++
   sino
      Lupa = -1
mientras Lupa != -1

5- Cantidad de caracteres sin contar los (inserte caracter1) ni los (inserte2).
Código:
Largo = 0
Lupa = -1
Repetir
   Lupa++
   Si caracter nro Lupa de V != vacío y != (caracter1) y != (c2)
      Largo++
   sino
      Lupa = -1
mientras Lupa != -1
Si se tienen muchas excepciones, para evitar poner muchos ifs se podría hacer algo como:
Código:
// Excepciones (1 es excepción), se pueden poner hasta 10:
Char0 = 1
Char1 = 1
Char3 = 1
Char4 = 1
Char5 = 1
Largo = 0
Lupa = -1
Repetir
   Lupa++
   Si caracter nro Lupa de V != vacío
      Si eval("Char"+(caracter nro Lupa de V)) != 1
         Largo++
   sino
      Lupa = -1
mientras Lupa != -1
Si se quiere exceptuar "," o "-" no sé cómo evitar agregar ifs para eso.

6- Cantidad de caracteres sin contar los (inserte 2 caracteres).
Código:
NoContar = (inserte2c)
Largo = 0
Lupa = -1
Repetir
   Lupa++
   Si caracter nro Lupa de V es != vacío
      Si caracter nro Lupa de V == caracter nro 1 de NoContar
         Lupa++
         Si caracter nro Lupa de V != caracter nro 2 de NoContar
            Lupa--
            Largo++
   sino
      Lupa = -1
mientras Lupa != -1
Creo...

7- Cantidad de caracteres sin contar los (inserte un número).
Se puede hacer como el anterior pero si la excepción es más larga que la cantidad de caracteres analizados en el código no funcionará bien. Para que funcione bien habría que meter un while pero no soy muy hábil en eso, a ver:
Código:
Excepcion = (inserte número)
ExcepcionLargo = Largo de Excepcion, duh!
Largo = 0
Lupa = -1
Repetir
   Lupa++
   Si caracter nro Lupa de V es != vacío
      Si caracter nro Lupa de V == caracter nro 1 de Excepcion
         LupaBackup = Lupa
         Lupa2 = 0
         Repetir
            Lupa2++
            Si caracter nro Lupa2 de Excepcion == vacío
               // La excepción ocurrió
               Lupa2 = -1
            sino si caracter nro Lupa2 de Excepcion != caracter nro Lupa de V
               // La excepción no ocurrió
               Largo++
               Lupa = LupaBackup
               Lupa2 = -1
            sino
               Lupa++
               Lupa2++
         mientras Lupa2 != -1
      sino
         Largo++
   sino
      Lupa = -1
mientras Lupa != -1
Probablemente tenga algún error.

8- Cantidad de caracteres sin contar los (inserte número1, número2...).
Código:
// Inserte todas las excepciones que quiera, con el formato Ex(número aquí).
Ex(inserte número1) = 1
Ex(inserte número2) = 1
Ex(inserte número3) = 1
Ex(inserte número4) = 1
Ex(inserte número5) = 1
ExMinLargo = (inserte)
ExMaxLargo = (inserte)
Largo = 0
Lupa = -1
MaxLupa = (Largo de V) - ExMinLargo
Si MaxLupa < 0
   // La excepción más corta es más larga que V, ergo no está incluída.
   Largo = Largo de V
sino si MaxLupa == 0
   // La excepción más corta es igual de larga que V, ergo basta con chequear ese largo.
   Si eval("Ex"+NumaChequear) != 1
      Largo = Largo de V
   sino
      Largo = 0
sino
   Repetir
      Lupa++
      Lupa2 = Lupa
      NumaChequear = ""
      // Lo siguiente toma tantos caracteres de V como son necesarios para tener el largo igual al largo de la excepción más corta.
      Repetir
         Lupa2++
         Si caracter nro Lupa2 de V es != vacío
            NumaChequear = Concatenar (NumaChequear, (Caracter nro Lupa2 de V))
         sino
            // V ya no tiene caracteres sin chequear, ergo no hay más excepciones, fin.
            Largo = Largo + Lupa2 - Lupa
            Lupa2 = ExMinLargo+1
      mientras Lupa2 < ExMinLargo
      Si Lupa2 != ExMinLargo+1
         // Si V aún tiene caracteres sin chequear.
         Si eval("Ex"+NumaChequear) != 1
            // El número tomado no es excepción. Se agregarán caracteres hasta que no haya, o hallar una excepción, o superar el largo de la excepción más larga.
            Repetir
               Lupa2++
               Si caracter nro Lupa2 de V es == vacío
                  Lupa2 = ExMaxLargo+1
               sino
                  NumaChequear = Concatenar (NumaChequear, (Caracter nro Lupa2 de V))
                  Si eval("Ex"+NumaChequear) == 1
                     // Es una excepción.
                     Lupa2 = ExMaxLargo+1
            mientras Lupa2 < ExMaxLargo
            Si Lupa2 == ExMaxLargo+1
               Largo++
   mientras Lupa < MaxLupa
Más probablemete tenga error, me perdí bastante.

Bueno dejaré de hacer estos códigos por un tiempo, primero me interesa ver qué se puede obtener de una variable.

Próximamente posteo casos de contar caracteres específicos e iré posteando más cosas.
1069  Programación / Programación General / ¿Qué valores se pueden obtener de una variable y cómo? en: 28 Abril 2023, 09:17 am
Variables/valores de tipo número, texto o tabla (sería como un array 2d supongo).

Empezaré a hacer una lista y pseudocódigos, uds favor vayan agregando o pongan un link donde se responda esta pregunta o algo así, gracias.
1070  Foros Generales / Foro Libre / ¿Cómo hacer un diagrama de flujo de elegir desafíos en juegos? en: 28 Abril 2023, 09:10 am
Es un lío este asunto.

El diagrama lo quiero serio y con todas las opciones posibles, pero como base pueden imaginar algo así:


¿Por dónde empezar a hacerlo? Ese empieza en una pregunta, según eso yo debería empezar por plantear una pregunta ¿cual? Se me ocurre:
¿Qué nivel de complejidad quieres que tenga en qué consiste el desafío?
No se refiere a cuan difícil es de cumplir, sino de describir en qué consiste.

Las posibles respuestas yo diría que son números: 1, 2, 3... cada uno indica un nivel.

El nivel 1 debería ser el más sencillo de todos, pero no debe ser "intenta pasar el juego como te de la gana", eso no es un desafío como los que estoy planteando. Se me ocurre que en el nivel 1 se trate de pasar el juego, sólo se tenga en cuenta 1 variable 1 vez (al final del juego), y que sea tomada como tal, es decir no se toma una parte ni característica suya ni se transforma. Así, algunas posibles respuestas serían:
C: Juega de modo que cuando pases el juego la cantidad de cheats activos sea la mínima posible.
L: Juega de modo que cuando pases el juego el LV (nivel) de tu personaje nro1 sea el mínimo posible.
Debería entenderse que en el 1er caso es válido usar cheats hasta casi al final, sólo importa el valor en el momento final. Lo mismo pasa con el LV en el 2ndo caso, podría tenerse cualquiera durante casi todo el juego, sólo importa el valor final.

El nivel de complejidad podría medirse así:
"Es intentar pasar el juego(+1), y sólo se considera 1(+1) variable como tal(*1) 1 vez(*1)."
Los números entre paréntesis indican cuánto lo anterior está sumando a la complejidad.
1+1*1*1 = 2
Es decir, el nivel sería esa ecuación -1, o el nivel 1 podría ser "pásalo como quieras" y el nivel 2 sería este. Mejor así. También puede verse como tipo 1111.

En el nivel 3 se me ocurre que se aumente 1 cosita (sí... chiquita, que sólo con eso ya se poner complejísimo) de las mencionadas, o se aumenta un poquito la complejidad de alguna manera.
Nota: Por practicidad llamaré bugs también a los glitches, aunque de hecho la mayoría no sabemos la diferencia.
Tipo 111210P1: Es intentar pasar el juego(+1), y sólo se considera 1(+1) variable como tal(*1) 2 veces(*2): A(al inicio o luego de modificar el valor mediante algún X(+1 si X es cheat, +1 si bug, +2 si es cualquiera) por última vez) y B(al final, +0), siendo B más prioritario(+1) que A.
Esto es mínimo 1+1*1*2+1+0+1, que es 5, así que es de nivel 5, no va aquí.
Tipo 111210C11: Es intentar pasar el juego(+1), y sólo se considera 1(+1) variable como tal(*1) 2 veces(*2): A(al inicio o luego de modificar el valor mediante algún X(+1 si X es cheat, +1 si bug, +2 si es cualquiera) por última vez) y B(al final, +0), las cuales deben cumplir cierta relación entre sí(+1) sin interacción(*1).
Esto es mínimo 1+1*1*2+1+0+1*1+0, que es 5, tampoco va aquí.
Tipo 111210I11: Es intentar pasar el juego(+1), y sólo se considera 1(+1) variable como tal(*1) 2 veces(*2): A(al inicio o... +1 o +2) y B(al final, +0), las cuales interaccionan de modo simple(+1) sin condiciones(*1).
Mínimo 5 también, no va.
Tipo 112111: Es intentar pasar el juego(+1), y sólo se considera 1(+1) variable como base(*???) 1 vez(*1), sin interacción(*1) ni condiciones(*1). Ejemplos:
H: Juega de modo que cuando pases el juego el largo del HP (puntos de vida) de tu personaje nro2 sea el mínimo posible.
$: Juega de modo que cuando pases el juego la cantidad de tu dinero tenga la menor cantidad de caracteres repetidos posible.
¿Cómo se mediría la complejidad de considerar a una variable "como base", es decir del hecho de obtener un valor a partir de ella? Veremos más adelante.
Tipo 1211P1: Es intentar pasar el juego(+1), y sólo se consideran 2(+2) variables como tales(*1) 1 vez(*1), siendo A más prioritaria(+1) que B.
Mínimo 4, no va.
Tipo 1211C11: Es intentar pasar el juego(+1), y sólo se consideran 2(+2) variables como tales(*1) 1 vez(*1), las cuales deben cumplir cierta relación entre sí(+1) sin interacción(*1).
Mínimo 4, no va.
Tipo 1211I11: Es intentar pasar el juego(+1), y sólo se consideran 2(+2) variables como tales(*1) 1 vez(*1), las cuales interaccionan de modo simple(+1) sin condiciones(*1).
Mínimo 4, no va.
Tipo 2111: Es intentar llegar a cierto punto(+2), y sólo se considera 1(+1) variable como tal(*1) 1 vez(*1). Ejemplos:
M: Juega de modo que cuando venzas al enemigo más difícil el MP (puntos de magia) de tu personaje nro3 sea el máximo posible.
F: Juega de modo que cuando llegues a la ciudad nro4 la fuerza de tu personaje nro5 sea la mínima posible.

¿Cómo se mediría la complejidad de considerar a una variable "como base", es decir del hecho de obtener un valor a partir de ella?
Yo diría que según cuántos valores y condiciones se usen, aunque habría que especificar más.
Por ejemplo:
El largo de una variable se obtiene contando cuántos caracteres tiene, no se especifica algún valor para eso ni alguna condición; como complejidad vale *1. 0 valores: *(0+1).
Contar cuántas veces se repite el caracter 0 implica decir ese valor, como complejidad vale *2. 1 valor: *(1+1).
Valor de la complejidad: *(Cantidad de valores nombrados+1).

En fin, no parece tan complicado, pensé que iba a llegar pronto a la parte complicada, pero me equivoqué, iré a ello entonces. Una interacción entre variables es como una operación: A+B, A*B-C, etc. Una de las posibles interacciones es concatenar las variables. Eso puede dar resultados como 05 (0 y 5); -32-47 (-32 y -47); 0,19,6 (0,1 y 9,6), etc, los cuales parece claro que en cierto punto es necesario transformar en otros, pero es un tanto subjetivo en qué deben convertirse. Tampoco es que deban convertirse justo luego de una concatenación, se puedan obtener características de esos "valores sin sentido", como el valor simétrico más parecido. Y en definitiva, se puede transformar una variable o hacer que algunas interactúen, según condiciones. Así como se puede hacer algo como:
Si A es 01 o 02, etc
__A=0
es decir transformar un valor sin sentido en un número, también se podría hacer algo como:
Si 10 < A y A < 20
__A=11
es decir transformar un número en otro, o incluso en un valor sin sentido ¿para qué? No sé, en el ejemplo si A es la cantidad de enemigos vencidos y se pide que sean el mínimo posible, con esta especificación si se vencen más de 10 entonces se puede vencer hasta 19 sin problema. Es un posible desafío, puede que no tenga sentido, pero como dije puede haber alguna cosa parecida que sí. Convertir números en valores sin sentido puede que sirva para obtener propiedades de ellos como en el ejemplo que di (simétrico más parecido).

Y bueno, a mí me parece complicado porque no veo claro qué es cada cosa ni por dónde empezar.

¿Tomar como base es un tipo de transformación, o una transformación es un tipo de tomar como base, o eso no importa?
Lo que me parece es que ambos procesos usan una variable como base y obtienen un valor partir de eso, la diferencia es que una transformación siempre usa condiciones.

Lo que tenemos a partir de eso es que para ver las posibles transformaciones primero debemos ver las posibles condiciones.
Condiciones -> Transformaciones.

¿Cuales son las variaciones de tomar como base? O dicho de otro modo: ¿Qué valores se pueden obtener de una variable?
El proceso de obtener uno puede implicar condiciones e interacciones (no necesariamente entre variables, puede implicar valores fijos, es decir, no tomados del juego). Pero bueno, se podría empezar por esto, por los procesos de obtener un valor a partir de una variable, sin usar condiciones ni interacciones. Pensaré en ello.

Ahora tenemos:
Condiciones -> Transformaciones.
Condiciones -> Tomar como base.
Interacciones -> Tomar como base.

Las condiciones pueden implicar tomar como base e interacciones. ¿Y transformaciones? No sé, pero si fuera el caso es un problema porque contradice lo de la rayita que puse antes ¿para hacer la lista de A requiero hacer la lista de B y para hacer la lista de B requiero hacer la lista de A? ¿cómo rayos hago entonces?

¿Condiciones <-> Transformaciones?
¡Condiciones <-> Tomar como base!
Interacciones -> Tomar como base.
Interacciones -> Condiciones.

Las interacciones pueden implicar tomar como base, condiciones ¿y transformaciones? No sé.

¿Condiciones <-> Transformaciones?
¡Condiciones <-> Tomar como base!
¡Interacciones <-> Tomar como base!
¡Interacciones <-> Condiciones!

¿Se entiende? ¿cómo puedo hacer una lista de cosas X si para eso necesito una lista Y que para hacerla necesito una lista X? O estoy confundido en algo.
Páginas: 1 ... 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 [107] 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 ... 257
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines