Título: AYUDA Publicado por: joseanh en 30 Junio 2013, 02:43 am program registro(input,output); uses crt; const numpersona=3; type carasteristica=record cedula,edad,telefono: integer; apellido,nombre,sexo,nacionalidad: string; end; lista=Array[1..numpersona] of carasteristica; var personas:lista; var cant:integer; procedure insertar(var personas:lista; var cant:integer); var ced,ed,tel,x:integer; var ape,nom,nac:string; var encontrado:integer; begin encontrado:=0; writeln('ingrese cedula'); readln(ced); if (cant=0) then encontrado:=0 else for x:=1 to cant do begin if (ced=personas .cedula) then begin encontrado:=1; end; end; if (encontrado=0) then begin cant:=cant+1; writeln('ingrese apellido'); readln(ape); writeln('ingrese nombre'); readln(nom); writeln('ingrese edad'); readln(ed); writeln('ingrese nacionalidad'); readln(nac); writeln('ingrese telefono'); readln(tel); personas[cant].cedula:=ced; personas[cant].apellido:=ape; personas[cant].nombre:=nom; personas[cant].edad:=ed; personas[cant].nacionalidad:=nac; personas[cant].telefono:=tel; end else writeln(' Registro ya existe'); end; procedure mostrar(var personas:lista; var cant:integer); var x: integer; begin for x:=1 to cant do writeln(' cedula: ',personas .cedula,' apellido: ',personas .apellido,' nombre: ',personas .nombre,' edad: ',personas .edad,' nacionalidad: ',personas .nacionalidad,' telefono: ',personas .telefono); readkey; end; begin end. procedure ordenar(var personas:lista; var cant:integer); var x,y,z:integer; var aux:dat; begin for x:=1 to cant do begin for y:=x+1 to cant do begin if personas >cant[y] then for z:=1 to cant do begin aux :=cant[z]; cant[z]:=cant[y]; cant[y]:=aux[z]; end; end; end; end; procedure modificar(var personas:lista; var cant:integer); var x,valor,encon,posicion,nuevodat:integer; var opcion:string; begin repeat clrscr; encon:=0; writeln('ingrese valor a modificar'); readln(valor); for x:=1 to cant do begin if (valor= personas .cedula)then begin encon:=1; posicion:=x; end; end; if encon=0 then writeln('dato no encontrado') else begin for x:=posicion to cant do personas .cedula:=cant[nuevodat]; end; writeln('ingrese nueva dato'); readln(nuevodat); personas .cedula:=cant[nuevodat]; writeln('desea buscar otra opcion'); readln(opcion); until (opcion='n') or (opcion='N'); end; procedure buscar(var personas:lista; var cant:integer); var valor:integer; var x,encontrado:integer; var opcion:string; begin repeat clrscr; encontrado:=0; writeln('ingrese valor a buscar'); readln(valor); for x:=1 to cant do begin if (valor= personas .cedula) then begin encontrado:=1; end; end; if encontrado=0 then writeln('no encontrado'); else begin writeln('valor encontrado',valor); writeln('desea buscar otro?'); end; readln(opc); until (opc='n') or opc(='N'); end; procedure eliminar(var personas:lista; var cant:integer); var x,i,encontrado,posicion,cedula:integer; var opci,valor:string; begin repeat clrscr; encontrado:=0; writeln('eliminar valor'); readln(valor); for x:=1 to cant do if (valor= personas .cedula) then begin encontrado:=1; posicion:=x; end; if encontrado=0 then writeln('datos no encotrados') else for x:=posicion to cant do begin personas .cedula:=cant[x+1,1]; personas .cedula:=cant[x+1,2]; personas .cedula:=cant[x+1,3]; personas .cedula:=cant[x+1,4]; personas .cedula:=cant[x+1,5]; end; personas[x,1]:=''; personas[x,2]:=''; personas[x,3]:=''; personas[x,4]:=''; personas[x,5]:=''; writeln('Quiere borrar otra fila'); readln(opci); until opci='n'; end; var opcion:integer; begin repeat clrscr; writeln('menu principal'); writeln('1 insertar'); writeln('2 mostrar'); writeln('3 ordenar'); writeln('4 modificar'); writeln('5 buscar'); writeln('6 eliminar'); writeln('7 salir'); repeat readln (opcion); until (opcion >0) and (opcion <8); clrscr; case (opcion) of 1:insertar(personas); 2:mostrar(personas); 3:ordenar(personas); 4:modificar(personas); 5:buscar(personas); 6:eliminar(personas); end; until opcion=7; readkey; end. Título: Re: AYUDA Publicado por: engel lex en 30 Junio 2013, 03:21 am deja de repostear lo mismo -.-
duplicado http://foro.elhacker.net/ejercicios/ayuda-t393782.0.html;msg1866100 (http://foro.elhacker.net/ejercicios/ayuda-t393782.0.html;msg1866100) (en realidad triplicado con otro por ahí que hiciste) va contra las reglas... si no te responden es porque no hay alguien conectado que sepa hacerlo consejos para postear... 1- di lo que tienes (codigo, ya lo publicaste) 2- di lo que necesitas (que se supone que hace eso) 3- di en donde tienes problema y por qué puntualmente (incluye textualmente errores lanzados, da detalles de que está haciendo y que deberia) 4- entre las herramientas de edicion del post hay una lista desplegable que dice GeSHi le das, escoges tu lenguaje y lo pegas entre las etiquetas que te coloca, esto es para que sea comodamente visible |