Ir ao conteúdo

Posts recomendados

Postado

Pessoal boa noite, tenho esse código em portugol e queria passar ele para VisualG. Se alguém puder me ajudar, desde já agradeço!!

programa
{
	funcao reserva_aut(caractere vet[]){
		inteiro i, T1=0, T2=0, T3=0, maior
		para(i=1;i<=20;i++){
			se(vet[i]=='x'){
				T1++
				}
			}
			para(i=21;i<=40;i++){
				se(vet[i]=='x'){
					T2++
				}
			}
			para(i=41;i<=60;i++){
				se(vet[i]=='x'){
					T3++
				}
			}
			maior=T1
			se(maior>T2){
				se(maior>T3){
					para(i=41;i<=60;i++){
						se(vet[i]==' '){
							vet[i]='x'
							escreva("Quarto reservado com sucesso!\n")
							i=61
						}
					}
				}
				senao{
					para(i=21;i<=40;i++){
						se(vet[i]==' '){
							vet[i]='x'
							escreva("Quarto reservado com sucesso!\n")
							i=61
						}
					}
				}
			}
			senao{
				para(i=1;i<=20;i++){
					se(vet[i]==' '){
						vet[i]='x'
						escreva("Quarto reservado com sucesso!\n")
						i=61
					}
				}
			}
	}	
	funcao inicio()
	{
		caractere letra='j', vet[61],let='z'
		inteiro i, num, n=0
		real total=0.0, T1=0.0, T2=0.0, T3=0.0
		para(i=1;i<61;i++){
			vet[i]=' '
		}
		
		faca{
			para(i=1;i<61;i++){//lista de todos os quartos
				escreva("Q ",i," = ",vet[i])
			se(i%10==0){
				escreva("\n")
			}
		}
			escreva("==========HOTEL DUBAI==========\n")
			escreva("=============MENU==============\n")
			escreva("r – Reservar um determinado quarto\n")
			escreva("a – Reserva automática de quartos\n")
			escreva("d – Liberar um quarto\n") 
			escreva("t – Taxa de ocupação do hotel\n")
			escreva("x – Serviço de quarto\n")
			escreva("q - Sair\n")	
			escreva("Escolha uma função!\n")
			leia(letra)
			se(letra=='r'){
				escreva("Informe o numero do quarto desejado!\n")
				leia(num)
				se(num>=1 e num<=60){
					se(vet[num]=='x'){//Para mostrar que o querto solicitado já esta em uso
						escreva("Quarto já ocupado\n")
					}
					senao{
						vet[num]='x'
						escreva("Quarto solicitado reservado!\n")
					}
				}
			}
			senao se(letra=='a'){
				reserva_aut(vet)//Função reserva automatica
			}
			senao se(letra=='d'){
				escreva("Informe o quarto que deseja liberar:\n")
				leia(num)
				se(num>=1 e num<=60){
					se(vet[num]==' '){//Para mostrar que o quarto solicitado ja esta liberado
						escreva("Quarto já esta liberado\n")
					}
					senao{
						vet[num]=' ' //Para liberar o quarto solicitado
						escreva("Quarto liberado com sucesso:\n")
					}
				}
			}
			senao se(letra=='t'){
				para(i=1;i<60;i++){
					se(vet[i]=='x'){
						total++
					}
				}
				escreva("Taxa de ocupação é: ",total*1.6,"\n")
				para(i=1;i<=20;i++){//Calcular taxa de ocupação do primeiro andar
					se(vet[i]=='x'){
						T1++
					}
				}
				escreva("Taxa de ocupação do primeiro andar é: ",T1*5,"\n")
				para(i=21;i<=40;i++){//Calcular taxa de ocupação do segundo andar
					se(vet[i]=='x'){
						T2++
					}
				}
				escreva("Taxa de ocupação do segundo andar é: ",T2*5,"\n")
				para(i=41;i<=60;i++){//Calcular taxa de ocupação do terceiro andar
					se(vet[i]=='x'){
						T3++
					}
				}
				escreva("Taxa de ocupação do terceiro andar é: ",T3*5,"\n")
				total=0
				T1=0
				T2=0
				T3=0
				faca{
					escreva("Aperta espaço para continuar!")
					leia(let)
				}enquanto(let!=' ')
			}
			senao se(letra=='x'){
				escreva("1 - Arrumar quarto\n")
				escreva("2 - Refeição\n")
				escreva("Escolha a opção desejada!\n")
				leia(n)
				se(n==1){
					escreva("Arrumar o quarto solicitado!\n")
				}
				senao se(n==2){
					escreva("Refeição solicitada!\n")
				}
			}
		}enquanto(letra!='q') 
	}
}

 

  • Amei 1
Postado

@Danilo Do Carmo    No portugol studio é melhor que o visualG ,  e Qual  o objetivo ?  ,    e esse código é praticamente um visualG , bastando apenas substituir as chaves "{ }" , sendo que essa primeira "abre_chaves"  pode ser deletada , e a segunda "fecha_chaves" substitua por "fimse"  ,  e se você tiver um enunciado desse exercício , poste ele aqui , para saber o esse programa deveria fazer .

  • Curtir 1
Postado

@devair1010 é para estudo, eu tinha feito esse código no portugol, só que estão usando o VisualG aqui e não aprendi a mexer nele ainda.

Faça um programa em Portugol Studio para controlar a ocupação de quartos de um hotel com 60 quartos. O programa deve ter as seguintes características:

Um menu deve ser fornecido para o usuário com as seguintes opções:

r – para reservar um determinado quarto

a – para reserva automática de quartos

d – para liberar um quarto;

t – para mostrar a taxa de ocupação do hotel

x – Uma função que vocês vão definir

q - para sair.

Acima do menu deve ser mostrado uma lista de todos os quartos e se eles estão ocupados: se ocupado, mostrar um “X” na frente do número do quarto; caso contrário mostrar um espaço em branco “ “.

Se o usuário tentar reservar um quarto que já está reservado, uma mensagem de erro deve ser exibida, indicando que o quarto já está ocupado.

Sempre que ocorrer uma reserva ou liberação de quarto, a lista de quartos deve ser atualizada. Inicialmente todos os quartos devem estar desocupados.

Mostrar quantos quartos estão ocupados juntamente com a porcentagem de ocupação. Mostrar também a taxa de ocupação por andar. Cada andar tem 20 quartos.

Reserva automática: esse tipo de reserva faz com que o programa escolha automaticamente um quarto para reserva. O programa deve dar preferência para os quartos que estão nos andares que estão com maior ocupação. Crie um procedimento para lidar com as mensagens de erro. Após uma mensagem de erro peça para o usuário pressionar a tecla ENTER para continuar. Isso pode ser feito pelo comando leia(x), onde x é uma variável do tipo caractere.

 

  • Curtir 2
  • Membro VIP
Postado

Que tal refazer o exercício do zero? Daí você poderia se basear na estrutura do Portugol.

Esboço inicial:
 

algoritmo "Gerenciador de reservas de quartos"

procedimento inicializarQuartos()
var
   i :inteiro
inicio
   para i de 1 ate 60 faca
      quartos[i] <- " "
   fimPara
fimProcedimento

var
   quartos :vetor[1..60] de caractere
   i :inteiro

inicio
   inicializarQuartos()


fimAlgoritmo


{
Faça um programa em Portugol Studio para controlar a ocupação de quartos de um
hotel com 60 quartos. O programa deve ter as seguintes caractereísticas:

Um menu deve ser fornecido para o usuário com as seguintes opções:
r  para reservar um determinado quarto
a  para reserva automática de quartos
d  para liberar um quarto;
t  para mostrar a taxa de ocupação do hotel
x  Uma função que vocês vão definir
q - para sair.

Acima do menu deve ser mostrado uma lista de todos os quartos e se eles estão
ocupados: se ocupado, mostrar um X na frente do número do quarto; caso
contrário mostrar um espaço em branco  “.
Se o usuário tentar reservar um quarto que já está reservado, uma mensagem de
erro deve ser exibida, indicando que o quarto já está ocupado.
Sempre que ocorrer uma reserva ou liberação de quarto, a lista de quartos deve
ser atualizada. Inicialmente todos os quartos devem estar desocupados.
Mostrar quantos quartos estão ocupados juntamente com a porcentagem de ocupação.
Mostrar também a taxa de ocupação por andar. Cada andar tem 20 quartos.

Reserva automática: esse tipo de reserva faz com que o programa escolha
automaticamente um quarto para reserva. O programa deve dar preferência para os
quartos que estão nos andares que estão com maior ocupação. Crie um
procedimento para lidar com as mensagens de erro. Após uma mensagem de erro
peça para o usuário pressionar a tecla ENTER para continuar. Isso pode ser
feito pelo comando leia(x), onde x é uma variável do tipo caractere.
}

Inserindo um menu:

inicio
   inicializarQuartos()
   enquanto (opcao <> "q") faca
      escrevaL("r – para reservar um determinado quarto     ")
      escrevaL("a – para reserva automática de quartos      ")
      escrevaL("d – para liberar um quarto;                 ")
      escrevaL("t – para mostrar a taxa de ocupação do hotel")
      escrevaL("x – ima função que vocês vão definir        ")
      escrevaL("q - para sair.                              ")
      escreva ("-> ")
      leia(opcao)
   fimEnquanto
fimAlgoritmo


Ou:

procedimento exibirItensMenu()
inicio
   escrevaL("r – para reservar um determinado quarto     ")
   escrevaL("a – para reserva automática de quartos      ")
   escrevaL("d – para liberar um quarto;                 ")
   escrevaL("t – para mostrar a taxa de ocupação do hotel")
   escrevaL("x – ima função que vocês vão definir        ")
   escrevaL("q - para sair.                              ")
fimProcedimento

var
   quartos :vetor[1..60] de caractere
   opcao: caractere

inicio
   inicializarQuartos()
   enquanto (opcao <> "q") faca
      exibirItensMenu() ")
      escreva ("-> ")
      leia(opcao)
   fimEnquanto
fimAlgoritmo


Por aí vai...

  • Curtir 2

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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...

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!