Ver Mensaje Individual
  #2 (permalink)  
Antiguo 28/03/2010, 18:35
Fenris
 
Fecha de Ingreso: agosto-2008
Mensajes: 271
Antigüedad: 15 años, 9 meses
Puntos: 2
Respuesta: Necesito un programador que me salve de esta problema

Hola

Mira primero que nada debes visualizarlo en tu mente como una matriz de 100 x 500 donde cada intersección fila x columna debe ser la posición donde se colocara un 1 indicando que se instalo una antena, por ejemplo con la función inicializar recorres toda la matriz y colocas un 0 en cada posición de esta.
por ejemplo:
Código:
for (i=0; i<100; i++){
  for(j=0;j<500;j++){
     ciudad[i][j] = 0;
  }
}
Importante: la variable "c" es la matriz que pasas como argumento.
Luego la función instalar (c,i,j) va a colocar un 1 en la posición de la matriz i, j.
La función desinstalar hará lo mismo pero en vez de colocar un 1 colocara un 0.
La función instalarRnd(c,n), bueno ahí debes hacer un ciclo que vaya de 0 a n-1, n es el segundo parámetro que te pasan en la función, y luego ayudada de una función que genere números aleatorios creas las posiciones pasando a la función generadora de números aleatorios el valor que te de el ciclo for.
Total antenasH imagina horizontal como una fila y vertical como una columna de la matriz eso es todo, k va a representar el numero de la fila o columna de la matriz..
La función Listar, bueno recorre toda la matriz buscando 1 y luego puedes guardar en otra matriz las posiciones (i, j) de las antenas instaladas y por ultimo retornar esa matriz

Eso seria, espero te sirva mi explicación.

Saludos

Última edición por Fenris; 28/03/2010 a las 19:07