[C con Clase] Resumen de Cconclase, Vol 14, Envío 6

Juan Pablo Carro jpcarro en gmail.com
Jue Jul 5 19:07:04 CEST 2007


Buenas tardes Zaka.

es puntero a elementos, pero creo que encontre el error, yo puse que el
maximo de filas era 7 (para hacer de 0 a 7) y cuando voy accediendo a la
matriz, contemplaba hasta <=7, pero el vector es de 0 a 6... aumente en 1 el
limite y hasta ahora anduvo bien.

muchas gracias!

On 7/5/07, cconclase-request en listas.conclase.net <
cconclase-request en listas.conclase.net> wrote:
>
> Envíe los mensajes para la lista Cconclase a
>         cconclase en listas.conclase.net
>
> Para subscribirse o anular su subscripción a través de la WEB
>
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
>
>
> O por correo electrónico, enviando un mensaje con el texto "help" en
> el asunto (subject) o en el cuerpo a:
>         cconclase-request en listas.conclase.net
>
> Puede contactar con el responsable de la lista escribiendo a:
>         cconclase-owner en listas.conclase.net
>
> Si responde a algún contenido de este mensaje, por favor, edite la
> linea del asunto (subject) para que el texto sea mas especifico que:
> "Re: Contents of Cconclase digest...". Además, por favor, incluya en
> la respuesta sólo aquellas partes del mensaje a las que está
> respondiendo.
>
>
> Asuntos del día:
>
>    1. Ayuda con matriz de objetos (estoy simulando un   tablero de 8
>       x 8 de objetos tipo ficha) y consulta gotoxy (Juan Pablo Carro)
>    2. Re: Ayuda con matriz de objetos (estoy simulando un tablero
>       de 8 x 8 de objetos tipo ficha) y consulta gotoxy (Zaka E-Lab)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Thu, 5 Jul 2007 07:16:47 -0300
> From: "Juan Pablo Carro" <jpcarro en gmail.com>
> Subject: [C con Clase] Ayuda con matriz de objetos (estoy simulando un
>         tablero de 8 x 8 de objetos tipo ficha) y consulta gotoxy
> To: cconclase en listas.conclase.net
> Message-ID:
>         <56df33bc0707050316n22d91470gddade6c8d21c6ddd en mail.gmail.com>
> Content-Type: text/plain; charset="iso-8859-1"
>
> Buen dia gente
>
> estoy desesperado porque no consigo encontrar la solucion a este problema
>
> Intento cargar una matriz de 8 x 8 (de 0 a 7 cada lado)
> con fichas para programar un juego de damas para la facultad.
>
> 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
>
> les mando un fragmento del codigo... no se como, pero C sobreescribe la
> memoria!
>
> Alguien podria ayudarme con este tema?
> muchas gracias
>
>
> include <iostream.h>
> #include <conio.h>
> #include <graphics.h>
> #include <string.h>
> #include <ctype.h >
> #include <stdio.h>
> #include "c:\proyec~1\tablero.h"
> #include "c:\proyec~1\fichac.h"
> #include "c:\proyec~1\fichad.h"
> #include "c:\proyec~1\ficha.h"
> #define F 7
> #define C 7
>
> void Tablero::setTurno(char turno){
>     _turno = turno;
> }
>
> char Tablero::getTurno(){
>     return _turno;
> }
>
> void Tablero::decFichaN(){
>     _fichasN--;
> }
>
> void Tablero::decFichaB(){
>     _fichasB--;
> }
>
> int Tablero::getFichasB(){
>     return _fichasB;
> }
>
> int Tablero::getFichasN(){
>     return _fichasN;
> }
>
> void Tablero::setFichasN(int x){
>     _fichasN=x;
> }
>
> void Tablero::setFichasB(int x){
>     _fichasB=x;
> }
>
> Tablero::Tablero(int b,int n){     /* Carga el array en null */
> _fichasB=b;
> _fichasN=n;
> for(int i=0;i<=F;i++){
>         for(int j=0; j<=C ;j++){
>             tablero[i][j]= NULL;
>         }
>     }
>
> clrscr();
> for(i=0; i<=F;i++){
>     cout<<endl;
>     for(int j=0; j<=C; j++) {
>         if(tablero[i][j]==NULL) cout<<" "<<j<<" N ";
>     }
> }
> cout<<endl<<"mostrando inicializacion";
> getch();
> }
>
>
> Tablero::~Tablero(){    /* Libera la memoria que eventualmente
>                                                 haya pedido el constructor
> y
> no se haya
>                                                 liberado aun */
>     for(int i=0;i<=F;i++){
>         for(int j=0;j<=C;j++){
>             if(tablero[i][j])
>                 delete tablero[i][j];
>         }
>     }
> }
>
> void Tablero::comenzar(){ /* Inicializa las fichas de ambos jugadores en
> sus
> posiciones en el tablero */
>     for(int j=0; j<4; j++){
>         tablero[0][j*2+1] = new FichaComun('B',0,j*2+1);
>         tablero[1][j*2] = new FichaComun('B',1,j*2);
>         tablero[2][j*2+1] = new FichaComun('B',2,j*2+1);
>         tablero[5][j*2] = new FichaComun('N',5,j*2);
>         tablero[6][j*2+1] = new FichaComun('N',6,j*2+1);
>         tablero[7][j*2] = new FichaComun('N',7,j*2);
>     }
>     clrscr();
>     for(int i=0; i<=F;i++){
>         cout<<endl;
>         for(int j=0; j<=C; j++) {
>             if(tablero[i][j]!=NULL) cout<<"
>
> "<<"pos:"<<tablero[i][j]->getPosX()<<","<<tablero[i][j]->getPosY()<<((FichaComun
> * )tablero[i][j])->getIcono();
>      }
>     }
>   /*PARA HACER UN TEST, RECORRO LA MATRIZ E IMPRIMO LAS COORDENADAS D CADA
> FICHA Y...
> cout<<endl<<"Fichas blancas se habia inicializado en: "<<getFichasB();
> cout<<endl<<"Fichas rojas se habia inicializado en: "<<getFichasN();
> cout<<endl<<"mostrando inicializacion";
> getch();
> } //fin metodo
> --
>
> al imprimirlas, 0,7 lo repite 2 veces... es intermitente cada 2 lineas que
> vuelve a repetir un valor...
>
> Alguna sugerencia?
>
> Por otro lado, la funcion gotoxy(), el formato puede ser que sea
> Columna,FILA??
> gracias
> ::> Juan Pablo
>
> --
> ::> Juan Pablo
> ------------ próxima parte ------------
> Se ha borrado un adjunto en formato HTML...
> URL:
> http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20070705/8f2a05c5/attachment-0001.html
>
> ------------------------------
>
> Message: 2
> Date: Thu, 05 Jul 2007 16:29:33 +0200
> From: Zaka E-Lab <shanatorio en gmail.com>
> Subject: Re: [C con Clase] Ayuda con matriz de objetos (estoy
>         simulando un tablero de 8 x 8 de objetos tipo ficha) y consulta
> gotoxy
> To: Lista de correo sobre C y C++ <cconclase en listas.conclase.net>
> Message-ID: <468D004D.7000009 en gmail.com>
> Content-Type: text/plain; charset=ISO-8859-1; format=flowed
>
> Espero haber comprendido bien tu problema.
> La cuestión para mi es saber (no he logrado verlo en tu código), si la
> matriz es de elementos o de punteros a elementos. Si no son punteros lo
> que tienes que hacer es no usar el operador new.
>
> Espero que te sirva de ayuda.
>
> Zaka.
>
>
>
> ------------------------------
>
> _______________________________________________
> Cconclase mailing list
> Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
>
>
> Fin de Resumen de Cconclase, Vol 14, Envío 6
> ********************************************
>



-- 
::> Juan Pablo
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20070705/3d9b7c5f/attachment.html>


Más información sobre la lista de distribución Cconclase