elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  mover un elemento dentro de la matriz
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: mover un elemento dentro de la matriz  (Leído 1,501 veces)
agusfracca

Desconectado Desconectado

Mensajes: 1


Ver Perfil
mover un elemento dentro de la matriz
« 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.


En línea

Serapis
Colaborador
***
Desconectado Desconectado

Mensajes: 3.355


Ver Perfil
Re: mover un elemento dentro de la matriz
« Respuesta #1 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...


« Última modificación: 17 Octubre 2018, 04:45 am por NEBIRE » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines