Salazar Novato
Número de Mensagens : 2 Idade : 33 Localização : DF Data de inscrição : 01/03/2010
| Assunto: VisuAlg - Tratamento de erro Seg Mar 01, 2010 3:48 pm | |
| Saudações gerais. Minha dúvida ultrapassa os conhecimentos até dos meus mestres, e eu sequer sei como pesquisar isso na internet. No VisuAlg (leitor de algoritmos em Portugol), eu executo algoritmos, insiro condições matemáticas para impedir erros ou paradoxos em números (como dividir por 0, ou etc.), fiz até um algoritmo irrepreensível, porém estou com um probleminha. Se eu declaro uma variável do tipo numérica e REAL, e insiro algum caracter inválido, como um espaço ou uma letra, o próprio programa abre uma janela que acusa o erro "Esperava uma variável do tipo REAL", porém eu não quero que essa janela abra, quero controlar esse erro e exibir meu próprio texto, algo do tipo "Impossível continuar. Foram inseridos caractéres inválidos.", como na imagem a seguir: (Esse é um algorítmo fictício que eu criei com variáveis caractere só para exemplificar o que eu quero.) Se quiserem um Algoritmo para inserir os comandos, podem usar esse: - Citação :
- algoritmo "Ferraduras de cavalos por Haras."
// Função : Desenvolver um programa que calcule a quantidade de ferraduras // usadas numa haras. Deve ser oferecida a quantidade de cavalos. // Autor : Edgar Froes Brito Leal // Data : 24/02/2010
var
ferr : real cav : inteiro
inicio
escreval ("Descubra a quantidade de ferraduras de um haras inserindo a quantidade de cavalos") escreval ("existente nesse haras.") escreval escreval ("Digite a quantidade de cavalos do háras:") leia (cav) SE (cav < 0) ENTAO repita Escreval ("Valor inválido. Digite um valor inteiro maior ou igual a zero.") leia (cav) ate cav >= 0 FIMSE ferr <- (cav * 4) escreval escreval ("________________________________________________________________") escreval ("Esse háras contém",ferr," ferraduras.") escreva ("________________________________________________________________") fimalgoritmo | |
|
Ryudo302 Novato
Número de Mensagens : 12 Idade : 34 Localização : Brasília, DF Data de inscrição : 24/11/2008
| Assunto: Re: VisuAlg - Tratamento de erro Seg Mar 01, 2010 6:27 pm | |
| Dê uma olhada nas funções existentes no VisuAlg (mais precisamente as funções de manipulação de cadeias de caracteres): http://www.apoioinformatica.inf.br/visualg/funcoes.htm No caso, eu sugiro que você leia o número de cavalos como um literal e crie um plano para verificar se existem apenas números no literal, utilizando algumas dessas funções. Em seguida, se o literal for válido, você o converte para inteiro através de Caracpnum(literal) e efetua as demais operações. Tente aí e poste aqui novamente caso tenha problemas. | |
|
Salazar Novato
Número de Mensagens : 2 Idade : 33 Localização : DF Data de inscrição : 01/03/2010
| Assunto: Re: VisuAlg - Tratamento de erro Qui Mar 04, 2010 2:43 pm | |
| Eu estive tentando de muitas formas mas ainda não consegui, isso sim parece ser difícil viu.
Alguém me dê uma luz de como restringir uma variável a aceitar somente números e, caso eu digite um caracter que não seja número, ele não emita um erro do próprio programa, e sim um aviso que eu defina e a chance de poder inserir dados corretos na mesma variável, se for possível. Isso está até me dando dor de cabeça. | |
|
Conteúdo patrocinado
| Assunto: Re: VisuAlg - Tratamento de erro | |
| |
|