PDF de programación - conjunto dinamico

Imágen de pdf conjunto dinamico

conjunto dinamicográfica de visualizaciones

Publicado el 11 de Julio del 2017
720 visualizaciones desde el 11 de Julio del 2017
33,4 KB
4 paginas
Creado hace 17a (14/05/2006)
H:\EDI\ConjuntoDinamico1.pas

14/05/2006 21:00:54

procedure conjuntoVacio(var conjunto:tConjunto);
function esConjuntoVacio(conjunto:tConjunto):boolean;
function pertenece(info:tInfo; conjunto:tConjunto):boolean;
procedure insertar(info:tInfo; var conjunto:tConjunto);
function cardinal(conjunto:tConjunto):integer;
procedure interseccion(conjunto1, conjunto2:tConjunto; var
procedure union(conjunto1, conjunto2:tConjunto; var
function conjuntoToStr(conjunto: tConjunto):string;

conjuntonuevo:tConjunto);
conjuntonuevo:tConjunto);

tInfo=char;
tConjunto=^tNodo;
tNodo=record
info:tInfo;
sig:tConjunto;

end;

const
type

nulo=nil;
tPos=tConjunto;

1: unit ConjuntoDinamico;
2: interface
type
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21: implementation
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:

argumento

nuevo:tPos;
new(nuevo);
nuevo^.info:=info;
nuevo^.sig:=nulo;
CreaNodo:=nuevo;

function CreaNodo(info:tInfo):tConjunto;
{Objetivo: Crea un nuevo nodo en el conjunto con el dato info
Entrada: Info
Salida : un nuevo conjunto
}
var
begin

end;
function primerElemento(conjunto:tConjunto):tPos;
{Objetivo: Determina la posicion del primer elemento en el conjunto
Entrada: Un conjunto
Salida: La posicion del elemento en el conjunto
}
begin
end;
function siguienteElemento(conjunto:tConjunto;p: tPos):tPos;
{Objetivo: Devuelve la posicion del elemneto siguiente al que se pasa como

primerElemento:=conjunto;

Entrada: conjunto,p
Salida:
}

siguiente elemento a p

AcroPDF - A Quality PDF Writer and PDF Converter to create PDF files. To remove the line, buy a license.

1/4

H:\EDI\ConjuntoDinamico1.pas

14/05/2006 21:00:54

56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:

begin

end;

if esConjuntoVacio(conjunto) then
else

siguienteElemento:=nulo
siguienteElemento:=p^.sig;

procedure conjuntoVacio(var conjunto:tConjunto);
{Objetivo: Crear un conjunto vacio
Entrada:
Salida: Un conjunto vacio
}
begin
end;

conjunto:=nulo;

function esConjuntoVacio(conjunto:tConjunto):boolean;
{Objetivo: Determinar si un conjunto está vacio
Entrada: conjunto
Salida:
Precond: El conjunto debe estar inicializado
}
begin
end;

esConjuntoVacio:=(conjunto=nulo);

True si el conjunto esta vacio, false en caso contrario

True si el elemento pertenece a Conjunto, false en caso contrario

function pertenece(info:tInfo; conjunto:tConjunto):boolean;
{Objetivo: Determina la pertenencia de un elemento a un conjunto
Entrada: Un elemento y un conjunto
Salida:
Precond: El conjunto debe estar inicializado
}
var
begin

auxc:tPos;
auxc:=primerElemento(conjunto);
while (auxc<>nulo) and (auxc^.info<>info) do

auxc:=siguienteElemento(conjunto,auxc);

pertenece:=(auxc<>nulo);

end;
procedure insertar(info:tInfo; var conjunto:tConjunto);
{Objetivo: Añade un elemento a un conjunto
Entrada: El elemento a insertar y el conjunto
Salida:
}
var
begin

temp: tPos;
if not pertenece(info, conjunto) then
begin

Conjunto con el elemento insertado

temp:=CreaNodo(info);
temp^.sig:=conjunto;
conjunto:=temp;

AcroPDF - A Quality PDF Writer and PDF Converter to create PDF files. To remove the line, buy a license.

2/4

H:\EDI\ConjuntoDinamico1.pas

14/05/2006 21:00:54

end;

end;

function cardinal(conjunto:tConjunto):integer;
{Objetivo: Cuenta el número de elementos del conjunto
Entrada: Conjunto
Salida:
}
var

Número de elementos

begin

auxc:tPos;
i:integer;
i:=0;
auxc:=primerElemento(conjunto);
while (auxc<>nulo) do
begin

i:=i+1;
auxc:=siguienteElemento(conjunto,auxc);

end;
cardinal:=i;

end;

procedure interseccion(conjunto1, conjunto2:tConjunto; var

conjuntonuevo:tConjunto);

{Objetivo: Realiza la interseccion de dos conjuntos
Entrada: Dos Conjuntos
Salida:

Un nuevo conjunto resultado de la interseccion de los conjuntos

Precond: Los conjuntos deben estar inicializados y se supone memoria

de entrada

suficiente

}
var
begin

aux1: tPos;
conjuntoVacio(conjuntonuevo);
if not esConjuntoVacio(conjunto1) and
not esConjuntoVacio(conjunto2) then
begin
aux1:=primerElemento(conjunto1);
while (aux1<>nulo) do
begin

if pertenece(aux1^.info, conjunto2) then
aux1:=siguienteElemento(conjunto1, aux1);

insertar(aux1^.info, conjuntonuevo);

end;

end;

end;

procedure union(conjunto1, conjunto2:tConjunto; var

conjuntonuevo:tConjunto);

{Objetivo: Realiza la union de dos conjuntos
Entrada: Dos Conjuntos
Salida:

Un nuevo conjunto resultado de la union de los conjuntos de

Precond: Los conjuntos deben estar inicializados y se supone memoria

entrada

suficiente

114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:

AcroPDF - A Quality PDF Writer and PDF Converter to create PDF files. To remove the line, buy a license.

3/4

H:\EDI\ConjuntoDinamico1.pas

14/05/2006 21:00:54

}
var
begin

auxc:tPos;
conjuntoVacio(conjuntonuevo);
auxc:=primerElemento(conjunto1);
while (auxc<>nulo) do
begin

String, con los elementos del conjunto separados por un espacio

167:
168:
169:
170:
171:
172:
173:
174:
175:
176:
177:
178:
179:
180:
181:
182:
183:
184:
185:
186:
187:
188:
189:
190:
191:
192:
193:
194:
195:
196:
197:
198:
199:
200:
201:
202:
203:
204:
205:
206:
207: end.

insertar(auxc^.info, conjuntonuevo);
auxc:=auxc^.sig;

end;
auxc:=primerElemento(conjunto2);
while auxc<>nulo do
begin
end;

insertar(auxc^.info, conjuntonuevo);

end;
function conjuntoToStr(conjunto: tConjunto):string;
{Objetivo: Devuelve el contenido de un conjunto
Entrada: Conjunto
Salida:
}
var

begin

auxc:tPos;
cadena:string;
cadena:='';
auxc:=primerElemento(conjunto);
while (auxc<>nulo) do
begin

cadena:=cadena + auxc^.info;
auxc:=siguienteElemento(conjunto, auxc);
if auxc<>nulo then

cadena := cadena + ' ';

end;
conjuntoToStr:=cadena;

end;

AcroPDF - A Quality PDF Writer and PDF Converter to create PDF files. To remove the line, buy a license.

4/4
  • Links de descarga
http://lwp-l.com/pdf5302

Comentarios de: conjunto dinamico (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad