Ir ao conteúdo
  • Cadastre-se

Danilo Do Carmo

Membro Júnior
  • Posts

    4
  • Cadastrado em

  • Última visita

Reputação

5
  1. @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.
  2. 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') } }
  3. @devair1010 O código em C está funcionando sim, esta em anexo! O Agenda.h está mais abaixo no código marcado como biblioteca.Agenda.rar
  4. Pessoal, boa noite. Tenho esse código em C++ e queria passar para o VisualG, pra estudos, para entender melhor, alguém sabe converter ?? Se alguém transformasse para VisualG eu ficaria grato Desde já muito obrigado!! #include "Agenda.h" #include <locale.h> int main(){ setlocale(LC_ALL,"Portuguese"); criarListaDinVazia(); int opcao, cod; char nome[50], email[30]; do{ puts(" \n>>>>>> AGENDA <<<<<<"); puts("(1) CRIAR NOVO CONTATO"); puts("(2) PROCURAR UM CONTATO"); puts("(3) DELETAR UM CONTATO"); puts("(4) LISTA DOS CONTATOS"); puts("(5) SAIR"); puts(" ------------------------"); puts("Informe uma opção:"); scanf("%d",&opcao); switch(opcao){ case 1: inserirElemLista(); break; case 2: puts("Informe o código que deseja procurar:"); scanf("%d",&cod); pesquisarItem(cod); break; case 3: puts("Informe o código que deseja Deletar:"); scanf("%d",&cod); removerItem(cod); break; case 4: exibirElemLista(); break; case 6: puts("Saindo do menu...!!!"); break; default: puts("Opção Inválida!"); } }while(opcao!=5); } //Biblioteca #include <stdio.h> #include <stdlib.h> // malloc, free, etc. #include <locale.h> struct NoListaDin{ int cod; char nome[50]; int telefone; char email[30]; NoListaDin *prox; }; NoListaDin *primeiro; NoListaDin *ultimo; void criarListaDinVazia(){ NoListaDin *aux; aux = (NoListaDin*) malloc(sizeof(NoListaDin)); primeiro = aux; ultimo = primeiro; puts("Nó cabeça criado com sucesso!"); } void inserirElemLista(){ NoListaDin *aux; int codigo,tel; aux = (NoListaDin*) malloc(sizeof(NoListaDin)); printf("Informe um codigo:\n"); scanf("%d",&codigo); aux->cod = codigo; printf("Informe o nome do contato:\n"); fflush(stdin); gets(aux->nome); printf("Informe um telefone:\n"); scanf("%d",&tel); aux->telefone=tel; printf("informe um email do contato:\n"); fflush(stdin); gets(aux->email); ultimo->prox = aux; ultimo = aux; aux->prox = NULL; puts("Inserido com sucesso!"); } void exibirElemLista(){ NoListaDin *aux; aux = primeiro->prox; puts("Exibindo o conteúdo da Agenda:"); while(aux!=NULL){ printf("\nCódigo %d\n",aux->cod); printf("Nome %s\n",aux->nome); printf("Telefone %d\n",aux->telefone); printf("E-mail %s\n\n\n",aux->email); aux = aux->prox; } } void pesquisarItem(int cod){ NoListaDin *aux; aux=primeiro->prox; int flag=0; while(aux!=NULL){ if(aux->cod==cod){ printf("\nCódigo %d\n",aux->cod); printf("Nome %s\n",aux->nome); printf("Telefone %d\n",aux->telefone); printf("E-mail %s\n\n",aux->email); flag = 1; aux=NULL; } else{ aux = aux->prox; // percorre a lista } } if(flag==0){ printf("O código %d não se encontra na lista!",cod); } } void removerItem(int cod){ NoListaDin *aux; NoListaDin *sentinela; aux = primeiro->prox; sentinela = primeiro; int flag = 0; while(aux!=NULL){ if(aux->cod == cod){ printf("Removeu o item %d\n",cod); sentinela->prox = aux->prox; flag = 1; free(aux); aux = NULL; } else{ aux = aux->prox; // percorre a lista sentinela = sentinela->prox; } } if(flag==0){ printf("O item %d não se encontra na lista!\n",cod); } }

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!