ENEM, perguntado por BrunaDMS2626, 11 meses atrás

Os proprietários de um teatro necessitam de umaferramenta de software para reserva de lugares.O desenvolvedor contratado verificou que as poltronasdisponíveis para reserva são referenciadas pelo número da fila(a partir do n. 1) e pelo número da cadeira (a partir do n. o o1) em cada fila, em uma representação matricial em que aslinhas e colunas da matriz correspondem, respectivamente, àsfilas e às colunas de cadeiras. Embora o contexto seja o daorganização matricial — N filas de cadeiras (linhas), cada umacontendo M cadeiras (colunas) —, a solução a serimplementada utilizará uma estrutura linear unidimensional(vetor), sendo, portanto, necessária uma conversão entre olugar referenciado (número f da fila, número c da cadeira) ea posição real na estrutura de armazenamento (posição p novetor).Na situação apresentada, considere que a referida matriz sejaarmazenada no vetor segundo sua seqüência de linhas, da primeirapara a última, e, em cada linha, da primeira coluna para a última,e que a primeira posição no vetor tenha índice 0. Nessa situação,a posição p da poltrona do teatro localizada à fila de número f eà coluna de número c, é igual aA c + f × M.B f + c × M.C M × (f – 1) + (c – 1).D M × (c – 1) + (f – 1).E M × (c – 1) + M × f.

#ENADE

Soluções para a tarefa

Respondido por bryanavs
0

Podemos afirmar então que o programa ficará da seguinte forma;

Vamos aos dados/resoluções:

É de conhecimento público que vamos desenvolver o enunciado dessa maneira abaixo:

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.

espero ter ajudado nos estudos ,bom dia :)

Respondido por ronauldo
7

Resposta: M × (f – 1) + (c – 1).

Explicação: correção DMN

Perguntas interessantes