Ir ao conteúdo
  • Cadastre-se

Pascal - resolução exercícios vetores e matrizes


Visitante: minhah

Posts recomendados

Visitante: minhah
 

Olá, preciso de ajuda para resolução de 2 exercícios de Pascal:

1) Leia um vetor de 10 elementos e em seguida encontre a posição do elemento m (dado pelo usuário) no vetor. Caso o elemento não exista no vetor, informe o usuário. Para encerrar, informe um número negativo.

2) Os proprietários de um teatro necessitam de uma ferramenta de software para reservas de lugares. O desenvolvedor contratado verificou que as poltronas disponíveis para reservas são referenciados pelo número da fila (a partir do número 1) e pelo número da cadeira (a partir do número 1) em cada fila, em uma representação matricial em que as linhas e colunas correspondem, respectivamente, às filas e às colunas de cadeiras.

Implemente um Programa Pascal que realize as "reservas" de lugares, (informando a fila e a cadeira) com o nome do cliente e, caso a cadeira já tenha sido reservada, exibir uma mensagem ao usuário e solicitar nova posição. Para encerrar as reservas, informar "fim".

Se alguém aí puder me ajudar, ficarei grata... ;)

Link para o comentário
Compartilhar em outros sites


var
Vetor : array[1..10] of integer;
Valor, I : integer;
Ok : Boolean;

BEGIN
Clrscr;
for I := 1 to 10 do begin
Writeln('Digite o valor ', I,' do vetor');
Readln(Vetor[i]);
end;

repeat
Ok := False;
Clrscr;
Writeln('Digite o Valor a Pesquisar');
Readln(Valor);

for I := 1 to 10 do begin
if Valor = Vetor[i] then begin
Ok := True;
Writeln('O valor digitado se encontra na posicao ', I);
Readln;
end;
end;

if (Ok = False) and (Valor >= 0) then begin
Writeln('Elemento nao encontrado');
Readln;
end;
until Valor = -1;
Readln;
END.

Ficou sem os espaçamento. Mas só dar uma arrumadinha, botar begin embaixo de begin e etc.

O programa ficou grandinho, mas é porque tem aquela parada chatinha de sair com um numero negativo, com isso o programa cresce.

Verifique se tá certo, porque faz tempo que não mexo com pascal

Link para o comentário
Compartilhar em outros sites

var

Matriz : array[1..10,1..10] of string;

Fila, Coluna : integer;

I, K : integer;

Cliente : string[40];

Resp : Char;

BEGIN

for I := 1 to 10 do begin

for k := 1 to 10 do begin

Matriz[i,K] := 'Vazia';

end;

end;

repeat

Clrscr;

Writeln('Digite o Nome do Cliente que fez a reserva');

Readln(Cliente);

repeat

Writeln('Digite o Numero da Fila da Reserva do Cliente');

Readln(Fila);

Writeln('Digite o Numero da Coluna da Reserva do Cliente');

Readln(Coluna);

until (Fila <= 10) or (Coluna <= 10);

Matriz[Fila,Coluna] := Cliente;

Writeln('Outro Cliente? <S/N>');

Readln(Resp);

until UpCase(Resp) = 'N';

for I := 1 to 10 do begin

for k := 1 to 10 do begin

if Matriz[i,K] <> 'Vazia' then begin

Writeln('Cliente: ', Matriz[i,K]);

Writeln('Fila: ', I);

Writeln('Coluna:', K);

Writeln;

end;

end;

end;

Readln;

END.

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!