mewdex 0 Denunciar post Postado Julho 7, 2010 Olá galera, esses dias vi por aqui um tópico com um carinha pedindo ajuda em um programa lá e agora chegou a minha vez hehe ... preciso fazer um trabalho para sexta feira e tá f***, não tô conseguindo terminar... falta pouca coisa... mas é a parte mais difícil e vim pedir ajuda pra galera que sabe tudo aqui rsrs ... é o seguinte, o trabalho é você construir um programa em VisuALG, montando um hotel em que voce tem certa quantidade de quartos e quer ocupar/desocupar, saber qntos quartos estao ocupados e qntos estao ocupados por andar, e alem disso, ocupar um quarto automaticamente de acordo com o andar mais cheio... é uma bagunça hehe ... vou deixar meu algoritmo aqui e o pdf do trabalho, se alguem estiver disposto a me ajudar nesse final ^^ .... algumas duvidas: 1) o Hotel tem 120 quartos, como faço para mostrar apenas 10 por linha ? ( ele tá mostrando todos na mesma linha ) 2)Nao to conseguindo fazer a quantidade de ocupados Por andar, apenas ao todo... 3) nao tenho nem ideia de como fazer esse negocio de automatico..... algoritmo "semnome" // Função : // Autor : // Data : 06/07/2010 // Seção de Declarações procedimento msg(a:caracter) var inicio escreva("Aperte ENTER para continuar") leia(a) fimprocedimento var quarto: vetor[1..120] de inteiro qnt_andar: vetor[0..5] de inteiro reserva: vetor[1..120] de logico acao: caractere i, andar, apt: inteiro tx: real // taxa ocupacao x: caractere // procedimento maior, maior_andar: inteiro // reserva automatica inicio reserva[4] <- verdadeiro andar <- 0 tx <- 0 repita escreval("===========================") escreval("Hotel Da Engenharia Quimica") escreval("===========================") escreval("") escreval("") escreval("Dispnibilidade dos quartos:") para i de 1 ate 120 faca se reserva[i]=verdadeiro entao escreva("Q",i:3 ," X ") senao escreva("Q ",i:3 ," ") fimse fimpara escreval("") escreval("") escreval("Menu") 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 - uma funcao pra mim definir") escreval("q - para sair") leia(acao) se acao="r" entao // Reservas escreval("== Setor de Reservas ==") escreva("Digite o quarto: ") leia(apt) se reserva[apt]=verdadeiro entao escreval("") escreval("----------------------") escreval("Esse quarto já está reservado") escreval("----------------------") msg(x) escreval("") escreval("") senao reserva[apt] <- verdadeiro fimse fimse se acao="d" entao // Liberar Quartos escreval("== Setor de Liberacao ==") escreva("Digite o quarto: ") leia(apt) se reserva[apt]=verdadeiro entao reserva[apt] <- falso senao se reserva[apt]=falso entao escreval("") escreval("---------------------------") escreval("Esse quarto já estava livre") escreval("---------------------------") escreval("") msg(x) fimse fimse fimse para i de 1 ate 120 faca // numero de andares ocupados se reserva[i]=verdadeiro entao andar <- andar + 1 fimse fimpara // tx <- andar*100/120 para apt de 0 ate 5 faca para i de 1 ate 120 faca se (reserva[i]=verdadeiro) entao qnt_andar[apt] <- qnt_andar[apt] + 1 fimse fimpara fimpara tx <- andar*100/120 se acao="t" entao // taxa de ocupacao escreval("=== Taxa de Ocupação===") escreval(andar, " quarto(s) ocupado(s). Ocupação de ", tx:2:2, "%") escreval("") escreval("===Taxa de Ocupação por andar===") para apt de 0 ate 5 faca escreval(apt+1, "º. Andar :",qnt_andar[apt], " quarto(s). Ocupação de % no andar.") fimpara msg(x) fimse ate acao="q" // Seção de Comandos fimalgoritmoagradeço quem puder me ajudar ^^ Trabalho Faça um programa em VisuAlg para controlar a ocupação de quartos de um hotel com 120 quartos. O programa deve ter as seguintes características: · Um menu deve ser fornecido para o usuário com as seguintes opções: o r – para reservar um determinado quarto o a – para reserva automática de quartos o d – para liberar um quarto; o t – para mostrar a taxa de ocupação do hotel o x – Uma função que vocês vão definir o 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 caracter · Invente uma nova operação para o programa – essa operação deve estar relacionada com alguma funcionalidade do hotel. Dicas: · Use VARIAVEL:3 para garantir que a variável seja escrita dentro de 3 espaços · Para obter a parte inteira de um número use a função int(VARIÁVEL) Exemplos de saida: =========================== Hotel da Engenharia Química =========================== Disponibilidade dos quartos: Q 1 Q 2 Q 3 Q 4 Q 5 Q 6 Q 7 Q 8 Q 9 Q 10 Q 11 Q 12 Q 13 Q 14 Q 15 Q 16 Q 17 Q 18 Q 19 Q 20 Q 21 X Q 22 Q 23 Q 24 Q 25 Q 26 Q 27 Q 28 Q 29 Q 30 Q 31 Q 32 Q 33 Q 34 Q 35 Q 36 Q 37 Q 38 Q 39 Q 40 Q 41 Q 42 Q 43 Q 44 Q 45 Q 46 Q 47 Q 48 Q 49 Q 50 Q 51 Q 52 Q 53 Q 54 Q 55 Q 56 Q 57 Q 58 Q 59 Q 60 Q 61 X Q 62 Q 63 Q 64 Q 65 Q 66 Q 67 Q 68 Q 69 Q 70 Q 71 Q 72 Q 73 Q 74 Q 75 Q 76 Q 77 Q 78 Q 79 Q 80 Q 81 Q 82 Q 83 Q 84 Q 85 Q 86 Q 87 Q 88 Q 89 Q 90 Q 91 Q 92 Q 93 Q 94 Q 95 Q 96 Q 97 Q 98 Q 99 Q100 Q101 X Q102 X Q103 Q104 Q105 Q106 Q107 Q108 Q109 Q110 Q111 X Q112 Q113 Q114 Q115 Q116 Q117 Q118 Q119 Q120 Menu r - para reserva de quarto a - reserva automática d - para disponibilizar um quarto t - taxa de ocupação do hotel q - para sair Digite uma opção: t ====Taxa de ocupação==== 5 quarto(s) ocupado(s). Ocupação de 4.17%. ====Taxa de ocupação por andar==== 1o. Andar: 0 quarto(s). Ocupação de 0% no andar. 2o. Andar: 1 quarto(s). Ocupação de 5% no andar. 3o. Andar: 0 quarto(s). Ocupação de 0% no andar. 4o. Andar: 1 quarto(s). Ocupação de 5% no andar. 5o. Andar: 0 quarto(s). Ocupação de 0% no andar. 6o. Andar: 3 quarto(s). Ocupação de 15% no andar. Pressione ENTER para continuar =========================== Hotel da Engenharia Química =========================== Disponibilidade dos quartos: Q 1 Q 2 Q 3 Q 4 Q 5 Q 6 Q 7 Q 8 Q 9 Q 10 Q 11 Q 12 Q 13 Q 14 Q 15 Q 16 Q 17 Q 18 Q 19 Q 20 Q 21 X Q 22 Q 23 Q 24 Q 25 Q 26 Q 27 Q 28 Q 29 Q 30 Q 31 Q 32 Q 33 Q 34 Q 35 Q 36 Q 37 Q 38 Q 39 Q 40 Q 41 Q 42 Q 43 Q 44 Q 45 Q 46 Q 47 Q 48 Q 49 Q 50 Q 51 Q 52 Q 53 Q 54 Q 55 Q 56 Q 57 Q 58 Q 59 Q 60 Q 61 X Q 62 Q 63 Q 64 Q 65 Q 66 Q 67 Q 68 Q 69 Q 70 Q 71 Q 72 Q 73 Q 74 Q 75 Q 76 Q 77 Q 78 Q 79 Q 80 Q 81 Q 82 Q 83 Q 84 Q 85 Q 86 Q 87 Q 88 Q 89 Q 90 Q 91 Q 92 Q 93 Q 94 Q 95 Q 96 Q 97 Q 98 Q 99 Q100 Q101 X Q102 X Q103 Q104 Q105 Q106 Q107 Q108 Q109 Q110 Q111 X Q112 Q113 Q114 Q115 Q116 Q117 Q118 Q119 Q120 Menu r - para reserva de quarto a - reserva automática d - para disponibilizar um quarto t - taxa de ocupação do hotel q - para sair Digite uma opção: k ---------------------------------------------------- ERRO: Opção inválida! ---------------------------------------------------- Pressione ENTER para continuar Compartilhar este post Link para o post Compartilhar em outros sites
mewdex 0 Denunciar post Postado Julho 7, 2010 bom galera, consegui terminar o algoritmo...descobri que nada melhor que uma cerveja para abrir a mente e te ajudar a terminar o trabalho haha .... ainda bem que meu professor passou esse metodo ( no pdf ) de como pegar o quarto automaticamente pois eu nao tinha nem ideia como fazia e mesmo fazendo agora, acho que nao conseguiria fazer denovo depois pq é f*** rsrs ... só ficou faltando alinhar apenas 10 quartos em 1 linha, pois eu n entendo mto de matriz ai preferi nao mexer.. vou ver se olho com meu professor se tem jeito de fazer isso sem matriz, apenas com vetor... eu tenho quase certeza que tem, mas eu procurei nos meus arquivos e nao consegui achar, mas lembro de ler algo parecido.... Compartilhar este post Link para o post Compartilhar em outros sites
LucasRuiz11 0 Denunciar post Postado Novembro 21, 2016 Estou com o mesmo trabalho, depois de tanto tempo será que voce ainda tem o trabalho, pra me da uma luz !!?? Compartilhar este post Link para o post Compartilhar em outros sites