program cadastro_clientes;
 uses crt;
 type formulario=ARRAY[1..20] of
        RECORD
          nom: STRING[40];
          nas: STRING[8];
          reg: STRING[18];
          sex: STRING[1];
          cid: STRING[22];
          rua: STRING[30];
          num: STRING[8];
          cep: STRING[15];
          est: STRING[2];
          apa: STRING[8];
        END;

 var
      formulary: FORMULARIO;
      k,n:       INTEGER;
      arquivo:   TEXT;

begin
assign(arquivo,'cadastros.txt');
append(arquivo);
 window(1,1,80,25);
  write('Qual o n£mero de cadastros?(m x=20) ');
   readln(n);
  clrscr;
 for k:=1 to n do BEGIN
  window(2,2,80,24);
   writeln;
   writeln('                                CADASTRO ',k);
   writeln;
   writeln('ΙΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝ»');
   writeln('Ί                           Formul rio de cadastro                           Ί');
   writeln('ΜΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΉ');
   writeln('Ί                                                                            Ί');
   writeln('Ί Nome:                                                                      Ί');
   writeln('Ί                                                                            Ί');
   writeln('Ί Sexo(M/F):            RG:                  Nascimento(DD/MM/AA):           Ί');
   writeln('Ί                                                                            Ί');
   writeln('Ί Estado(ex.:RS):       Cidade:                         CEP:                 Ί');
   writeln('Ί                                                                            Ί');
   writeln('Ί Rua:                              N£mero:           Apartamento:           Ί');
   writeln('Ί                                                                            Ί');
   writeln('ΘΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΌ');
   writeln('ΙΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝ»');
   writeln('Ί  Se o cadastrado nΖo mora em apartamento, defina o "Apartamento" como 0.   Ί');
   writeln('Ί                        Exemplo de CEP: 97010-110.                          Ί');
   writeln('ΘΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΌ');

    gotoxy(9,8);
     readln(formulary[k].NOM);
    gotoxy(14,10);
     readln(formulary[k].SEX);
      repeat
        if (upcase(formulary[k].SEX)<>'M') AND (upcase(formulary[k].SEX)<>'F') then BEGIN
         gotoxy(2,22);
          writeln('SEXO INV΅LIDO! INFORME O SEXO CORRETAMENTE(M OU F)!');
         gotoxy(14,10);
          readln(formulary[k].SEX);
         gotoxy(2,22);
           clreol;
        END;
      until (upcase(formulary[k].SEX)='M') OR (upcase(formulary[k].SEX)='F');
    gotoxy(29,10);
     readln(formulary[k].REG);
    gotoxy(68,10);
     readln(formulary[k].NAS);
    gotoxy(19,12);
     readln(formulary[k].EST);
    gotoxy(33,12);
     readln(formulary[k].CID);
    gotoxy(62,12);
     readln(formulary[k].CEP);
    gotoxy(8,14);
     readln(formulary[k].RUA);
    gotoxy(45,14);
     readln(formulary[k].NUM);
    gotoxy(68,14);
     readln(formulary[k].APA);
     clrscr;

 END;
 for k:=1 to n do BEGIN
  writeln('------------------------------------------------------------');
  writeln('Cadastro ',k,':');
  writeln;
  writeln('NOME: ',upcase(formulary[k].NOM));
  writeln('SEXO: ',upcase(formulary[k].SEX));
  writeln('REGISTRO GERAL: ',formulary[k].REG);
  writeln('NASCIMENTO: ',formulary[k].NAS);
  writeln('ESTADO: ',upcase(formulary[k].EST));
  writeln('CIDADE: ',upcase(formulary[k].CID));
  writeln('CEP: ',formulary[k].CEP);
  writeln('RUA: ',upcase(formulary[k].RUA));
  writeln('NιMERO: ',formulary[k].NUM);
  write('APARTAMENTO: ');
       if formulary[k].APA='0' then
        writeln('NULO') else
        writeln(formulary[k].APA);
  writeln('------------------------------------------------------------');
  writeln;

  writeln(arquivo,'------------------------------------------------------------');
  writeln(arquivo,'NOME: ',upcase(formulary[k].NOM));
  writeln(arquivo,'SEXO: ',upcase(formulary[k].SEX));
  writeln(arquivo,'REGISTRO GERAL: ',formulary[k].REG);
  writeln(arquivo,'NASCIMENTO: ',formulary[k].NAS);
  writeln(arquivo,'ESTADO: ',upcase(formulary[k].EST));
  writeln(arquivo,'CIDADE: ',upcase(formulary[k].CID));
  writeln(arquivo,'CEP: ',formulary[k].CEP);
  writeln(arquivo,'RUA: ',upcase(formulary[k].RUA));
  writeln(arquivo,'NιMERO: ',formulary[k].NUM);
  write(arquivo,'APARTAMENTO: ');
       if formulary[k].APA='0' then
        writeln(arquivo,'NULO') else
        writeln(arquivo,formulary[k].APA);
  writeln(arquivo,' ');
  write('Pressione qualquer tecla para continuar...');
  readkey;
  clrscr;
 END;
 close(arquivo);
 write('O arquivo CADASTROS.TXT foi salvo/atualizado com sucesso.');
 writeln;
 write('Execu‡Ζo finalizada. Pressione qualquer tecla para sair...');

 readkey;
end.

    Source: geocities.com/yakuza_cd