Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: driebesXI en 19 Mayo 2015, 19:20 pm



Título: Ayuda hundir la flota
Publicado por: driebesXI en 19 Mayo 2015, 19:20 pm
Buenas, me han mandado trabajar en mi primer "proyecto" el cuál es hundir la flota.
Ya he comenzado, pero con mi poca experiencia me surgen dudas. Sería de mucha ayuda si quién pudiese fuera ayudando un poco.
Ahora mismo estoy con la función de insertar los barcos de la persona. Son dos barcos de 1, y un barco de 2. No se si tendré bien hechas las llamadas o las sentencias, pero siempre en la consola me sale que las coordenadas x,y ambas se salen.

Siento si son cosas básicas o estúpidas. Muchas gracias de antemano.
Código:
void comprobarBarcosPersona(int tablero[FILAS][COLUMNAS])
{
int i=1;

    if ((FILAS<1||FILAS>7)&&(COLUMNAS<1||COLUMNAS>7)){
        printf("\nDato incorrecto, X e Y estan fuera de los limites \n\n");}

    else if (FILAS<1||FILAS>7){
        printf("\nDato incorrecto, X esta fuera de los limites \n\n");}

    else if (COLUMNAS<1||COLUMNAS>7){
        printf("\nDato incorrecto, Y esta fuera de los limites \n\n");}

    else if (tablero[FILAS][COLUMNAS]=='X' || tablero[FILAS+1][COLUMNAS]=='X' || tablero[FILAS-1][COLUMNAS]=='X'
              || tablero[FILAS+1][COLUMNAS+1]=='X' || tablero[FILAS+1][COLUMNAS-1]=='X' || tablero[FILAS][COLUMNAS+1]=='X'
              || tablero[FILAS][COLUMNAS-1]=='X' || tablero[FILAS-1][COLUMNAS+1]=='X' || tablero[FILAS-1][COLUMNAS-1]=='X') // Pregunto si en la pocision escogida ya existia un submarino
        printf("\nDato incorrecto: Esa celda esta ya ocupada por otro submarino \n\n");
    else{
    tablero[FILAS][COLUMNAS]=='X';
    i++;}
}

void colocarBarcosPersona(int tablero[FILAS][COLUMNAS])
{
int  i=1, fila, columna;
int orientacion; //0=Horizontal, 1=Vertical;
do{
    printf("\nIndique las posiciones de los 2 submarinos de tamaño 1. X,Y\n\n");
    printf("Submarino #%i: ",i);
    scanf("%d,%d",&fila,&columna);

   comprobarBarcosPersona(tablero[FILAS][COLUMNAS]);
    }
    while (i<3);
i=1;
do{
    printf("\nIndique las posiciones del submarino de tamaño 2. X,Y\n\n");
    printf("Submarino #%i: ",i);
    scanf("%d,%d",&fila,&columna);

    comprobarBarcosPersona(tablero[FILAS][COLUMNAS]);
    }
    while (i<2);
}


Título: Re: Ayuda hundir la flota
Publicado por: driebesXI en 19 Mayo 2015, 19:27 pm
Por cierto si alguien sabe como poner el código en modo código para que no me borren el mensaje o eso que lo diga también por favor.
Gracias!