Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Adalit
Adalit
'[',i,',',j,']:'
'[',i,',',j,']:'
a[i,j
a[i,j
a[i,j]=0 or a[i,j]=1
a[i,j]>=0
j j i i
FIN
i = 1, nfa, 1 AUX=0 j = 1, nca, 1 AUX=AUX+a[i,j] j V[i]=AUX i FIN PROCEDURE b(nfa,nca:byte; var a:txy )
j i FIN
grado1(nfa,nca,a,v1)
a[p,p]=1
SI v[p]=v1[p]+a[p,p]
NO
i FIN
i=j
SI v[i]:=aux
NO
j i
i = 1, nfa, 1
a[i,i]=1
SI v[i]=v[i]+1
NO
i FIN
gg = 0
i = 1, nca, 1
a[i,i]=1
SI gg=v[i]
NO
i FIN
lp = 0
i = 1, nfa, 1 j = 1, nca, 1
j = i
SI
j <> i NO NO
SI lp:=lp+a[i,j]
j i FIN
G) Calcular cuantos lazos tiene cada vrtice, cargando los resultados en un vector.
NO
FIN
K. DETERMINAR SI EL GRAFO ES UNITARIO. procedure initarip(v,l:integer; mi:txy); no v=1 'No es un grafo unitario' 'Es un grafo unitario' si
Fin unitario
x1 'Introdusca el valor de Y
y1
((x1<>y1)and(x1<=nfa)and (y1<=nfa))
lon>0 i<-1 , nfa, 1 j<- 1, nca,1 an[i,j] = a[i,j] j i z <-1 , lon-1 for i <- 1, nfa,1 j <- 1 , nca, 1 aux = 0 k <- 1, nfa, 1 aux:=aux+an[i,k]*a[k,j] k an[i,j] = aux j i i SL= an[x1,y1] 'Cantidad de SL entre ',x1,' y ',y1,' es = ',SL
fin
bandera = true
V
if ((v[i] mod 2)<>0)
bandera = false
CE = bandera
fin
O)
c:=0
band:=true
V
v[i] mod 2 <> 0 c = c +1
V
c <> 2
band:=false
F
i
fin
band = false
V
(v[i]<(nfa-1)mod 2 band = false
F
i
V
band=true for i:=1 to nfa-1
F
p=0 for j <- i+1 , nfa, 1 p = v[i]+v[j];
V
p = nfa-1
fin
2. MODULO: MATRIZ DE INCIDENCIA, DADO EL GRAFO G(V,E) a) Introducir datos por teclado en la matriz inc
procedure a2(v,l:integer; var mi:txy);
for i <- 1 , v, 1
for j <- 1 to l
'INC[',i,',',j,']: '
mi[i,j]
' ERROR'
F
(mi[i,j]=0) or (mi[i,j]=1);
j i
fin
randomize
for i <- 1 to v
for j <- 1 to l
mi[i,j] = 0
for i <- 1 to l
s=0
F
i<=(l/3)
V
pos=1
F
(i<=(l/1.5)) pos:=round(l/1.5);
pos:=round(l/3)
mi[j,i] = round(random()*1);
mi[j,i] = round(random()*1)
V
s>=2
F
j
V
s=0
i=i-1
fin
for i <- 1 , v, 1
sum = 0
for j = 1 to l
vecgra[i]:=sum; j i
for i <- 1 to l
F
mi[j,i]=1
j FV
V
sum=1 vecgra[p] = vecgra[p] + 1
fin
c2(v,l,mi)
for i1 <- 1, v, 1
for j1<-1 to l
j1 i1
vect[i1] = mi[i1,j1]
for i <- 1 , v ,1
V
vect[i1] = mi[i,j]
F
i1=j
adym[i,j] = mi[]
j i
fin
e)
procedure e2(v,l:integer; mi:txy; var gginc:integer)
for i:=1 to v suma=0 for j <-1 to l suma = suma + mi[i,j] vec[i] = suma j
mi[j,i]=1
V suma:= suma + 1
k:=j;
suma=1
V vec[k]:=vec[k] + 1;
F j
for i:=1 to v
vec[i]>ggi nc F i
V gginc:=vec[i];
Fin
f.
procedure f2(v,l:integer; mi:txy; var lpinc:integer);
sw:=0
for j:=1 to v
mi[j,i]=1
repetidos[p]=k band:=false
(band) (sw=2) band1:=true ((mi[au1,k]=1)and (mi[au2,k]=1)) for q:=1 to V do suma:=suma+1 ((mi[q,k]=1)and(q<>au1)) band1:=false a:=a+1 repetidos[a]:=0; ((mi[au1,k]=1)and (band1)) suma:=suma+1; repetidos[a]:=k a:=a+1 repetidos[a]:=k
p k lpinc:=lpinc+suma; FIN
o. Determinar si tiene camino Hamiltoniano Procedure CH (grad:Tvector ; n:integer; var ch :booleam i 1 , n-1 , 1 j n +1 , n ,1 K grad (x) + grad (y) si K< n-1 break
J< n break
I=n j n +1 , n ,1 j n +1 , n ,1 K grad (x) + grad (y) no K< n-1 Ch true Cumple para cualquiera Ch true I J si
Ch false
Fin ch