VisualgMaster

Bem vindo ao fórum visualgmaster, tudo relacionado ao visualg, tire suas dúvidas, resolva seus algoritmos.
 
InícioInício  PortalPortal  FAQFAQ  BuscarBuscar  Registrar-seRegistrar-se  MembrosMembros  GruposGrupos  Conectar-se  

Compartilhe | 
 

 VisuAlg - Tratamento de erro

Ver o tópico anterior Ver o tópico seguinte Ir em baixo 
AutorMensagem
Salazar
Novato
Novato


Masculino
Número de Mensagens : 2
Idade : 26
Localização : DF
Data de inscrição : 01/03/2010

MensagemAssunto: 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
Voltar ao Topo Ir em baixo
Ver perfil do usuário
Ryudo302
Novato
Novato


Masculino
Número de Mensagens : 12
Idade : 27
Localização : Brasília, DF
Data de inscrição : 24/11/2008

MensagemAssunto: 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. Wink
Voltar ao Topo Ir em baixo
Ver perfil do usuário
Salazar
Novato
Novato


Masculino
Número de Mensagens : 2
Idade : 26
Localização : DF
Data de inscrição : 01/03/2010

MensagemAssunto: 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.
Voltar ao Topo Ir em baixo
Ver perfil do usuário
Conteúdo patrocinado




MensagemAssunto: Re: VisuAlg - Tratamento de erro   

Voltar ao Topo Ir em baixo
 
VisuAlg - Tratamento de erro
Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo 
Página 1 de 1
 Tópicos similares
-
» [Resolvido]Tratamento Erro Exemplo JPaulo
» seminario 7º e 8º semestre cem erro
» [Resolvido]mensagem para tratamento de erro
» Tratamento de erro em tempo de execução
» Tratamento de erro - Erro em tempo de execução '3044'

Permissão deste fórum:Você não pode responder aos tópicos neste fórum
VisualgMaster :: VisualgMaster :: Suporte-
Ir para: