Foros del Web » Programando para Internet » PHP »

Alguien que sepa C y PHP

Estas en el tema de Alguien que sepa C y PHP en el foro de PHP en Foros del Web. Estoy intentando implementar un Grafo en php y mySql. Por ahora estoy estudiándolos. En ésta web me entero bastante pero la parte de programación, no ...
  #1 (permalink)  
Antiguo 11/10/2004, 09:20
 
Fecha de Ingreso: febrero-2003
Mensajes: 109
Antigüedad: 14 años, 9 meses
Puntos: 0
Alguien que sepa C y PHP

Estoy intentando implementar un Grafo en php y mySql. Por ahora estoy estudiándolos. En ésta web me entero bastante pero la parte de programación, no muy complicada está en C. Necesitaba que alguien me tradujera a php ésto:
int V,A;
int a[maxV][maxV];

void inicializar()
{
int i,x,y,p;
char v1,v2;
// Leer V y A
memset(a,0,sizeof(a));
for (i=1; i<=A; i++)
{
scanf("%c %c %d\n",&v1,&v2,&p);
x=v1-'A'; y=v2-'A';
a[x][y]=p; a[y][x]=p;
}
}

Y esto:
struct nodo
{
int v;
int p;
nodo *sig;
};

int V,A; // vértices y aristas del grafo
struct nodo *a[maxV], *z;

void inicializar()
{
int i,x,y,peso;
char v1,v2;
struct nodo *t;
z=(struct nodo *)malloc(sizeof(struct nodo));
z->sig=z;
for (i=0; i<V; i++)
a[i]=z;
for (i=0; i<A; i++)
{
scanf("%c %c %d\n",&v1,&v2,&peso);
x=v1-'A'; y=v2-'A';

t=(struct nodo *)malloc(sizeof(struct nodo));
t->v=y; t->p=peso; t->sig=a[x]; a[x]=t;

t=(struct nodo *)malloc(sizeof(struct nodo));
t->v=x; t->p=peso; t->sig=a[y]; a[y]=t;
}
}

Esto tb:
struct tcola *cola;

void visitar(int k) // listas de adyacencia
{
struct nodo *t;
encolar(&cola,k);
while (!vacia(cola))
{
desencolar(&cola,&k);
val[k]=++id;
for (t=a[k]; t!=z; t=t->sig)
{
if (val[t->v]==0)
{
encolar(&cola,t->v);
val[t->v]=-1;
}
}
}
}

Muchas gracias, a ver sai alguien sabe.
  #2 (permalink)  
Antiguo 12/10/2004, 07:34
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Tal vez será mejor que explicases ese algorítmo lo que debe hacer y alguien que sepa PHP (o tu mismo) desde cero con el algorítmo en la mano lo implemente en PHP.

Un saludo,
  #3 (permalink)  
Antiguo 14/10/2004, 10:04
 
Fecha de Ingreso: enero-2004
Ubicación: mexico
Mensajes: 110
Antigüedad: 13 años, 10 meses
Puntos: 0
De acuerdo holas

hace muchisimo tiempo que deje c... ademas nunka fui el super esperto

estoy de acuerdo con Cluster en que deberias explicar que es lo que quieres que tu programa haga para que alguien que sepa te explike......

De lo poko que recuerdo de c trateré de orientarte en lo que veo en tu programa...

en php para declarar una variable no se utiliza "int" ni "char" ni float etc... las variables se crean nombrandolas en caso de que no existan y su tipo (int, char, float, etc) al momento de asignarles un valor la sintaxis es asi;

$i=2;
$v1="esto es una cadena de caracteres";

por lo cual $i=2; y $i="2"; son difernetes, el primero es entero y el segundo es cadena de caracteres..

las sentencias de comparacion y los bucles tienen la misma sintaxis.
en c se utiliza "scanf" para capturar datos, en php para realizar esa función existen 2 formas..
la primera es desde un formulario, a los text box les pones de nombre las variables que esperas recivir en el php, y en el php las recives como un array del metodo en que fue enviado el formulario (GET o POST)
sintaxis:

$_POST('c'); ///DONDE c ES LA VARIABLE OSEA EL NOMBRE DEL TEXT BOX
podrias utilizar asi;
$nc=$_POST('c'); // para despues manejar nc como el valor obtenido
si depues deseas trabajar con las varibles no tienes que especificar su tipo

$a + 2;

espero que te sea utili
__________________
Controles Web para ASP.NET (Tabstrip, Datepicker, Calendar, Panel colapsable...) en
www.enlasys.com
  #4 (permalink)  
Antiguo 14/10/2004, 10:08
 
Fecha de Ingreso: febrero-2003
Mensajes: 109
Antigüedad: 14 años, 9 meses
Puntos: 0
Hola a todos, estaba intentando implementar un grafo cuando lo q necesitaba era un arbol. Lo q no daba entendido era la recursividad de una función y ahora estoy en ello. Gracias a todos.
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 05:50.