Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: agusfracca en 17 Octubre 2018, 01:39 am



Título: mover un elemento dentro de la matriz
Publicado por: agusfracca en 17 Octubre 2018, 01:39 am
Hola, necesito ayuda con tema matrices. Yo tengo una matriz que representa un escenario de un juego y tengo dentro el jugador, que necesito que se mueva para arriba cuando el usuario me ingrese la letra w, abajo cuadno ingrese s , derecha cuando ingrese d e izquierda cuando ingrese a.
Necesito hacerlo de forma general, o sea por ejemplo que cuando apriete w, suba una fila y se mantenga en esa columna. alguien me podría ayudar o dar una pista sobre como puedo hacerlo?? gracias.


Título: Re: mover un elemento dentro de la matriz
Publicado por: Serapis en 17 Octubre 2018, 04:43 am
Código:
char x  //carácter que ingresa el jugador
entero ancho //ancho del mapa
entero alto   // alto del mapa
entero fila  // la fila actual donde está
entero columna // la columna actual donde está.

funcion MoverJugador (char x)
    entero tmpFila, tmpColumna

    si x="d" //derecha
        Si (columna < (ancho-1))  // si no está en la última casilla de dicha fila.
            tmpColumna = (columna +1)
        fin si
    Osi x="a" // izquierda
        si (columna > 0)
            tmpColumna= (columna -1)
        fin si
    Osi x="w"   // arriba
        Si (fila > 0)
            tmpFila= (fila -1)
        fin si
    Osi x="s" // abajo
        Si (fila < (alto-1))  
            tmpFila= (fila +1)
        fin si
    YSino  // cualquier otro carácter sale... incluído los previos en mayúsculas.
        devolver
    fin si

    BorrarJugador(fila, columna)  // bora el jugador donde esta (redibuja esa casilla vacía)
    fila = tmpFila
    columna = tmpColumna
    DibujarJugador(fila, columna)   // dibuja el jugador 'encima' de la casilla
fin funcion

Hale, listo... te toca a tí pasar el pseudocódigo...