<span class="gmail_quote"><br></span>Buen dia gente<br><br>estoy desesperado porque no consigo encontrar la solucion a este problema<br><br>Intento cargar una matriz de 8 x 8 (de 0 a 7 cada lado)<br>con fichas para programar un juego de damas para la facultad.
<br><br>El problema es que luego de cargar el algoritmo de carga de coordenadas de las fichas, descubro que C le carga lo que se le da la gana y no lo que tendria que dar el resultado de mi algortimo<br><br>les mando un fragmento del codigo... no se como, pero C sobreescribe la memoria!
<br><br>Alguien podria ayudarme con este tema?<br>muchas gracias<br><br><br clear="all">include <iostream.h><br>#include <conio.h><br>#include <graphics.h><br>#include <string.h><br>#include <ctype.h

><br>#include <stdio.h><br>#include "c:\proyec~1\tablero.h"<br>#include "c:\proyec~1\fichac.h"<br>#include "c:\proyec~1\fichad.h"<br>#include "c:\proyec~1\ficha.h"<br>#define F 7
<br>#define C 7<br><br>void Tablero::setTurno(char turno){<br>    _turno = turno;<br>}<br><br>char Tablero::getTurno(){<br>    return _turno;<br>}<br><br>void Tablero::decFichaN(){<br>    _fichasN--;<br>}<br><br>void Tablero::decFichaB(){
<br>    _fichasB--;<br>}<br><br>int Tablero::getFichasB(){<br>    return _fichasB;<br>}<br><br>int Tablero::getFichasN(){<br>    return _fichasN;<br>}<br><br>void Tablero::setFichasN(int x){<br>    _fichasN=x;<br>}<br><br>

void Tablero::setFichasB(int x){<br>    _fichasB=x;<br>}<br><br>Tablero::Tablero(int b,int n){     /* Carga el array en null */<br> _fichasB=b;<br> _fichasN=n;<br> for(int i=0;i<=F;i++){<br>        for(int j=0; j<=C ;j++){
<br>            tablero[i][j]= NULL;<br>        }<br>    }<br><br> clrscr();<br> for(i=0; i<=F;i++){<br>    cout<<endl;<br>    for(int j=0; j<=C; j++) {<br>        if(tablero[i][j]==NULL) cout<<" "<<j<<" N ";
<br>    }<br> }<br> cout<<endl<<"mostrando inicializacion";<br> getch();<br>}<br><br><br>Tablero::~Tablero(){    /* Libera la memoria que eventualmente<br>                                                haya pedido el constructor y no se haya
<br>                                                liberado aun */<br>    for(int i=0;i<=F;i++){<br>        for(int j=0;j<=C;j++){<br>            if(tablero[i][j])<br>                delete tablero[i][j];<br>        }
<br>    }<br>}<br><br>void Tablero::comenzar(){ /* Inicializa las fichas de ambos jugadores en sus posiciones en el tablero */<br>    for(int j=0; j<4; j++){<br>        tablero[0][j*2+1] = new FichaComun('B',0,j*2+1);
<br>        tablero[1][j*2] = new FichaComun('B',1,j*2);<br>        tablero[2][j*2+1] = new FichaComun('B',2,j*2+1);<br>        tablero[5][j*2] = new FichaComun('N',5,j*2);<br>        tablero[6][j*2+1] = new FichaComun('N',6,j*2+1);
<br>        tablero[7][j*2] = new FichaComun('N',7,j*2);<br>    }<br>    clrscr();<br>    for(int i=0; i<=F;i++){<br>        cout<<endl;<br>        for(int j=0; j<=C; j++) {<br>            if(tablero[i][j]!=NULL) cout<<" "<<"pos:"<<tablero[i][j]->getPosX()<<","<<tablero[i][j]->getPosY()<<((FichaComun * )tablero[i][j])->getIcono();
<br>     }<br>    }<br>  /*PARA HACER UN TEST, RECORRO LA MATRIZ E IMPRIMO LAS COORDENADAS D CADA FICHA Y...<br> cout<<endl<<"Fichas blancas se habia inicializado en: "<<getFichasB();<br> cout<<endl<<"Fichas rojas se habia inicializado en: "<<getFichasN();
<br> cout<<endl<<"mostrando inicializacion";<br> getch();<br>} //fin metodo<br>-- <br><br>al imprimirlas, 0,7 lo repite 2 veces... es intermitente cada 2 lineas que vuelve a repetir un valor...<br><br>

Alguna sugerencia?<br><br>Por otro lado, la funcion gotoxy(), el formato puede ser que sea Columna,FILA??<br>gracias<br><span class="sg">::> Juan Pablo
</span><br clear="all"><br>-- <br>::> Juan Pablo