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

 

 


Tema destacado:


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 9 10 [11] 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 ... 420
101  Programación / Programación C/C++ / Re: Comparacion de arrays y eliminacion de elementos iguales en: 8 Junio 2022, 13:20 pm
Cabe aún una interpretación más... por eso es tan importante ser certero en la especificación de lo que se solicita...

Y es que se eliminen las copias, es decir que haya 1 única copia por cada elemento presente (en ambos arrays).
Dados los arrays de ejemplo que presenta dijsktra: A={1,2,3,4,5} B={2,4,6,8,10}
 el resultado debería arrojar: C={1,2,3,4,5,6,8,10}
Como se ve, los elementos eliminados son 2 y 4, que aparecen en ambos arrays, de los cuales por tanto se deja una sola copia:

Comúnmente suele requerirse o necesitarse más a menudo esta 'interpretación' al hablar de 'retirar elementos iguales' (en realidad: eliminar copias de elementos iguales)...

El procedimiento más simple, es insertar ordenadamente el array más corto en el más largo.... estando así los elementos ordenados, las múltiples copias d e cada elemento aparecen contiguas, luego bastan 2 bucles uno que recorre cada elemento único, y otro interno que busca para cada elemento siguiente al único si se repite a continuación, ...saltar... el bucle externo va así pasando cada elemento único a la salida.
El método exacto puede varias según se quiera evitar el empleo de arrays auxiliares.

Un algoritmo que hace esto muy eficiente (dadas ciertas restricciones*), es una versión del algoritmo 'counting-sort'.

En general dicho algoritmo funciona con un solo array de entrada, pero puede rediseñarse para usar 2 o más arrays, en el pseudocódigo usamos con dos:

Este es el pseudocódigo (una implementación) para counting sort...
Código:
entero j, k, n
arrays C[],Salida[]

Si no se conoce el mayor de ambos arrays, buscarlo.
reservar memoria para el array C[0 a mayor]


bucle para k desde 0 a A.size -1
    C[A[k]] +=1
siguiente
bucle para k desde 0 a B.size -1
    C[B[k]] +=1
siguiente

n = (A.size + B.size)
k=0
j=0
reservar memoria para Salida[0 a n -1] 
hacer mientras (k < mayor)
    j = 1
    bucle para j desde 0 a C[k]-1 
        Salida[j-1] = C[k]
        j +=1
        si (j > n) devolver Salida
    siguiente 

    k += j
repetir

devolver Salida[]
El algoritmo es muy simple a pesar de la verbosidad mostrada...

Comparar con las (escasas) modificaciones del algoritmo para cumplir el propósito requerido:
Código:
entero j, k, n
arrays C[], Salida[]

Si no se conoce el mayor de ambos arrays, buscarlo.
reservar memoria para el array C[0 a mayor]

bucle para k desde 0 a A.size -1
    si C[A[k]]== 0
        n +=1
        C[A[k]] =1
    fin si
siguiente
bucle para k desde 0 a B.size -1
    si C[B[k]]== 0
        n +=1
        C[B[k]] =1
    fin si
siguiente

k=0
j=0
reservar memoria para Salida[0 a n -1] 
hacer mientras (k < n)
    si (C[k] > 0)  // si (C[k] == 1)
        Salida[j] = C[k]
        j +=1
    fin si

    k +=1
repetir

devolver Salida[]

Como se puede observar, se utilizan dos arrays adicionales, uno cuenta sobre su propio índice la cantidad de veces que aparece ese índice, es requisito para counting Sort, para la versión precisa, basta igualarlo a 1 o incluso usar un buleano. Se utiliza en la segunda parte dle algoritmo para recrear la salida.
El segundo array es el que se devuelve.


