AYUDA con procedimientos en pascal

Iniciado por joseanh, 30 Junio 2013, 03:10 AM

0 Miembros y 1 Visitante están viendo este tema.

joseanh

Ayuda con los procedimientos de ordenar y modificar, no los entiendo bien.

program registro(input,output);
uses crt;
const numpersona=3;
type
  carasteristica=record
  cedula,edad,telefono:integer;
  apellido,nombre,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 cedula');
              readln(ced);
              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,valor:integer;
    var aux:dat;

      for x:=1 to cant do
        begin








    procedure modificar(var personas:lista; var cant:integer);
    var x,valor,encon,posicion,nuevodat:integer;
    var opcion:string;

    begin
    repeat
         clrscr;
         encon:=0;
    personas
  • .cedula:=nuevodat;
         writeln('ingrese valor a modificar');
         readln(valor);
              for x:=1 to cant do
              if (valor= personas
  • .cedula)then
              begin