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

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Foros Generales
| |-+  Foro Libre
| | |-+  Solucionado: Problema con expresión de funciones.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Solucionado: Problema con expresión de funciones.  (Leído 1,629 veces)
Tachikomaia


Desconectado Desconectado

Mensajes: 1.460


Hackentifiko!


Ver Perfil
Solucionado: Problema con expresión de funciones.
« en: 2 Septiembre 2023, 03:15 am »

Estoy pensando en cuales son los métodos con los que se puede generar un número a partir de otro. Por ejemplo es conocido "Obtener longitud del número" (aunque puede requerir convertirse en texto antes ¿no?), con eso a partir de por ejemplo el número 32896 se generaría el número 5.

También intento resumirlos más o menos:
L(N) <- Obtener longitud de N.
A(N) <- Obtener el absoluto de N.
etc.

Mi problema actual es lo relacionado con partes y contenido de partes del número:

Esta la tengo clara:
n(cPdN) -> Mínimo (obtener cada Parte de N). "n" es Mínimo, "x" sería Máximo, y es claro que "n" no es lo mismo que "N". El resultado es siempre 0, porque se consideran las partes, no sus contenidos, entonces por ejemplo el N 987 tiene una parte 0, otra 1 y otra 2, y la mínima parte es la 0 (0<1<2, no me refiero al contenido 9, 8 y 7, sino las partes o posiciones en sí). Sin duda una función inútil, pero es que intento ver cuales son, estoy haciendo combinatoria digamos, luego veo si son útiles o no.
Mínimo (obtener cada Parte de 32896)
Mínimo (0, 1, 2, 3, 4)
0
Para simplificar, la he resumido a P(n, N) -> Parte Mínima de N.

Esta también la tengo clara:
n(CdcPdN) -> Mínimo (obtener Contenido de cada Parte de N). Aquí, si N es 32896, el resultado es 2 porque 2 es el mínimo contenido de las partes de N. 2<3<6<8<9.
Mínimo (obtener Contenido de cada Parte de 32896)
Mínimo (3, 2, 8, 9, 6)
2
Simplificada a Cn(N) -> Contenido Mínimo de N.

Esta no la tengo tan clara:
Contenido de la mínima parte de N.
Es lo mismo que contenido de la parte 0 de N, pero quiero aprender a hacerlo así, porque creo que me servirá para casos en que la parte a analizar sea variable.
Según pensé es CdlP(n(cPdN))dN, pero eso es absurdamente largo, por eso es que hice el 2ndo resumen, que sería CP(n, N) -> Contenido de la Parte Mínima de N.
Contenido de la Parte (Mínimo (obtener Contenido de cada Parte de 32896)) de 32896
Contenido de la Parte (Mínimo (3, 2, 8, 9, 6)) de 32896
Contenido de la Parte (2) de 32896
8 (el contenido de la parte 0 es 3, de la parte 1 es 2, de la parte 2 es 8).

Esta no la tengo clara:
Contenido de (mínimo contenido de N) de N.
¿Sería CP(Cn(N), N)?

Quiero un método para poder expresar estas cosas de forma clara para poder variarlas fácil.

En principio yo tenía:
Min P
Cd Min P
Min CdP
Cd Min CdP
Y había pensado que eso se podía ver como partir de lo 1ero: Min P
pero agregando cosas antes y/o luego de Min:
(Aquí1) Min (aquí2) P
Antes de Min puede agregarse Cd: Cd Min P
Luego de Min también: Min CdP
Y entonces al agregar antes y después surge el último de esa lista: Cd Min CdP

Lo malo que tiene eso es que no menciona a N y yo en el futuro quiero poder hacer esto usando varios Ns. Además el resumen no refleja bien lo que significa, o al menos ya no lo veo claro:
Min P -> Mínima Parte de N.
Cd Min P -> Contenido de la Mínima Parte de N.
Min CdP -> Mínimo Contenido de las Partes de N.
Cd Min CdP -> De N el contenido de la Parte que tiene el Mínimo Contenido de N.
Es un lío.

En Flash se diría más o menos así:
min(lista de partes de N)
N.charat(min(lista de partes de N))
min(lista de contenidos de N)
N.charat(min(lista de contenidos de N))
No me gusta porque si voy a usar por ejemplo L(N), como dije al inicio, entonces quisiera que todas tengan esa "forma", en que primero se dice qué se hace, y luego cual es el parámetro o qué número se usa. En las expresiones que acabo de poner N está al inicio a veces.

¿Qué me recomiendan?

Edit: Lo he pensado otra vez y llegué a esto, pero no sé si está bien o si hay algo mejor:
- Obtener la parte mínima de un número:
   - min(lista de partes de N).
   - n(cPdN) -> Mínimo (obtener cada Parte de N).
   - P(n,N) -> Parte Mínima de N.
Nota: La parte mínima de un número siempre es la 0, no debe confundirse con el contenido de esa parte.

- Obtener el contenido de la parte mínima de un número:
   - N.charat(min(lista de partes de N)) (más o menos así es en el lenguaje Actionscript).
   - CdlP(n(cPdN))dN -> Contenido de la Parte (Mínimo (obtener cada Parte de N)) de N.
   - C(P(n,N),N) -> Contenido de la parte Mínima de N.

- Obtener el mínimo contenido (subnúmero) de un número:
   - min(lista de contenidos de N).
   - n(cCdN) -> Mínimo (obtener cada Contenido de N).
   - nCN -> Mínimo Contenido de N.

- Obtener el contenido de la parte nro (Obtener el mínimo contenido de un número) del número.
   - N.charat(min(lista de contenidos de N)).
   - CdlP(n(cCdN))dN -> Contenido de la Parte (Mínimo (obtener cada Contenido de N)) de N.
   - C(nCN,N) -> Contenido de la parte (Mínimo Contenido de N) de N.

¿Ven algún error? Yo me pierdo bastante. ¿Se les ocurre algo mejor?

Edit2: Creo que así es suficiente:
nPN: Mínima parte de N.
C(nPN,N): Contenido de la mínima parte de N (en realidad es Contenido de la parte (mínima parte de N) de N, eso permite que puedan usarse 2 distintos N).
nCN: Mínimo contenido de N.
C(nCN,N): Contenido de la parte (mínimo contenido de N) de N.

Lo marco como solucionado, pero quién sabe, quizá vea un error que ahora no veo.
« Última modificación: 2 Septiembre 2023, 07:58 am por Tachikomaia » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines