Ir ao conteúdo
  • Cadastre-se

Rodrigo Viana Pereira

Membro Júnior
  • Posts

    11
  • Cadastrado em

  • Última visita

Tudo que Rodrigo Viana Pereira postou

  1. program TRABALHO_02; uses CRT; type t_reservaPoltrona = record assento :string[3]; reserva :integer; sobrenome:string[20]; end; var ArquivoReservas :array [1..20] of t_reservaPoltrona; //armazenar as reservas NumRegistro :integer; //números de reservas feitas opMenu :char; //opção do menu escolhida fileira :char; poltrona :integer; num_fil :integer; assento :string[3]; procedure incluir(opMenu:integer); Begin Repeat write('Informe o número da reserva ou 0 para terminar: '); readln(t_reservaPoltrona.reserva); write('Informe a fileira desejada: '); readln(fileira); write('Informe o número de poltrona desejado: '); readln(poltrona); Case fileira of 'A': num_fil:= 1; 'B': num_fil:= 2; 'C': num_fil:= 3; 'D': num_fil:= 4; 'E': num_fil:= 5; 'F': num_fil:= 6; 'G': num_fil:= 7; 'H': num_fil:= 8; 'I': num_fil:= 9; 'J': num_fil:= 10; 'K': num_fil:= 11; 'L': num_fil:= 12; 'M': num_fil:= 13; 'N': num_fil:= 14; '0': num_fil:= 15; End; assento:= concat(fileira,assento); writeln(assento); write('Informe o sobrenome de quem vai receber a reserva: '); readln(t_reservaPoltrona.sobrenome); Until (t_reservaPoltrona.reserva = 0); writeln('Confira os dados da compra do seu ingresso: ',t_reservaPoltrona.reserva, assento, t_reservaPoltrona.sobrenome); End; procedure alterar(opMenu: integer); begin //aqui coloque para listar todas as reservas já cadastradas end; Begin numRegistro:=0; Repeat ClrScr; writeln(' MENU '); writeln; writeln('1. Incluir Ingresso '); writeln('2. Alterar Ingresso '); writeln('3. Excluir Ingresso '); writeln('4. Listar Ingresso '); writeln('5. Salvar e Terminar'); opMenu:=ReadKey; case opMenu of '1': incluir; '2': alterar; {'3': excluir; '4': listar; '5': salvar;} else writeln('Opcao Invalida!'); end; ReadKey; until (opMenu='5'); End.
  2. consegui acertar isso aí já tá compilando o menu incluir. Agora, quando eu digito 0 pra encerrar a inclusão, ele não volta ao menu inicial e depois que eu incluo o primeiro ingresso, ele não lista os dados todos: reserva, assento e sobrenome
  3. tá dando erro na concatenação da fileira com o assento não sei se estou usando a estrutura correta procedure incluir(opMenu:integer); Begin Repeat write('Informe o número da reserva: '); readln(Reserva_Ingresso.reserva); write('Informe a fileira desejada ou 0 para terminar: '); readln(fileira); write('Informe o número de poltrona desejado: '); readln(poltrona); Case fileira of 'A': num_fil:= 1; 'B': num_fil:= 2; 'C': num_fil:= 3; 'D': num_fil:= 4; 'E': num_fil:= 5; 'F': num_fil:= 6; 'G': num_fil:= 7; 'H': num_fil:= 8; 'I': num_fil:= 9; 'J': num_fil:= 10; 'K': num_fil:= 11; 'L': num_fil:= 12; 'M': num_fil:= 13; 'N': num_fil:= 14; '0': num_fil:= 15; cadeia:= concat(fileira-assento); writeln(cadeia); write('Informe o sobrenome de quem vai receber a reserva: '); readln(Reserva_Ingresso.sobrenome); Until (fileira = 0); writeln('Confira os dados da compra do seu ingresso: ',Reserva_Ingresso.reserva, cadeia, Reserva_Ingresso.sobrenome); End; ele diz que o := de cadeia := concat ...... não é válido
  4. Exatamente. Vou acabar entregando a estrutura, mas sem compilar. Tentar mostrar a bendita "lógica de programação" rsrs
  5. Reserva é um número qualquer que o usuário escolhe adicionado 5 minutos depois Fiz o menu principal e o menu de inclusão Program TRABALHO_02 ; Var menu1, menu2, exclusao, salvo : integer; poltrona : integer; fileira: char; s1, s2, cadeia: string[3]; Type Reserva_Ingresso = record reserva : integer; sobrenome : string[20]; End; Procedure incluir(menu1:integer); Begin Repeat write('Informe o número da reserva: '); readln(Reserva_Ingresso.reserva); write('Informe a fileira desejada ou 0 para terminar: '); readln(fileira); write('Informe o número de poltrona desejado: '); readln(poltrona); Case fileira of 'A': num_fil:= 1; 'B': num_fil:= 2; 'C': num_fil:= 3; 'D': num_fil:= 4; 'E': num_fil:= 5; 'F': num_fil:= 6; 'G': num_fil:= 7; 'H': num_fil:= 8; 'I': num_fil:= 9; 'J': num_fil:= 10; 'K': num_fil:= 11; 'L': num_fil:= 12; 'M': num_fil:= 13; 'N': num_fil:= 14; '0': num_fil:= 15; cadeia:= concat(fileira-assento); writeln(cadeia); write('Informe o sobrenome de quem vai receber a reserva: '); readln(Reserva_Ingresso.sobrenome); Until (fileira = 0); writeln('Confira os dados da compra do seu ingresso: ',Reserva_Ingresso.reserva, cadeia, Reserva_Ingresso.sobrenome); End; Begin Repeat writeln(' Menu Principal '); writeln(''); writeln('Digite 1 para incluir ingresso: '); writeln('Digite 2 para alterar as informações referentes ao seu ingresso: '); writeln('Digite 3 para excluir seu ingresso: '); writeln('Digite 4 para listar o ingresso: '); writeln('Digite 5 para salvar e terminar: '); readln(menu); case menu of 1: incluir; 2: alterar; 3: excluir; 4: listar; 5: salvar; Else If (menu<>1) and (menu<>2) and (menu<>3) and (menu<>4) and (menu<>5) then writeln('Opção Inválida!'); Until (menu=5); End.
  6. As reservas têm que ser armazenadas em arquivo. Só que eu faltei essa aula. Nem tô preocupado com essa parte A questão é fazer os menus, e, no de inclusão dizer se algum assento já foi ou não reservado Você tem algum e-mail para que eu possa te mostrar o trabalho completo?
  7. Esse é o "código completo". Não consigo desenvolver mais. Já tô quase abandonando!
  8. Comecei com esse algoritmo write('Informe o número de reservas de qustro algarismos: '); readln(Reserva_Ingresso.reserva); if (Reserva_Ingresso.reserva < 1000) or (n > 9999) then begin repeat write('O número digitado não possui quatro algarismos. Digite um que satisfaça a condição: '); readln(Reserva_Ingresso.reserva); until (Reserva_Ingresso.reserva >= 1000) and (Reserva_Ingresso.reserva <= 9999); end; write('Informe o sobrenome de quem vai receber a reserva: '); readln(Reserva_Ingresso.sobrenome); end; procedure alterar(menu1:integer); begin write('Informe o número de reserva que deseja alterar: '); readln(Reserva_Ingresso.reserva); if (Reserva_Ingresso.reserva <> Reserva_Ingresso.reserva) then begin Repeat write('A reserva digitada não existe. Informe uma existente para a alteração: '); readln(Reserva_Ingresso.reserva); Until (Reserva_Ingresso.reserva = Reserva_Ingresso.reserva); end; write('Informe o novo assento desejado no padrão XNN, onde X é uma fileira de A a O e NN o número do assento 01 à 99: '); readln(Reserva_Ingresso.assento); write('Informe o sobrenome a quem pertence a nova reserva.'); end; procedure excluir(exclusao:integer); begin write('Informe o número da reserva que deseja excluir: '); readln(Reserva_Ingresso.reserva); if (Reserva_Ingresso.reserva <> Reserva_Ingresso.reserva) then begin repeat write('A reserva digitada não existe. Informe uma existente para a exclusão: '); readln(Reserva_Ingresso.reserva); until (Reserva_Ingresso.reserva = Reserva_Ingresso.reserva); end; end; procedure listar(menu2:integer); begin repeat write('Digite 1 para listar as reservas por sobrenome: '); write('Digite 2 para listar as reservas por assento: '); write('Digite 3 para listar todas as reservas: '); readln(menu2); case menu2 of 1: Listar_Sobrenome; 2: Listar_Assento; 3: Listar_Reservas; else if (menu2<>1) and (menu2<>2) and (menu<>3) then writeln('Opção Inválida!'); until (menu2=1) or (menu2=2) or (menu2=3); end; procedure Ordem_Sobrenome(Listar_Sobrenome:integer); procedure Ordem_Assento(Listar_Assento:integer); procedure Ordem_Reserva(Listar_Reserva:integer); procedure salvar(salvo:integer); var ingresso : char; menu : integer; begin repeat writeln('Digite 1 para incluir ingresso: '); writeln('Digite 2 para alterar as informações referentes ao seu ingresso: '); writeln('Digite 3 para excluir seu ingresso: '); writeln('Digite 4 para listar o ingresso: '); writeln('Digite 5 para salvar e terminar: '); readln(menu); case menu of 1: incluir; 2: alterar; 3: excluir; 4: listar; 5: salvar; else if (menu<>1) and (menu<>2) and (menu<>3) and (menu<>4) and (menu<>5) then writeln('Opção Inválida!'); until (menu=5); Só depois eu vi que o ingresso tinha que ter o formato XNN com X a fileira e NN o número do assento Aí mudei a procedure para a inclusão program TRABALHO_02; var menu1, menu2, exclusao, salvo : integer; poltrona : integer; fileira: char; cadeia: string[3]; type Reserva_Ingresso = record reserva :integer; sobrenome:string[20]; end; procedure incluir(menu1:integer); begin write('Informe a fileira desejada: '); readln(fileira); write('Informe o número de poltrona desejado: '); readln(poltrona); case fileira of 'A': num_fil:= 1; 'B': num_fil:= 2; 'C': num_fil:= 3; 'D': num_fil:= 4; 'E': num_fil:= 5; 'F': num_fil:= 6; 'G': num_fil:= 7; 'H': num_fil:= 8; 'I': num_fil:= 9; 'J': num_fil:= 10; 'K': num_fil:= 11; 'L': num_fil:= 12; 'M': num_fil:= 13; 'N': num_fil:= 14; '0': num_fil:= 15; begin cadeia:=concat(s1,s2); writeln(cadeia); end; begin repeat writeln('Digite 1 para incluir ingresso: '); writeln('Digite 2 para alterar as informações referentes ao seu ingresso: '); writeln('Digite 3 para excluir seu ingresso: '); writeln('Digite 4 para listar o ingresso: '); writeln('Digite 5 para salvar e terminar: '); readln(menu); case menu of 1: incluir; 2: alterar; 3: excluir; 4: listar; 5: salvar; else if (menu<>1) and (menu<>2) and (menu<>3) and (menu<>4) and (menu<>5) then writeln('Opção Inválida!'); until (menu=5); end.
  9. Bom dia, pessoal. Estou bem perdido para fazer esse programa no PascalZim. Já tentei fazer três programas mas nenhum tá rodando. Estou perdido pra fazer o submenu e a varredura pra saber se o ingresso já foi selecionado ou não. Precisaria disso até amanhã. Se alguém puder me ajudar, agradeceria. Elabore um programa que permita reservar um ingresso em um cinema, considerando que o cinema tem 15 fileiras e 20 cadeiras por fileira. As fileiras são identificadas pelas letras A, B, C, ... e O, seguidas de um número sequencial de 2 dígitos (01 até 20). Para a reserva, o programa deve armazenar, em uma estrutura do tipo record, as informações solicitadas e somente salvar no arquivo INGRESSO.txt após o término do programa. • Deve ser exibido um menu com as seguintes opções: 1. Incluir Ingresso; 2. Alterar Ingresso; 3. Excluir Ingresso; 4. Listar Ingresso: 1. Listar por Sobrenome; 2. Listar por Assento; 3. Listar todas as Reservas; 5. Salvar e Terminar

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!