quarta-feira, 30 de janeiro de 2013

[Training] Exercício para Visualg

algoritmo "Ficha Cliente"
// Função :
// Autor :
// Data : 1/8/2013
// Seção de Declarações
var
Nome, Morada, CP1, CP2, Sexo:caractere
PesoActual,PesoIdeal,difPeso, Altura:real
opcao:inteiro

inicio
// Seção de Comandos

opcao <- 1

//ciclo que impede o programa de sair

enquanto (opcao 0) faca


   escreval (".............................................")
   escreval ("              MENU PRINCIPAL")
   escreval (".............................................")
   escreval ("")
   escreval (".............................................")
   escreval ("")
   escreval (".......... (1) - Inserir Cliente ............")
   escreval ("")
   escreval (".......... (2) - Relatório ..................")
   escreval ("")
   escreval (".......... (3) - Calcular Peso ..............")
   escreval ("")
   escreval (".......... (4) - Créditos ...................")
   escreval ("")
   escreval (".......... (0) - Sair do Programa ...........")
   escreval ("")
   escreval (".............................................")
   escreval ("")
   escreva ("............................ Escolha a opção: ")
   leia (opcao)
   limpatela

   //Após a escolha da opcao correcta vamos executar os comandos

   escolha opcao
   caso 1  //inserir os dados do cliente
      escreval (".............................................")
      escreval ("              MENU INSERIR DADOS")
      escreval (".............................................")
      escreva ("      Nome: ")
      leia (nome)
      escreva ("      Morada: ")
      leia (morada)
      escreva ("      Código Postal (ex. 4100): ")
      leia (cp1)
      escreva ("      Código de rua(ex. 123): ")
      leia (cp2)
      escreva ("      Sexo: ")
      leia (sexo)
      escreva ("      Peso actual: ")
      leia (pesoActual)
      escreva ("      Altura: ")
      leia (altura)
      limpatela
   caso 2   //relatorio dos dados do cliente


      //Testar se a var nome tem dados ou esta vazia nome ""

      se (nome "") entao
         escreval (".............................................")
         escreval ("              MENU RELATORIO")
         escreval (".............................................")
         escreval ("     Nome: ", nome)
         escreval ("     Morada: ", morada)
         escreval ("     Código Postal: ", cp1, "-", cp2)
         escreval ("     Peso Actual: ", pesoActual)
         escreval ("     Altura: ",altura)
         escreva ("     Digite 1 para voltar ao menu principal: ")
         leia (opcao)
         enquanto (opcao 1) faca
            limpatela
            escreval (".............................................")
            escreval ("              MENU RELATORIO")
            escreval (".............................................")
            escreval ("")
            escreval ("!!!ERRO...Ainda não tem dados preenchidos!!!")
            escreval ("")
            escreva ("Digite 1 para voltar ao menu principal: ")
            leia (opcao)
         fimenquanto
      senao
         enquanto (opcao 1) faca
            limpatela
            escreval (".............................................")
            escreval ("              MENU RELATORIO")
            escreval (".............................................")
            escreval ("")
            escreval ("!!!ERRO...Ainda não tem dados preenchidos!!!")
            escreval ("")
            escreva ("Digite 1 para voltar ao menu principal: ")
            leia (opcao)
         fimenquanto
      fimse

   caso 3   //calcular peso ideal
      se (nome "") entao
         escreval (".............................................")
         escreval ("              MENU PESO IDEAL")
         escreval (".............................................")
         escreval ("     Nome: ", nome)
         escreval ("     Morada: ", morada)
         escreval ("     Altura: ",altura)
         escreval("")
         se (sexo = "M") ou (sexo = "m") entao
            pesoIdeal <- (72.7*altura) - 58
            difPeso <- pesoactual - pesoideal
            escreval ("     O seu peso ideal deveria ser: ", pesoIdeal)
            escreval ("     Tem uma diferença de peso de: ", difPeso, "Kg.")

         senao
            pesoideal <- (62.1*altura) - 44.7
            difPeso <- pesoactual - pesoideal
            escreval ("     O seu peso ideal deveria ser: ", pesoIdeal)
            escreval ("")
            escreval ("     Tem uma diferença de peso de: ", difPeso, "Kg.")
            escreval ("")
         fimse
         escreva ("     Digite 1 para voltar ao menu principal: ")
         leia (opcao)
         enquanto (opcao 1) faca
            limpatela
            escreval (".............................................")
            escreval ("              MENU PESO IDEAL")
            escreval (".............................................")
            escreval ("")
            escreval ("        !!!Escolheu a opção errada!!!")
            escreval ("")
            escreva ("Digite 1 para voltar ao menu principal: ")
            leia (opcao)
         fimenquanto
      senao
         enquanto (opcao 1) faca
            limpatela
            escreval (".............................................")
            escreval ("              MENU PESO IDEAL")
            escreval (".............................................")
            escreval ("")
            escreval ("        !!!Escolheu a opção errada!!!")
            escreval ("")
            escreva ("Digite 1 para voltar ao menu principal: ")
            leia (opcao)
         fimenquanto
      fimse

      //pesoideal se M <- (72.7*altura) - 58
      //pesoideal se F <- (62.1*altura) - 44.7



   caso 4  //creditos do programa

      enquanto (opcao 1) faca
         limpatela
         escreval (".............................................")
         escreval ("              MENU RELATORIO")
         escreval (".............................................")
         escreval ("")
         escreval ("     Programa elaborado por Ilídio Gonçalves")
         escreval ("     RUMOS - Técnicos de Multimédia")
         escreval ("     T3 - Algoritmia (2013)")
         escreval ("")
         escreval ("")
         escreva ("Digite 1 para voltar ao menu principal: ")
         leia (opcao)
      fimenquanto
   fimescolha

   limpatela

fimenquanto

fimalgoritmo

Sem comentários:

Enviar um comentário