Autor
|
Tema: decir si un caracter es vocal, consonante, número o signo de puntuación (Leído 15,983 veces)
|
minette1988
Desconectado
Mensajes: 53
|
Hola, tengo que hacer un script que pida por teclado un carácter y determine si es una vocal, consonante, número o signo de puntuación. ¿Podéis echarme una mano?, ando muy perdida con esto de Visual Basic y el jueves tengo examen. Gracias.
|
|
|
En línea
|
|
|
|
Psyke1
Wiki
Desconectado
Mensajes: 1.089
|
Mira este ejemplo que hice: Rem añade un TextBox llamado Text1 y un CommandButton llamado Command1 Private Sub Command1_Click() Call Comprobar_Caracter(Text1.Text) End Sub Private Sub Form_Load() Text1.MaxLength = 1 End Sub Private Sub Comprobar_Caracter(Cadena As String) If Len(Cadena) > 1 Then MsgBox "Solo se puede analizar un caracter", vbCritical, "Error": Exit Sub Dim Vocal As String, Consonante As String, Numero As String Vocal = "aeiou" Consonante = "bcdfghjklmnñpqrstvwxyz" Numero = "1234567890" If Not InStr(1, Vocal, Cadena) = 0 Then MsgBox "El caracter """ & Cadena & """ es una vocal", vbInformation ElseIf Not InStr(1, Consonante, Cadena) = 0 Then MsgBox "El caracter """ & Cadena & """ es una consonante", vbInformation ElseIf Not InStr(1, Numero, Cadena) = 0 Then MsgBox "El caracter """ & Cadena & """ es un número", vbInformation Else MsgBox "El caracter """ & Cadena & """ es un símbolo", vbInformation End If End Sub
Espero haberte ayudado... 
|
|
« Última modificación: 25 Mayo 2010, 02:27 am por *PsYkE1* »
|
En línea
|
|
|
|
Dessa
Desconectado
Mensajes: 624
|
Hola PsYkE1, otra opcion seria Option Explicit
Private Sub Form_DblClick() Me.Cls End Sub
Private Sub Form_Load() Me.AutoRedraw = True StartHook End Sub
Private Sub Form_Unload(Cancel As Integer) StopHook End Sub
Option Explicit
Private Declare Function SetWindowsHookEx Lib "user32.dll" Alias "SetWindowsHookExA" (ByVal idHook As Long, ByVal lpfn As Long, ByVal hmod As Long, ByVal dwThreadId As Long) As Long Private Declare Function UnhookWindowsHookEx Lib "user32.dll" (ByVal hHook As Long) As Long Dim hHook As Long
Public Sub StartHook() hHook = SetWindowsHookEx(13, AddressOf KeyProc, App.hInstance, 0) End Sub Public Sub StopHook() Call UnhookWindowsHookEx(hHook) End Sub Private Function KeyProc(ByVal nCode As Long, ByVal wParam As Long, lParam As Long) As Long
Form1.Caption = lParam If wParam = 257 Then If lParam > 47 And lParam < 58 Then Form1.Print lParam & vbTab & Chr(lParam) & vbTab & "Numero" ElseIf lParam > 64 And lParam < 91 Then If lParam = 65 Or lParam = 69 Or lParam = 73 Or lParam = 79 Or lParam = 85 Then Form1.Print lParam & vbTab & Chr(lParam) & vbTab & "Letra Vocal" Else Form1.Print lParam & vbTab & Chr(lParam) & vbTab & "Letra Consonante" End If Else Form1.Print lParam & vbTab & Chr(lParam) & vbTab & "Ni letra ni numero" End If End If
End Function
|
|
|
En línea
|
Adrian Desanti
|
|
|
|
[L]ord [R]NA
Desconectado
Mensajes: 1.513
El Dictador y Verdugo de H-Sec
|
Le han hecho la tarea al usuario.
|
|
|
En línea
|
|
|
|
Dessa
Desconectado
Mensajes: 624
|
La proxima te pedimos permiso ...
|
|
|
En línea
|
Adrian Desanti
|
|
|
[D4N93R]
Wiki
Desconectado
Mensajes: 1.646
My software never has bugs. Its just features!
|
un hook para una tarea ta simple, se complicaron mucho ..
PD: Si , ya le hicieron la tarea del cole xD
|
|
|
En línea
|
|
|
|
Dessa
Desconectado
Mensajes: 624
|
Hola PsYkE1, otra opcion seria
me dirigia a PsYkE1, ya que se habló de un tema parecido en otro hilo del foro de VB6
|
|
« Última modificación: 24 Mayo 2010, 17:11 pm por Dessa »
|
En línea
|
Adrian Desanti
|
|
|
Psyke1
Wiki
Desconectado
Mensajes: 1.089
|
mmmmm Teneis razon, quizas le hice los deberes...  Aun asi, me sirvio para aprender una cosa nueva...  Salu2!
|
|
|
En línea
|
|
|
|
cobein
|
Me parece que esta manera es mejor para determinar el tipo de caracter puesto que funciona con ê,ñ, etc. Option Explicit
Private Declare Function IsCharAlpha Lib "user32" Alias "IsCharAlphaA" (ByVal cChar As Byte) As Long Private Declare Function IsCharAlphaNumeric Lib "user32" Alias "IsCharAlphaNumericA" (ByVal cChar As Byte) As Long '-1 - Error ' 0 - Symbol ' 1 - Vowel ' 2 - Consonant ' 3 - Number Private Function CharacterKind(ByVal sChar As String) As Long Dim bChar As Byte If Len(sChar) = 1 Then bChar = Asc(UCase(sChar)) If IsCharAlphaNumeric(bChar) Then If IsCharAlpha(bChar) Then Select Case bChar Case 65, 69, 73, 79, 85 CharacterKind = 1 Case Else CharacterKind = 2 End Select Else CharacterKind = 3 End If End If Else CharacterKind = -1 End If End Function
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Leer numero seguido de carácter
Programación C/C++
|
eleon
|
6
|
3,952
|
29 Septiembre 2012, 15:26 pm
por leosansan
|
|
|
Problema al intentar leer un texto y decir el numero de palabras que hay repes..
« 1 2 »
.NET (C#, VB.NET, ASP)
|
z3nth10n
|
18
|
8,254
|
14 Junio 2013, 22:37 pm
por Eleкtro
|
|
|
contar numero de veces que sale la vocal a en una variable (batch)
Scripting
|
alberto3_3
|
4
|
4,575
|
6 Julio 2015, 17:34 pm
por alberto3_3
|
|
|
Programa Vocal Imitation
Ingeniería Inversa
|
4C0T
|
3
|
3,607
|
7 Agosto 2015, 23:39 pm
por MCKSys Argentina
|
|
|
Escriba un programa en c que diga si el dato dado es un numero una letrao signo
Programación C/C++
|
Prepa305001
|
1
|
1,979
|
20 Julio 2019, 23:41 pm
por @XSStringManolo
|
|