Jump to content
Svinnicius

[VISUALG] Erro para encerrar a execução do algoritmo

Recommended Posts

Ao sair de um procedimento e entrar em outro, ta apresentando erro quando tento finalizar o programa.

 

Var
// Seção de Declarações das variáveis 
nome: vetor [1..3]  de caractere
telef: vetor [1..3]  de caractere
ema: vetor [1..3]  de caractere
codigo,codigo_contato,codigo_contato_cheio, menu_apagar,opc, opc1: inteiro
cont, menu_mostrar,op: inteiro
procedimento principal()

Inicio
// Seção de Comandos, procedimento, funções, operadores, etc... 
repita
escreval ("")
escreval ("=== AGENDA TELEFÔNICA ===")
escreval ("")
escreval ("1. Inserir novo contato")
escreval ("2. Apagar contato")
escreval ("3. Mostrar todos os contatos")
escreval ("4. Sair")
escreva ("Digite opcao: ")
leia (codigo)
limpatela
ate (codigo=1) ou (codigo=2) ou (codigo=3) ou (codigo=4)
escolha (codigo)

caso 1
   contato()
caso 2
   apagar()
caso 3
   mostrar()
caso 4
   interrompa
fimescolha
fimprocedimento
//---------------------- NOVO CONTATO ----------------------
procedimento contato()
inicio
para cont de 1 ate 3 faca
limpatela
escreval("== INSERIR NOVO CONTATO ==")
      escreva ("Nome: ")
      leia (nome[cont])
      escreva ("Telefone: ")
      leia (telef[cont])
      escreva ("E-mail: ")
      leia (ema[cont])
      escreval("")
      escreval("Usuario cadrastrado com sucesso")
      repita
      escreval("")
      escreval("1.Insira novo contato")
      escreval("2.Voltar ao menu")
      escreval("")
      escreva("Digite opção: ")
      leia(codigo_contato)
escolha (codigo_contato)
caso 1
escreva("")
caso 2
   interrompa
   limpatela
   principal()
outrocaso
escreval("")
escreval("Opção invalida")
escreval("")
escreval("Pressione ENTER para voltar")
leia(op)
limpatela
fimescolha
ate codigo_contato = 1
fimpara
limpatela
          escreval("")
          escreval("Lista de contato cheia")
          repita
          escreval("")
          escreval("1.Voltar ao menu")
          escreval("2.Sair")
          escreval("")
          escreval("Digite opção")
          leia(codigo_contato_cheio)
    escolha (codigo_contato_cheio)
          caso 1
          limpatela
          principal()
          caso 2
          interrompa
          outrocaso
escreval("")
escreval("Opção invalida")
escreval("")
escreval("Pressione ENTER para voltar")
leia(op)
limpatela
fimescolha
ate codigo_contato_cheio = 1
fimprocedimento


//------------------------ Apagar contato------------------------------------
procedimento apagar()
inicio
limpatela
escreval("== APAGAR CONTATO ==")
Escreval("")
escreva ("Qual contato você quer apagar? ")
Escreval("")
para cont de 1 ate 3 faca
Escreval(cont,". ",nome[cont])
fimpara
Escreval("")
Escreva("Digite opção:")
Leia(opc)
se opc >0 entao
   se opc <4 entao
nome[opc]<-""
telef[opc]<-""
ema[opc]<-""
Escreval("")
Escreval("Contato Apagado com sucesso")
repita
escreval("")
escreval("1.Apagar outro contato")
escreval("2.Voltar ao menu")
escreval("3.Sair")
escreva("Digite opção:")
leia(menu_apagar)
Escolha(menu_apagar)
caso 1
limpatela
apagar()
caso 2
limpatela
principal()
caso3
interrompa

outrocaso
escreval("")
escreval("Opção invalida")
escreval("")
escreval("Pressione ENTER para voltar")
leia(op)
senao
apagar()
fimse
fimse
fimse
fimescolha
ate menu_apagar = 3
fimprocedimento

//-------------------------- Mostrar todos os contatos ---------------------
procedimento mostrar()
inicio
limpatela
escreval("== LISTA DE CONTATOS ==")
Escreval("")
para cont de 1 ate 3 faca
Escreval(cont,". ",nome[cont])
fimpara
Escreval("")
Escreva("Digite opção:")
Leia(opc1)
se opc1 >0 entao
   se opc1 <4 entao
