Ir para conteúdo

Arquivado

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

Lucas Vida

Problemas com Case

Recommended Posts

Bom dia amigos!

 

Estou precisando criar uma rotina que compara se o valor de entrada é uma letra,número, operador ou simbolo!

 

Tenho um edit, que tem o nome de edt_entrada, nisso preciso pegar o valor que receber e fazer as devidas analise e mostrar no caption de um label!

 

Estou usando case, a primeira condição ( Que é de número) funciona, mas as demais dão erro...Também da um erro quando algum valor entra na condição do "else"

 

procedure Tfrm_principal.btn_caseClick(Sender: TObject);
begin
    case strtoint(edt_entrada.Text) of
      0..9:lbl_entrada.Caption:= 'É um tipo númerico';
      'a'..'z':lbl_entrada.Caption:= 'É um tipo de Letras';
      'A'..'z':lbl_entrada.Caption:= 'É um tipo de Letras';
      '+','-','*','/':lbl_entrada.Caption:= 'É um tipo de Operador';
      else
      lbl_entrada.Caption:= 'É um tipo de simbolo';
end;
end;

end.

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia Lucas..

 

bom eu fiz um mas não usei case..

 

caso seja util.

 

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
  Edit1.Clear;

   if (key in [#65..#90]) or (key in [#97..#122]) then
     Label1.Caption := 'É um tipo de Letras'
   else
     if (key in [#48..#57]) then
       Label1.Caption:= 'É um tipo númerico'
     else
       if (key in [#42, #43, #45, #47]) then
         Label1.Caption:= 'É um tipo de Operador'
       else
         Label1.Caption:= 'É um tipo de simbolo';
end;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, essa sua dúvida já foi respondida neste tópico.

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.