Guest User

Untitled

a guest
Feb 19th, 2018
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 6.07 KB | None | 0 0
  1. program agenda;
  2. uses crt;
  3. const
  4.  MAX = 100;
  5. var
  6. nomes  : array[1..MAX] of string;
  7. lista:array[1..MAX] of record
  8.                         tel1,tel2,cel:string[10];
  9.                         nome:string[30];
  10.                            end;
  11.    
  12. i,j,k:integer;
  13. sn,op:char;
  14. elementoProcurado,aux:string;
  15.  
  16. procedure incluir;
  17.        
  18.         begin
  19.             i:=i+1;
  20.                   writeln('Escreva o nome do contato:');
  21.                   readln (nomes[i]);
  22.                   writeln('Insira o Telefone Residencial');
  23.                   readln (lista[i].tel1);
  24.                   writeln('Insira o Celular');
  25.                   readln (lista[i].cel);
  26.                   writeln('Deseja incluir outro telefone?');
  27.                     readln(sn);
  28.                       if sn = 's' then
  29.                        begin
  30.                        writeln('insira o novo telefone');
  31.                        readln(lista[i].tel2)
  32.                        end
  33.                        else
  34.                        end;
  35.  
  36.                        
  37. procedure ordena;
  38. begin
  39.  FOR i := 1 TO 99 DO
  40.              BEGIN                  
  41.                                   FOR k := i+1 TO 100 DO
  42.                                   BEGIN
  43.  
  44.                                                                 IF ( lista[i].nome > lista[k].nome ) THEN
  45.                                                                 BEGIN
  46.                                                                 // Ordena os nomes
  47.                                                                         aux                                     := lista[j].nome;
  48.                                                                         lista[i].nome        := lista[k].nome;
  49.                                                                         lista[k].nome        := aux;
  50.                                                                 // Ordena os telefones
  51.                                                                         aux                                             := lista[j].tel1;
  52.                                                                         lista[i].tel1   := lista[k].tel1;
  53.                                                                         lista[k].tel1    := aux;
  54.                                                                 // Ordena os emails
  55.                                                                         aux                                     := lista[j].cel;
  56.                                                                         lista[i].cel       := lista[k].cel;
  57.                                                                         lista[k].cel       := aux;                                                                
  58.                                                                 END;
  59.                        
  60.                                    END;                        
  61.                         END;
  62.                        
  63.           writeln('Dados organizados!');
  64.           readln;
  65.                
  66.                    
  67.                 END;
  68.  
  69. procedure busca;
  70. var
  71.  procuraContato: string;
  72.   BEGIN
  73.                         write('Informe o nome: ');  readln(ProcuraContato);
  74.                         writeln('=========================================');
  75.                         IF ( ProcuraContato <> '' ) THEN
  76.                         BEGIN
  77.                                 FOR i := 1 TO 10 DO
  78.                                 BEGIN
  79.                                         IF (ProcuraContato = lista[i].nome) THEN
  80.                                         BEGIN
  81.                                                 writeln('Nome     : ', lista[i].nome);
  82.                                                 writeln('Telefone : ', lista[i].tel1);
  83.                                                 writeln('Email    : ', lista[i].cel);
  84.                                                 writeln('-----------------------------------------');
  85.                                         END;
  86.                                 END;
  87.                                
  88.                                 IF (ProcuraContato <> lista[i].nome) THEN
  89.                                         writeln('Contato nao encontrado.');
  90.                                        
  91.                         END;
  92.                        
  93.                         readln;
  94.                         clrscr;
  95.                 END;
  96.  
  97.    
  98. procedure listagem;
  99.     var
  100.     x,y:integer;
  101.     begin
  102.        
  103.            
  104.        for i := 1+x to y+20 do
  105.          begin
  106.            writeln('Nome:', lista[i].nome, 'telefone:', lista[i].tel1);
  107.          end;
  108.           writeln('Deseja listar mais 20 números?');
  109.           x:=x+20;
  110.           y:=y+20;
  111.        
  112.     end;       
  113.        
  114. procedure edita;
  115.  var
  116.  procuraContato: string;
  117.     begin
  118.      write('Informe o nome do contato que deseja alterar: ');  readln(ProcuraContato);
  119.                           writeln('=========================================');
  120.                           FOR i := 1 TO 100 DO
  121.                           BEGIN
  122.                                  IF (ProcuraContato = lista[i].nome) THEN
  123.                                  BEGIN
  124.                                                                 write('Nome     [ ',lista[i].nome,']     : '); readln( lista[i].nome );
  125.                                                                 write('Telefone [ ',lista[i].tel1,'] : '); readln( lista[i].tel1 );
  126.                                                                 write('Celular    [ ',lista[i].cel,']    : '); readln( lista[i].cel );
  127.                                                                 writeln('-----------------------------------------');
  128.                                  END;
  129.                           END;
  130.                           readln;
  131.                           clrscr;
  132.                 END;       
  133.        
  134. begin
  135.     repeat
  136.       writeln('Bem-vindo(a) à agenda!');
  137.       writeln('1- Para incluir novo contato');
  138.       writeln('2- Para busca um contato');
  139.       writeln('3- Para ordenar a lista de contatos');
  140.       writeln('4- Para listagem');
  141.       writeln('5- Para editar contato');
  142.       writeln('6- Sair');
  143.       readln(op);
  144.          case op of
  145.            '1': incluir;
  146.            '2': busca;
  147.            '3': ordena;
  148.            '4': listagem;
  149.            '5': edita;
  150.          else
  151.          end;
  152.        
  153.   until op = '6'  
  154.  end.
Add Comment
Please, Sign In to add comment