Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Cargar un grafo e imprimir matriz de adyacencia

Estas en el tema de Cargar un grafo e imprimir matriz de adyacencia en el foro de C/C++ en Foros del Web. Hola a todos, la cuestión es que cuando intento imprimir la matriz de adyacencia, el programa no la imprime de forma correcta, les adjunto el ...
  #1 (permalink)  
Antiguo 20/11/2009, 10:58
Avatar de thebestboy2671  
Fecha de Ingreso: enero-2008
Mensajes: 138
Antigüedad: 16 años, 3 meses
Puntos: 1
Pregunta Cargar un grafo e imprimir matriz de adyacencia

Hola a todos, la cuestión es que cuando intento imprimir la matriz de adyacencia, el programa no la imprime de forma correcta, les adjunto el codigo:
Código:
#include <stdio.h>

#include <conio.h>

#include <stdlib.h>

#include <time.h>

#include <string.h>

int main(){

	clrscr();

	int i, a, cant, **p;

	char *c, resp='s';

	printf("Cantidad de nodos del grafo: ");

	scanf("%d", &cant);

	p=(int **)calloc(cant, sizeof(int*));

	c=(char *)calloc(cant, sizeof(char));

	if(c != NULL){

		/*Aqui se introducen todos los nodos pegados, o sea

		sin usar espacios entre ellos

		*/

		printf("\nIntroduzca todos los nodos en mayuscula: ");

		scanf("%s", c);

		if(strlen(c) > cant){

			printf("\nCantidad de nodos fuera de limite");

		}

		else{

			for (i=0; i<cant; i++){

				for (a=0; a<cant; a++){

					printf("\nHay camino de %c a %c s/n: ", c[i], c[a]);

					fflush(stdin);

					scanf("%c", &resp);

					printf("%c", resp);

					if (resp == 's' || resp == 'S'){

						p[i][a] = 1;

						printf("%d", p[i][a]);

					}

					else{

						p[i][a] = 0;

						printf("%d", p[i][a]);

					}

				}

				printf("%s", "\n");

			}

			for (i=0; i<cant; i++){

				for (a=0; a<cant; a++){

					printf("%d", p[i][a]);

				}

				printf("%s", "\n");

			}

		}

	}

	else{

		printf("\nNo hay espacio en memoria");

	}

	free(c);

	free(p);

	getch();

	return 0;

}
Incluso imprimo la respuesta del usuario cuando pregunta si de tal nodo a tal nodo hay camino y no solo eso, sino que cargo el arreglo bidimensional y lo imprimo ahi mismo junto con la respuesta del usuario, pero aun asi cuando intento imprimir nuevamente el arreglo en el for que está abajo, imprime de forma totalmente diferente. No sé qué pasa a ver si me dan una mano. Desde ya gracias por su tiempo. Saludos.
__________________
Si te he ayudado con mis conocimientos, añádeme algo de Karma :P
  #2 (permalink)  
Antiguo 23/11/2009, 18:08
Avatar de eledgarr  
Fecha de Ingreso: octubre-2008
Ubicación: La ciudad de la esperanza
Mensajes: 133
Antigüedad: 15 años, 6 meses
Puntos: 3
Respuesta: Cargar un grafo e imprimir matriz de adyacencia

No la imprime de forma correcta? los valores o la posición si es la presentación puedes usar

gotoxy
__________________
Si te sirve lo que te escribo regalame un karma positivo
-----------------------------------------------------------------------
Estoy aqui no por que conozco mucho, estoy para ignorar menos
  #3 (permalink)  
Antiguo 23/11/2009, 21:51
Avatar de thebestboy2671  
Fecha de Ingreso: enero-2008
Mensajes: 138
Antigüedad: 16 años, 3 meses
Puntos: 1
Respuesta: Cargar un grafo e imprimir matriz de adyacencia

Además que no lo imprime como quiero, al final me salia un error (en la ejecución) que dice "null pointer assigment" o algo asi, la cosa es que lo hice de otro modo y ya está todo bn. Saludos.
__________________
Si te he ayudado con mis conocimientos, añádeme algo de Karma :P
  #4 (permalink)  
Antiguo 24/11/2009, 02:59
 
Fecha de Ingreso: noviembre-2009
Mensajes: 8
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Cargar un grafo e imprimir matriz de adyacencia

Si no te importa, y ya que has solucionado la cuestión, por favor publica el código, para que los novatos como yo podamos entender las diferencias entre ambos códigos y, con suerte, aprender algo en el proceso :)

Un saludo.
  #5 (permalink)  
Antiguo 27/11/2009, 19:18
Avatar de thebestboy2671  
Fecha de Ingreso: enero-2008
Mensajes: 138
Antigüedad: 16 años, 3 meses
Puntos: 1
Respuesta: Cargar un grafo e imprimir matriz de adyacencia

Ahora no tengo el código a mano y está muy cambiado, también porque había que añadirle varias cosas, pero en resumen... lo que hice fue cambiar la forma con que trabaje el arreglo "c", fíjate que ahora se le asigna espacio en memoria dinámicamente a dicha variable, en cambio lo que hice fue asignarle un espacio en memoria de forma estática.
__________________
Si te he ayudado con mis conocimientos, añádeme algo de Karma :P
  #6 (permalink)  
Antiguo 01/12/2010, 13:50
 
Fecha de Ingreso: diciembre-2010
Mensajes: 2
Antigüedad: 13 años, 5 meses
Puntos: 0
Mensaje Respuesta: Cargar un grafo e imprimir matriz de adyacencia

Cita:
Iniciado por thebestboy2671 Ver Mensaje
Ahora no tengo el código a mano y está muy cambiado, también porque había que añadirle varias cosas, pero en resumen... lo que hice fue cambiar la forma con que trabaje el arreglo "c", fíjate que ahora se le asigna espacio en memoria dinámicamente a dicha variable, en cambio lo que hice fue asignarle un espacio en memoria de forma estática.
si puedes poner todo el codigo como lo hiciste por que tambien tengo el problema que tu o mandamelo a mi correo [email protected]
  #7 (permalink)  
Antiguo 01/12/2010, 13:51
 
Fecha de Ingreso: diciembre-2010
Mensajes: 2
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: Cargar un grafo e imprimir matriz de adyacencia

Cita:
Iniciado por thebestboy2671 Ver Mensaje
Además que no lo imprime como quiero, al final me salia un error (en la ejecución) que dice "null pointer assigment" o algo asi, la cosa es que lo hice de otro modo y ya está todo bn. Saludos.


publica tu codigo aver como te kedo vale
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:24.