Ir ao conteúdo

Problema criar menu e voltar para o mesmo - visualg


Bruna Cardoso

Posts recomendados

Postado

Ola gente.

Tenho um trabalho de algoritmos para realizar e comecei a encontrar algumas dificuldades.

Segue o enunciado:

 

Crie um algoritmo que contenha um menu, que execute a ação escolhida e volte a mostrar as demais opções, até que o usuário resolva sair do sistema. As ações deverão ter todas as seguintes características:

1. Cadastrar moradores e códigos (solicitar cada vez se o usuário quer continuar cadastrando, no máximo 20 posições);

2. Cadastrar consumo de água (solicitar cada vez se o usuário quer continuar cadastrando, no máximo

20 posições, sendo que esta posição equivale à posição dos moradores);

3. Mostrar na tela os moradores e os códigos (em ordem alfabética de moradores);

4. Mostrar na tela os moradores e o consumo em ordem crescente ou decrescente de consumo (o sistema deverá perguntar a ordem desejada);

5. Mostrar na tela os códigos (em ordem crescente);

6. Pesquisar moradores (ler um morador e informar, se cadastrado, o código e o consumo);

7. Pesquisar códigos (ler um código e informar se está cadastrado, mostrando o morador correspondente);

8. Informar a quantidade de moradores e consumos cadastrados (contar quantos cadastros foram feitos);

9. Sair.

Obs 1: Quando terminar de mostrar ou cadastrar uma opção, o sistema deverá ficar com uma frase “Aperte <ENTER> para continuar”, logo após voltando ao menu principal;

Obs 2: O sistema deverá mostrar na tela apenas os comandos da ação escolhida, sendo que quando for pra mostrar o menu, o comando limpatela deverá ter sido executado;

Obs 3: Todas as telas devem ser autoexplicativas para o usuário, ou seja, antes de solicitar ou mostrar alguma coisa na tela, o sistema deve dizer o que o usuário está fazendo.

 

 

Então, ainda estou bem no iniciozinho dele e tive problemas para fazer minha primeira opção do menu (cadastrar morador e codigo) p/ voltar ao menu principal.

 

Segue o meu código ate agora:

algoritmo "semnome"
  // Função :
  // Autor :
  // Data : 26/05/2014
  // Seção de Declarações 
  vara1,a2,a3,a4 :inteiro
  v1: vetor [1..3] de inteiro
  v2: vetor [1..3] de caracter
  i: inteiro
  sair:inteiro
  a0: inteiro
 inicio
 // Seção de Comandos 
    repita
    Escreval ("Menu principal")
    Escreval ("1. Cadastrar Moradores e codigos")
    Escreval ("2. Cadastrar consumo de água")
    Escreval ("3.Mostrar moradores e codigo")
    Escreval  ("4. Sair ")
    leia (a1)
    escolha a1
    caso 1
          para i de 1 ate 3 
              passo 1 faca
                   escreva ("Insira os nomes do morador")
                   leia (v2[i])
                   Escreval ("insira o codigo dos moradores")
                   leia (v1[i])fimpara
            caso 2
            caso 3
            caso 4
    fimalgoritmo
    outro caso
    fimescolha
    ate a1=4
    fimalgoritmo

toda ajuda é bem vinda, desde já grata :)

Postado

Estou verificando e percebi que:

 

1-Os vetores morador e código devem ter 20 posições cada, porém todo vez que você cadastrar essas duas opções  deve perguntar se quer continuar cadastrando ou não.(Seu programa não faz tudo que é pedido no item 1).

 

Obs: Recomendo utilizar o enquanto ao invés do para.


:) Continue o código, você está indo bem! Até então verifiquei apenas esse erro, caso alguém tenha notado algo que não vi peço que notifiquem.  

Postado

Então...
 

Estou com problemas para conseguir perguntar se deseja continuar ou não.
 

Eu tentei colocar um escreva + se dentro do para pra caso não desejasse continuar voltar ao menu principal, mas não deu muito certo.
 

Acabou dando alguns erros no fimpara fazendo o programa encerrar sem voltar para o menu principal.

 

Sobre sua sugestão sobre utilizar o enquanto ao invés do para, como ficaria a estrutura com a opção de continuar cadastrando ou não?

Obg desde ja :) 

Postado

@dif vou escrever esse exemplo, mas não veja como se eu estivesse dando uma resposta pronta. 

 

ao invés de você fazer a forma tradicional: 

 

enquanto cond faça comando;fimenquanto;

 Use:

enquanto cond1 ou cond2 faça comando;.........fimenquanto;

Existe um post de outro usuário que utiliza uma estrutura semelhante. 

Segue o link: http://forum.clubedohardware.com.br/forums/topic/1024753-enquanto-visualg/

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

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

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!