Jump to content
Fórum Script Brasil
  • 0

Algoritmo para Controle de Preso


Martinsrj

Question

Olá pessoal, beleza?

Estou dando os primeiros passos na programação, mas estou com algumas dificuldades, principalmente em registro e vetor.

Estou fazendo faculdade e a prova vai ser na Terça-feira agora.

Teve uma questão da prova que dizia o seguinte:

Fazer um programa que realiza o cadastro de preso com os tipos: nome, idade, peso e a pena.

O programa deve ter os seguinte menu: 1- Cadastro, 2- Consulta e 3 pra sair do programa.

Tentei fazer, porem está dando o erro.

Gostaria da ajudar dos mais experientes na utilização de registro e vetor e tb na modularização do programa, pois a prova exige que seja modularizado.

Abaixo está o programa que eu tentei fazer, porem está com erros.

program penetenciario;

uses

crt;

type

reg = record

nome: string;

peso, pena, idade: integer;

end;

vet = array [1..4]of reg;

procedure menu (var op: integer);

begin

repeat

clrscr;

writeln ('----- Menu de Op‡äes -----');

writeln ('1- Cadastro de Preso');

writeln ('2- Consulta preso');

writeln ('3- Sair');

readln (op);

until (op >= 1) and (op <=3);

end;

function busca (nomedopreso: string; x: vet): integer;

var i: integer;

begin

busca := 0;

for i:= 1 to 5 do

if x.nome = nomedopreso

then busca := i;

end;

procedure cadastro (var cad: reg);

begin

writeln ('Digite o nome:');

readln (cad.nome);

writeln ('Digite o peso');

readln (cad.peso);

writeln ('Digite a pena (s¢ numero)');

readln (cad.pena);

writeln ('Digite a idade');

readln (cad.idade);

end;

procedure consulta (var x:vet);

var

cons: reg;

retaguarda: integer;

i: integer;

begin

clrscr;

writeln ('Digite o nome do preso para consulta:');

readln (cons.nome);

retaguarda:= busca(cons.nome, x);

if retaguarda = 0

then begin

writeln ('Preso nÆo encontrado');

readkey;

end

else begin

writeln (cons.nome);

writeln (cons.idade);

end

end;

var {variaveis globais}

opcao: integer;

g_cad: vet;

bd: vet

begin

clrscr;

repeat

menu (opcao);

if opcao = 1

then cadastro(g_cad)

else if opcao = 2

then consulta(bd);

until opcao = 3;

end.

Link to comment
Share on other sites

1 answer to this question

Recommended Posts

  • 0

Cara sua declaração de variáveis não esta correta...

Type Reg=record
        Nome:string[50];
        idade: string[8]
        peso:string[5];
        pena: string[10];
        end;
 vet = array [1..4] of reg;
{você tem que declara as variáveis antes das procedures e Functions}
var {variaveis globais}
opcao: integer;
g_cad, bd: vet;

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152k
    • Total Posts
      651.8k
×
×
  • Create New...