Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - avesudra

#71
¿Y cual es tu problema concretamente?

Saludos.
#72
Cita de: engel lex en 30 Marzo 2015, 16:31 PM
te recomiendo maquina virtual y compilar nativo... en cross conseguirás los mil problemas si realmente no estás seguro que haces
Opino exactamente lo mismo. Además para montarte un linux con las herramientas necesarias en VirtualBox no tardas ni una hora.

Saludos.
#73
Tienes que hacer compilación cruzada(Cross-Compiling) con MinGW(que no sé si se puede) ,montarte una máquina virtual con Linux(lo más sencillo) o seguir esto que es lo que he encontrado(no lo he probado):

http://metamod-p.sourceforge.net/cross-compiling.on.windows.for.linux.html

Saludos.
#74
Programación C/C++ / Re: [?]Eliminar nodo
27 Marzo 2015, 16:03 PM
Hola lerg96 a parte de lo que te ha comentado rir3760 te comento que:


  • En la función menu, si escoges una opcion vuelves a llamar a menu recursivamente, esto se va acumulando en la pila de llamadas y no es bueno.
  • La función main debe tener un tipo de retorno entero, no puede ser void.
  • No deberías mezclar C++ con C, en C++ las bibliotecas adecuadas son cstdlib y cstdio, aunque ésta última es útil en casos muy concretos y su trabajo lo hace iostream prácticamente.
  • El typedef está mal puesto, tienes puesto:
Código (cpp) [Seleccionar]
typedef nodo lista;
Cuando lo correcto es:
Código (cpp) [Seleccionar]
typedef struct nodo lista;

  • En cuanto a lo del fflush(stdin), deberías usar fgets + sscanf(en C) o cin directamente en C++.

  • No debes usar system("pause") pues no funciona en todas las plataformas, lo puedes sustituir por un getchar(), o un cin.get()
  • No deberías usar system("cls"), podrías poner una directiva de preprocesador pero como trabajas sobre Visual Studio no sé como va en dicho compilador.

Lo del menu lo puedes arreglar con un do - while o con while simplemente.

Aunque como dice rir3760 el problema principal está en esa función.
#75
Ups, craso error, gracias por corregirme rir3760.

Saludos.
#76
El post está mal colocado, solo eso, debería estar en la sección de Programación C/C++ que para eso está.

Tu error es que estás confundiendo los ámbitos de las variables, para asignarle memoria a la variable matriz desde otro ámbito, debes pasarle la dirección de memoria de la variable matriz a la función asignar, quedando así:
asignar(&matriz, filas, columnas);

Y modificar la función asignar en consecuencia:

void asignar(char ***matriz, int filas, int columnas)
{
  //ASIGNAR MEMORIA PARA EL ARRAY DE PUNTEROS
  *matriz = ((char **)malloc(sizeof(char*)*filas));
  //ASIGNAR MEMORIA PARA CADA FILA
  for(int i=0;i<filas;i+=1)
  {  
     **matriz = ((char *)malloc(sizeof(char*)*columnas));
  }
}



Saludos.
#77
Cita de: Seyro97 en  3 Marzo 2015, 01:13 AM
Vaya, muchas gracias :D Supongo que no encontré esa solución por no buscar en ingles...

De nada, para la próxima ya sabes.

Saludos  :silbar:
#79
Como decís, me equivoqué de fórmula  :(  Me confundí con combinaciones. Es como dijo Electro aunque la fórmula que has puesto se refiere a variaciones y no a permutaciones, pero como las permutaciones es un caso particular de las variaciones no pasa nada. La fórmula realmente es el factorial de n. Dado que si tomas n elementos de n en n.

El primer elemento podrá estar en todas las posiciones.
El segundo elemento podrá estar en todas las posiciones menos 1.
El tercer elemento podrá estar en todas las posiciones menos 2.
El cuarto elemento podrá estar en todas las posiciones menos 3.
.
.
.
El n elemento podrá estar en todas las posiciones menos (n - 1).

Es decir n(n-1)(n-2)(n-3) ... 1 = n! .

Que es un caso particular de variaciones cuando la r de la formula de electro es igual a la n.

Saludos
#80
Las posibles combinaciones sin repetición vienen dadas por el número combinatorio m sobre n, cuya formula es:


Y eso te da las combinaciones sin repetición de m elementos tomados de n en n.

En tu caso da nueve dado que son 9 elementos tomados de 1 en 1:

123456789
912345678
891234567
789123456
678912345
567891234
456789123
345678912
234567891

No entiendo la pregunta de los cubos de colores. Si tuvieses 9 cubos por cada n colores, el número de elementos distintos serían 9n, por tanto sería volver a aplicar la fórmula.

Por ejemplo supongamos que tenemos 9 cubos por cada 8 colores. Tenemos 72 cubos distintos. Tomados de 1 en uno sin repetición las posibles combinaciones son 72.

La fórmula viene muy bien explicada aquí:

http://es.wikipedia.org/wiki/Coeficiente_binomial#Definici.C3.B3n_combinatoria

El día que habiliten MathJax en el foro se verá bien la matemática también sobre fondo negro y no tendremos que andar incluyendo imágenes.

Saludos.