1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

[Matlab] Input para não aceitar letras

Discussão em 'Programação' iniciada por Dark_Templar, 6 de Dezembro de 2008. (Respostas: 4; Visualizações: 2011)

  1. Boas tardes, estou a fazer um programa em que o utilizador insere o valor do declive de uma recta. Ja consegui fazer com que ele não aceite input vazio. Alguem sabe como é q eu posso fazer para ele so me aceitar numérico e não terminar quando são inseridas letras?

    Cumps
     
  2. alakazan

    alakazan Power Member

    mete aqui o teu código.

    já agora para ver se é se é numero tens a função isnumeric
     
  3. Código:
    disp('Introduza o valor do declive');
    disp('r=');
    declive=input('');
     
    while isempty(declive)
    disp('Introduza o valor do declive');
    disp('r=');
    declive=input('');
     
    end
    

    isto é parte do codigo..aqui está para ele não aceitar vazio.. agora quero q ele so aceite numeros e nao letras.

    por exemplo valor de r = dfgfd
     
    Última edição pelo moderador: 15 de Dezembro de 2008
  4. ppt

    ppt Power Member

    Há uns 4 anos que não uso matlab, mas a sugestão do alakazan deve funcionar. Apenas tens que acrescentar ao while a condição isnumeric.

    Resumindo:
    Código:
    disp('r=');
    declive=input('');
    
    while isempty(declive) || ~isnumeric(declive)
        disp('Introduza o valor do declive');
    disp('r=');
    declive=input('');
    
    end
    Nota: Não testei.
     
  5. nao funciona. diz me

    Error using ==> input
    Undefined function or variable 'g'.

    ou seja diz me smp q a variavel da letras nao está definida. Alguem tem mais sugestoes?

    Obrigado
     

Partilhar esta Página