* El número mayor no debe ser muy grande (so pena de un gasto excesivamente grande de memoria adicional y quizás ralentización (si hay gran cantidad de ausencias), se aplica sólo a números enteros (preferentemente positivos, ...con negativos hay que rehacer el algoritmo para considerarlos). Es útil conocer de antemano el valor mayor... si no, supone un costo extra su búsqueda y es necesario para determina rel array auxiliar, para comprender la implicación de este array es preciso ejecutarlo con un pequeño array (por ejemplo 20) pero cuyo valor mayor fuere alto (por ejemplo 1 millón) respecto dle tamaño del array... en el caso del eejemplo propuesto, siendo 10 un valor (más alto del array) muy pequeño, no tiene repercusión a considerar.
102  Comunicaciones / Dispositivos Móviles (PDA's, Smartphones, Tablets) / Re: Si cambias la tarjeta sim de un móbil infectado a otro nuevo , hay peligro?? en: 8 Junio 2022, 04:00 am
Puedes usa rla SIM sin ningún problema...
Si te hackearon el móvil, lo que habrán hackeado será de Andoid, no de la SIM. La tarjeta SIM, es un chip... Para clonar la SIM, se deb disponer físicamente de la SIM... o proveerla tu proveedor de telefonía. Siempre podrás llamar a tu compañia y preguntarles si guardan el dato d ela última vez que se clonó tu SIM y en tal caso que te digan que fecha fue.

Y sí, un móvil sin tarjeta SIM sigue siendo un 'mini pc' pero sin teléfono y la cobertura extra que aporte, es decir sigues pudiendo conectarte vía wifi, pero no vía 'datos móviles'.
Es frecuente tener más de un teléfono, no vas a tener en cada uno de ellos una tarjeta SIM... ni estar intercambiando la tarjeta entre uno y otro.

Yo acostumbro a tener siempre 2 tlf. Uno con SIM el otro jamás... uno lo uso para cosas de seguridad y el otro para el día a día. En ambos uso la misma cuenta de android...

También es frecuente que tener 2 teléfonos (ambos con SIM), usando uno de modo profesional y otro de modo particular... el profesional se suele apagar fuera del horario laboral (sobre todo fines de semana y vacaciones), y el otro se suele bloquear conexiones en horario laboral, o al menos internet (siempre puede ser adecuado tener disponible las llamadas por cuestiones urgentes de índole familiar).
103  Foros Generales / Foro Libre / Re: Tormenta por un tuit: ¿tontopollas es insulto o palabra polisémica? en: 7 Junio 2022, 14:20 pm
Sí, en Andalucía se usa 'pollas' de igual manera que en Colombia y Venezulea se usa 'vaina' o en otras partes 'chisme'... encaja dentro de cualquier frase con significado único (el sentido correcto de esaa frases, solo la malinterpreta quién no conoce el uso de tales términos).
104  Programación / Programación General / Re: Programación Rx en: 7 Junio 2022, 14:14 pm
Probablemente, ni lo verás...

Como u'saurio' de foros, te anticipo que he visto infinidad de veces, gente reclamando tal o cual sección, o en nuestro ámbito, tal o cual lenguaje (para los años 80, ya había más de 1500 lenguajes de programación, desde entonces hasta hoy habrán surgido seguramente otros tantos), crear el foro y ver como un año después apenas si tenía (por ejemplo) 20 temas abiertos, lo que demuestra el fracaso de la actividad, supuesto un interés previo.

Date cuenta que ni siquiera hay entrada en Wikipedia para Rx... tampoco en la wiki inglesa.
105  Programación / Programación Visual Basic / Re: leer archivo combo en: 7 Junio 2022, 01:58 am
La ventana de 'compras', junto con la de 'Almacen' suponen realmente ser el 'catálogo'... El almacén contiene todos los artículos que se puedne comprar (y la cantidad en stock de cada uno de ellos).

El comprador usa la ventana de compras, para indicar que artículo quiere comprar de los que el almacen provee... ahí admeás se señala cuantos quiere comprar. Cuando quiere comprarlo, lo añade al carrito.... En la ventana de compras, cuando se elige un producto, se exhiben las características del producto, para que el comprador pueda decidir mejor.

El 'carrito' de la compra, es una compra reservada, con la oportunidad de más adelante descartarlo... justo como haces cuando vas a un supermercado, metes artículos en tu carrito y los sueltas más tarde si quieres o lo cambias por otro, o tomas más cantidad del mismo artículo....

Solo cuando pasas por caja, (pagar los productos que contiene el carrito), es cuando la compra se ha realizado. Se completa con la emisión de la factura al cliente, y en la parte del vendedor anotar la factura comprada...

La suma de todas las compras es la facturación. Un 'supervisor', podría querer  consultar que productos se han vendido, por ello se listan en facturación. Cada factura es un ticket, y tiene asociado una lista con los productos comprados en ese ticket (lote, factura).

Típicamente las empresas venden los mismos productos (o casi siempre, dado que el stock puede ir variando ocn el tiempo, un producto ya no se vende y uno nuevo entra en stock...). Eso es el almacén, siempre en la trastienda, en la tienda dado su tamaño, y la necesidad de exponerlo al comprador, el producto suele ocupar más tamaño, la altura está limitada y la anchura de pasillos puede estar sujeto a leyes (anchura mínima), el almacén permite tenerlo todo apilado ocupando menos espacio, en cualquier caso el control del almacén, va por otro lado de la gestión de la tienda, pués la tienda vende (desde el almacén se compra en grandes cantidades, por lo general).

Las empresas necesitan hacer cuentas periódicamente para hacer balances, típicamente cada mes, coincidiendo con la misma periodicidad en que s eaga a los empleados, así se puede conocer con exactitud el coste total por mes y por tanto distinguir la recaudación, los beneficiós, los salarios, los impuestos, etc...

Bueno, pues las facturaciones son equivalente a las nóminas de los trabajadores, cada mes deben expedirse y detallarse y lógicamente poder consultarse (y probablemente imprimirse).

Siempre podrás hacerse una suma total anual, que tome las 12 últimas facturaciones y calcule el total de recaudación, de impuestos aplicados, de facturas emitidas, de artículos vendidos, etc... Unos valores mínimos serías para presentar a Hacienda, y otros detalles podrían ser para optimizar el lamacén o potenciar las ventas de determinados artículos, los vendedores tiene toda una plétora de artimañas para intentas optimizar las ventas y para ello necesitan muchos detalles... las ofertas son solo una de ellas, peor muy habitual.

...entonces la facturación que se abre, es como cuando los cajeros del supermercado acuden por la mañana al trabajo y 'abren su caja' metiendo su código personal, para seguir vendiendo... eso es abrir la facturación (abrir el programa con la facturación actual).

...como digo el supervisor puede querer abrir una factuación pasada, para consultas o impresión de detalles, pero no ya para comprar. La facturación para comprar siempre debería ser la más actual. El contable del supermercado, cuando termine el mes tendrá las nómicas dle mes de cada trabajador y a su vez presentará la facturación al director... igualmente el dueño o supervisor de la tienda, cuando termine el mes, debería crear una nueva facturación y apartar la previa a otra carpeta donde también tiene copia del programa (o iría a parar a su ordenador o a un servidor), precisamente para consultas. Así las compras se hacen siempre sobre la facturación del mes en curso.

...la facturación del mes pasado (y anteriores) está cerrada, aunque el programa (creo recordar, no voy a recordar todos los detalles varios meses después) que no ha provisto un 'mecanismo de cierre de facturación' tal que luego dicha facturación estuviere sujeto solo a lectura, no a modificaciones ni añadidos.

En todos los ficheros que se crean he dejado suficientes espacio en la cabecera como para abordar detalles específicos a cada uno de ellos, tal que no requiera recrear-reconstruir todos los ficheros ni el código en el mismo... bastaria pues añadir el código para tratar esos campos que fueren añadidos en la cabecera del fichero deseado. Pero todo eso ya se entiende que corresponde a las ideas y modificaciones que el interesado puede acometer de forma particular... yo he provisto generalidad y espacio en la cabecera, para que sea flexible a añadidos de características específicas de trato a los ficheros. Incluso creo recordar que proveí también en los registros campos reservados para posibles futuras ampliaciones tal que no exijan reescribir todos de nuevo y los ficheros (previos) puedan seguir siendo legibles.

106  Foros Generales / Foro Libre / Re: Esta máquina de cortar el pelo sería una buena compra? en: 6 Junio 2022, 21:51 pm
Ay... cómo no, las eternas y insustanciales preguntitas de win7.

El caso, es que yo creo recordar que (tiempo atrás) pusiste una foto tuya, donde en el mensaje decías algo relativo a un corte de pelo, si gustaría a las chicas o algo de la calvicie (que la foto proclama)... entonces cabe preguntar, que más da, si una máquina es buena o no... cuando a uno le quedan 4 pelos, cualquier máquina vale. ...deja que esas preguntas se las haga alguien con las melenas propias que forzados estén de hacerse una pregunta así.
107  Foros Generales / Foro Libre / Re: Conflicto Ucrania-Rusia,EEUU, OTAN, Europa. (Todo las noticias relacionadas irán aquí) en: 6 Junio 2022, 21:37 pm
Es insoportable que tengamos que asistir a tantas muertes innecesarias, por culpa de un cretino enamorado de glorias militares y del afán económico, a costa de la vida de los demás.

Tanto odio está generando esta guerra, que al final dos pueblos que eran hermanos acabarán en una historia irreconciliable, marcando un antes y un después.

Insisito en que la guerra se acabaría con una sola muerte, la del fascista Putin. No hay necesidad de que muera nadie más (si acaso algunos generales y millonetis que lo seducen, o se ven seducidos por él y le dan todo su apoyo).
108  Programación / Programación Visual Basic / Re: leer archivo combo en: 6 Junio 2022, 21:14 pm
Claro. Si yo no te digo que no preguntes (de hecho suelo indicar en muchos de mi mensaje justo lo contrario, que si hay dudas que pretgunten)...

Lo único que te pido es que tus preguntas sean consecuentes.

Esta última pregunta, por ejemplo carece de sentido... tu preguntas por facturaciones (uno u otra), cuando en la ventana de compras, le da igual la facturación, pués opera con los artículos del almacén y luego los enviará al 'carrito de la compra'... luego o se cancela o se compra y si se compra irá a la facturación actualmente abierta. Y si no hay una facturación abierta, no se puede comprar, porque el menú queda bloqueado, sujeto a esa condición (facturción abierta). Pero incluso esto, yo no debería decírtelo, ya tu deberías saber con alguna claridad qué es lo que hace esa ventana y en qué condiciones opera.

Técnicamente yo no debería haberte respondido nada más que: "tu pregunta no tiene nada que ver con la realidad de la funcionalidad de la ventana de compra..." aún así he hecho el esfuerzo de intentar intuir si la cuestión que te bloquea fuera por otro lado y simplemente no te hayas explicado adecuadamente... y en esa 'intución forzada', ni siquiera sé si mi respuesta te será o no de ayuda, es decir si acaso acerté con tu problema o solo he perdido tiempo explicando algo que no te interesa para nada, pués no aportas ningún 'feedback', que en lo sucesivo permitiere trazar un camino acertado a seguir.
109  Programación / .NET (C#, VB.NET, ASP) / Re: Compartir Proyectos y Compilar en: 5 Junio 2022, 20:45 pm
No se entiende bien... orienta hacia demasiados lados como para asumir uno específico.

Normalmente si se precisa que un programa controle otro programa, cabe preguntarse, si el programa controlado, no es preferible que sea una librería o en todo caso un servidor.
110  Programación / Programación General / Re: En tu trabajo ves que desarrollo web para trainner se "esta saturando post pandemia"? en: 5 Junio 2022, 20:39 pm
Los hindúes, ya saturaron la programación desde hace 20 años o más... Dado el valor al cambio de moneda, son un atractivo para las empresas 'usureras' (esas donde el 100% de lo que les importa es solo y siempre el dinero).
Páginas: 1 2 3 4 5 6 7 8 9 10 [11] 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 ... 420
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines