buenas noches comunidad
tengo un pequeño inconveniente con este codigo
el problema recibe un numero n y de retorno me debe devolver el numero de combinaciones posibles
el ejemplo que me dieron era que si metia 3 me botaba 13 combinaciones.
miren este es mi codigo, ejecuta bien me pide el numero n pero despues de eso el programa no me responde.
me puede ayudar por favor a mirar donde estoy cometiendo este error.
desde ya muchisimas gracias por su respuestas
Citarimport java.util.*;
public class Ordenaciones {
public static void main(String args[]){
int n=0;
int [] i;
System.out.println("Digite El Numero De Objetos");
Scanner nums =new Scanner(System.in);
n=nums.nextInt();
i= new int[n];
System.out.println("El Numero De Ordenaciones Son"+orden(i,n));
}
static int orden(int i[], int n){
int x;
int y = 0;
int s;
int k;
int j;
if(n<=1){
return n;
}
for(j=-1;j<=n;j++){
i[j]=0;
}
i[0]=1;
x=0;
for(k=2;k<=n;k++){
for(j=0;j<=n-1;j++){
if(j>1){
y=i[j-2];
}
y=x;
x=((k-j)*(i[j]+i[j-1]));
}
i[n-2]=y;
i[n-1]=x;
}
s=0;
for(j=0;j<=n-1;j++){
s=s+i[j];
}
return s;
}
}
Hola JulCesa:
En esta parte del codigo tienes un error los recorridos de los arreglos se inician desde 0 hasta N
por tanto tu estas llamando desde -1 por eso marca un error.
for(j=-1;j<=n;j++){
i[j]=0;
}
Espero te sirva la ayuda
Cita de: lexoazul en 20 Noviembre 2011, 04:30 AM
Hola JulCesa:
En esta parte del codigo tienes un error los recorridos de los arreglos se inician desde 0 hasta N
por tanto tu estas llamando desde -1 por eso marca un error.
for(j=-1;j<=n;j++){
i[j]=0;
}
Espero te sirva la ayuda
Hola lexoazul
acabo de hacer lo que me dijiste y me sigue saliendo el mismo error.
voy a poner informacion adicional en el post por si tu sabes de pascal me puedas ayudar por favor.
de nuevo muchas gracias
1 Usa GeSHi:
(http://i56.tinypic.com/34erlw6.png)
2. Si quieres inicializar el array, que es lo que creo quieres hacer la forma correcta de hacerlo es esta:
for (j = 0; j < i.length; j++) {
i[j] = 0;
}
Sobre el resto, explica mejor lo que quieres hacer. que no te entiendo muy bien. Intenta limpiar el código, pon nombres descriptivas y relevantes a las variables, no uses variables de más a menos de que las necesites.