Título: Generar una tabla de verdad Publicado por: JonaLamper en 17 Noviembre 2017, 00:59 am Muy buenas noches,
He estado buscando algunos ejemplos sobre esto, pero ninguno me convence. A ver si a alguien se le ocurre alguna forma "elegante" de hacerlo. Lo que pretendo es generar una tabla de verdad. Imaginemos una tabla de verdad de 3 variables, sería así: 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 Ahora bien, cada fila de esas para mí va a ser un array. Es decir que yo tendría 8 arrays con esas 8 combinaciones. Luego, ¿cómo hago un programa que dadas n variables me genere todos los arrays posibles, es decir, 2^n arrays? Muchísimas gracias! ;D Título: Re: Generar una tabla de verdad Publicado por: ivancea96 en 17 Noviembre 2017, 16:17 pm Fíjate en una de las columnas. ¿Cada cuánto cambia el número? En la segunda, cada 2 valores, cambia.
Si puedes hacerlo para 1 columna, puedes hacerlo para cualquiera o para una tabla completa. Título: Re: Generar una tabla de verdad Publicado por: Serapis en 17 Noviembre 2017, 21:31 pm Es más sencillo.
Cada fila es un número que va desde 0 hasta 2^n-1 para tres variables (n=3, son 8 combinaciones, que van del 000, al 111) Si llenas un array con los valores 0 a 255, tienes lo que quieres con 8 'variables', Si precisas verlo en formato binario, pásalo a texto. Aquí un ejemplo en pseudocodigo. Código: array de string = Funcion Binario2alaN(entero n) Título: Re: Generar una tabla de verdad Publicado por: JonaLamper en 10 Enero 2018, 19:54 pm Hum... no consigo ver claro el código, NEBIRE.
Título: Re: Generar una tabla de verdad Publicado por: Serapis en 11 Enero 2018, 15:01 pm Te decía que los números del 0-7 (para 3bits) ó 0-225 (para 8 bits), así en orden... ya mantienen esa estructura de bits que quieres.
...y que si quieres verlo con caracteres binarios (en texto), puedes usar un bucle externo (0-7; 0-255) para convertir cada número en un texto binario (el bucle interno, se usa para recorree los bits de cada número). |