limpatela
Escreval("Nome: ",nome[opc1])
Escreval("Telefone: ",telef[opc1])
Escreval("E-mail: ",ema[opc1])
repita
escreval("")
escreval("1.Mostrar outro contato")
escreval("2.Voltar ao menu")
escreval("")
escreva("Digite opção:")
Leia(menu_mostrar)
Escolha(menu_mostrar)
caso 1
limpatela
mostrar()
caso 2
limpatela
principal()
outrocaso
escreval("")
escreval("Opção invalida")
escreval("")
escreval("Pressione ENTER para voltar")
leia(op)
senao
mostrar()
fimse
fimse
fimescolha
limpatela
ate menu_mostrar = 1
fimprocedimento
inicio
// Seção de Comandos
  principal()

Fimalgoritmo

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By ph1
      boolean opcao = false; // tem que inicializar com true dentro do laço 'do-while' String resp; Scanner sc = new Scanner(System.in); do { // essas duas variáveis aqui podem ser declaradas dentro do while double media = 0, soma = 0; int j = 0; notas_aluno[j] = 0; for (int i = 0; i < nome_aluno.length; i++) { System.out.println("Insira o nome do aluno: "); nome_aluno[i] = sc.nextLine(); // usa sc.nextLine() //soma = 0; for (j = 0; j < notas_aluno.length; j++) // porque 4 ? usa o notas_aluno.length { System.out.println("Entre com a " + (j + 1) + " ª nota do aluno: " + (i + 1)); notas_aluno[j] = sc.nextDouble(); //notas_aluno[j] = Double.parseDouble(sc.nextLine()); // usa Double.parseDouble(sc.nextLine()) soma = soma + notas_aluno[j]; } media = soma / 5; // pq 5 ? usa o notas_aluno.length String aproveitamento = ""; if (media >= 9 && media <= 10) { aproveitamento = "A"; } else if (media >= 7.5 && media < 9) { // não precisa testar se é < 9 aproveitamento = "B"; } else if (media >= 6 && media < 7.5) { // não precisa testar se é < 7.5 aproveitamento = "C"; } else if (media >= 4 && media < 6) { // não precisa testar se é < 6 aproveitamento = "D"; } else if (media >= 0 && media < 4) { // não precisa testar se é < 4 aproveitamento = "E"; } System.out.println("Média: " + media); System.out.println("Conceito: " + aproveitamento); switch (aproveitamento) { case "A": case "B": case "C": System.out.println("APROVADO"); break; case "D": case "E": System.out.println("REPROVADO"); break; } System.out.print("Deseja Continuar? <s/n>: "); resp = sc.nextLine(); // usa sc.nextLine() if (resp.equalsIgnoreCase("n")) opcao = true; } }while (!opcao); String resp; boolean opcao = false; Scanner sc = new Scanner(System.in); do { System.out.print("Deseja Continuar? <s/n>: "); resp = sc.nextLine(); //} while (!opcao.equalsIgnoreCase(resp)); //while ( opcao != 'n'); // só pára se for == 'n' if(resp.equalsIgnoreCase("n")) { opcao = true; System.out.println("Saiu!"); //break; } }while(!opcao); ...> Prazer a todos. Interessante, seu eu tirar o código entre o d{ e a pergunta para sair, o while funciona perfeitamente, porém se eu retorno como o código para ler as notas e calcular o while não funciona para quando tiver menos de 50 alunos. Não consigo encontrar o erro. Obrigado.
    • By Motta
      O algoritmo que procura padrões ocultos na maior base de dados de sonhos do mundo
    • By TATIANE DEOTI
      PRECISO RESPONDER ATRAVÉS DO VISUALG MAS NÃO ESTOU CONSEGUINDO FORMULAR
       
      Uma loja por atacado vende caixas com 30 unidades de cada produto. Faça um algoritmo no Visualg que leia o valor pago por um cliente,  o valor do troco recebido e o nome do produto adquirido. Em seguida, calcule e mostre o valor que foi pago por cada unidade do produto, no seguinte formato: "o produto __ custa R$ __ por unidade".
    • By Pavolin9
      Bom dia, estou desenvolvendo um sistema bem simples de estoque onde os itens serao armazenados em uma matriz segue codigo:
          package main;          import java.io.Console;     import java.util.Arrays;     import java.util.Scanner;          public class IncluirItem{         public static void main(String[] args) {             String[][] itens = new String[2][5];             String[] campos = new String[7];             int opcao = 0;             int remover;             int verificar = 0;             int adcionar = 0;             int tamanho = 2;                          Scanner sc = new Scanner(System.in);                          campos [1] = "Nome";             campos [2] = "Codigo de barras";             campos [3] = "quantidade";             campos [4] = "validade";             campos [5] = "data de entrada";                          do {                 System.out.println("\n\n### Sistema de estoque - simplificado ###");                 System.out.println("=========================================");                 System.out.println("      |     1 - Adcionar itens   |");                 System.out.println("      |     2 - Excluir itens    |");                 System.out.println("      |     3 - Mostrar itens    |");                 System.out.println("      |     0 - Sair             |");                 System.out.println("=========================================\n");                                  System.out.println("Escolha uma opcao: ");                 opcao = sc.nextInt();                 System.out.print("\n");                                  switch (opcao) {                 case 1:                     System.out.println("Cadastro de itens: ");                     //Adciona itens                      for (int i = 0; i <2; i++) {                         System.out.println("Adcionar item? ");                         System.out.println("1 para sim \n2 para nao: ");                         adcionar = sc.nextInt();                         if (adcionar == 1) {                             System.out.printf("%d. item \n", (i+1));                             verificar = verificar + 1;                             for (int j=0; j < 5; j++) {                                     System.out.printf("%s ", campos[j+1]);                                 System.out.printf("= ", i,(j+1));                                 itens[i][j] = sc.next();                                                              }                             System.out.printf("\n");                         }                         else {                             break;                         }                     }                                              break;                 case 2:                     //Remove itens                     System.out.println("Exclusao de itens: ");                     if(verificar > 0) {                         for (int i = 0; i <2; i++) {                                 System.out.printf("%d. item \n", (i+1));                             System.out.printf("ID do produto= 00%d \n", (i+1));                             System.out.printf("\n");                         }                     }                     else {                         System.out.println("Nenhum item listado!");                     }                     System.out.println("\nEscolha o numero do item a ser removido: \n");                     remover = sc.nextInt();                     for (int i = 0; i <2; i++) {                         if(remover == 2) {                         itens[i] = itens[i-1];                         }                     }                     break;                 case 3:                     //Mostra itens                     if(verificar > 0) {                                                      for (int i = 0; i <2; i++) {                                     if (verificar == 2) {                                 System.out.printf("%d. item \n", (i+1));                                 System.out.printf("ID do produto= 00%d \n", (i+1));                                 for (int j=0; j < 5; j++) {                                         System.out.printf("%s ", campos[j+1]);                                     System.out.printf("= %s \n", itens [i][j]);                                 }                                 System.out.printf("\n");                             }                             else {                                         itens = Arrays.copyOf(itens, tamanho - 1);                                         verificar = 0;                                         System.out.printf("%d. item \n", (i+1));                                         System.out.printf("ID do produto= 00%d \n", (i+1));                                         for (int j=0; j < 5; j++) {                                                 System.out.printf("%s ", campos[j+1]);                                             System.out.printf("= %s \n", itens [i][j]);                                         }                                         System.out.printf("\n");                                         break;                                 }                         }                     }                     else {                         System.out.println("Nenhum item listado!");                     }                                          break;                 default:                     System.out.println("Opção Inválida!");                     break;                 }             } while(opcao != 0);         }     }  
      Minha duvida é a seguinte, eu quero excluir uma posicao da matriz, exemplo: registrei dois itens, na coluna um e coluna dois da matriz e gostaria de remover a coluna um da lista, como realizo essa função, e outra coisa, eu gostaria de quando eu inserisse pela segunda vez algum item a matriz começasse na proxima possicao vazia, atualmente se eu pedir para inserir um novo item a matriz começa da primeira posicao e assim apaga os elementos ja inseridos.
       
    • By Andréia Bürck
      Gostaria de saber se há como fazer o seguinte, em JAVA ou qualquer outra linguagem: personalizar um áudio. Ou seja, tenho um áudio, e em lugares chaves desse áudio, depois dele pronto, um programa inserir nesses pontos-chave, por exemplo, nomes. Eu falo o nome, e o programa insere nos pontos pré-determinados.
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.