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

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  ¿Cómo es un pseudocódigo que varíe una afirmación?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿Cómo es un pseudocódigo que varíe una afirmación?  (Leído 1,927 veces)
Tachikomaia


Desconectado Desconectado

Mensajes: 1.198


Superhacker (es broma xD )


Ver Perfil
¿Cómo es un pseudocódigo que varíe una afirmación?
« en: 12 Agosto 2019, 13:06 pm »

Es decir, que la salida sea algo así:
Código:
Sin modificadores:
K < C
Con +:
K < C+K
C < C+K
Con *:
K < C*K
C < C*K
Con + y *:
K*C < C+K
K < (C+K)*K
K < (C+K)*C
C < (C+K)*K
C < (C+K)*C
C+K < (C+K)*K
C+K < (C+K)*C
K < C*K+K
K < C*K+C
C < C*K+K
C < C*K+C
C*K < C*K+K
C*K < C*K+C
Y creo que sigue, por ejemplo K*C+K < C+K

Luego se agregaría "Con /" y así sucesivamente con cada operación que pueda realizarse en 1 línea de código, es decir, se acepta por ejemplo Floor(C), usar una función "común", pero no crear una. En otras palabras, Floor(C) se puede aplicar en una línea de código, dentro de un if por ejemplo, pero no se acepta por ejemplo Contar0s(C) porque sería una función creada.

C es una variable (abreviación de "Candidato") y K es una constante.

El signo comparador no me interesa vararlo por ahora.

Bueno... ¿qué lógica hay en la lista? Pues... básicamente es combinatoria de C, K y operaciones... tratando de que ciertas combinaciones no se muestren, pero uds hagan lo que puedan...

Idealmente sería:

- No se permite K+K, K*K, etc, porque estructuralmente hablando el resultado de eso es simplemente K, es decir, no le veo sentido a que se repita (Nota) por ejemplo la operación 2+2 si puedo poner simplemente 4.
Nota: Las afirmaciones que se muestran en la salida podrían ser usadas para evaluarse en otros programas, en cuyo caso habría repeticiones; con "repita" me refería a eso.

- No se permite C+C, C*C, C/C, ni cosas que son abarcables por K, es decir, C+C=C*2, C*C=C^2, C/C=1. Los números constantes pueden ser sustituídos por K... C+C=C*K, etc. El punto es que no tiene sentido poner en la lista cosas que están abarcadas por otras cosas de la lista.

- No se permiten estructuras con contenido igual en ambos lados. Las he quitado pero si me quedó alguna sorry.

- El signo "-" me pareció innecesario ya que K puede ser negativo, pero si uds creen que es necesario en algo como *-C en alguna parte, úsenlo. La idea de esto es que estén todas las estructuras de modificaciones posibles, no sé mucho de matemática así que no sé bien cuales serían.

- No se permiten afirmaciones que tras un "reflejo" sean iguales a otras de la lista. Por ejemplo K < C, más allá del símbolo comparador, es igual que C < K, estructuralmente: Hay una K suelta de un lado y una C del otro, de qué lado sea no me importa aquí. Como dije estas afirmaciones podrían ser usadas por otros programas, aunque yo las seleccionaría, y para eso me basta con ver la estructura, y sabiendo que no están las "reflejables" si quisiera una de esas reflejo una de las que hay. Obviamente no es una explicación muy profunda pero tampoco viene mucho al caso entender por qué lo quiero así. Bueno... es que la selección que haría sería en base a lo compleja de la estructura por lo que me da igual si es "A y B" o "B y A".

- No se permite lo simplificable, por ejemplo "(C+C)", es decir, con paréntesis que sobran. No sé más allá de paréntesis si hay algo más que no haya sido explicado y prohibido antes.

Bueno... con respecto a las operaciones, de momento serían estas:
+x
-x
*x
/x
Math.abs(x)
Math.ceil(x)
Math.floor(x)
Math.pow(x, x2)
Math.round(x)
Math.sqrt(x)

En x iría cualquier cosa que incluya C o K

No recuerdo si con pow se puede hacer sqrt, en tal caso sqrt podría ser innecesario.

Gracias y suerte en pila.

Sí, no es para un trabajo, profesor, etc, a menos que alguien espere algo de mí y me pague en cierto modo por ello, quizá algún familiar, no sé, pero daré el crédito al que me ayude. Y digo "suerte en pila" porque no tengo mucha idea de cómo hacerlo, al menos de momento. Tengo un programa que genera todas las palabras posibles, quizá cambiando "A" por "+K" por ejemplo, y así sucesivamente, podría transformarlo en un generador de las combinaciones que necesito... ¿Creen que sí?


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Pseudocodigo
Programación General
Pedrinchi27 0 3,807 Último mensaje 24 Mayo 2011, 03:09 am
por Pedrinchi27
¿como desarrollar la logica de programacion con pseudocodigo? « 1 2 »
Programación General
Weeken 13 11,917 Último mensaje 17 Marzo 2013, 02:32 am
por arts
¿Qué creen sobre esta afirmación?
Foro Libre
z3nth10n 9 2,852 Último mensaje 5 Abril 2014, 16:17 pm
por z3nth10n
¿cuál es el truco de esta afirmación?
Foro Libre
PalitroqueZ 8 4,851 Último mensaje 7 Abril 2018, 10:08 am
por Orubatosu
como declaro una variable en un void para que varie?
Programación C/C++
AXA 3 2,971 Último mensaje 25 Octubre 2021, 13:51 pm
por MAFUS
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines