Programación General > Visual Basic para principiantes

 Ingresar un numero de 4 cifras

(1/2) > >>

fraj:
hi, weno tengo problemas con los numeros extremos
ejemplo
4512 los numeros extremos son 4y 2 , pero tiene q salir asi 42
Quien me puede ayudar ¡¡¡¡¡
DE antemano muchas gracias
ak mi ejerccio q solo me falta los numeros extremos

ingrese un nuemero de cuatro cifras
deve vizualisar
numero extremos
numeros medios
la suma de los numeros extremos y medios



--- Código: Visual Basic ---Dim nu As Integer, extre As Integer, cent As Integer, cart As Integer, i As Integer, suma As Integer  nu = Val(Txtnu.Text)cart = Len(CStr(nu)) If cart = 4 Then   For i = 1 To 4 Step 3   extre = Left(nu, i)'se supone q ak halla los numeros extremos     Next  cent = Mid(nu, 2, 2)' Ak si halla los numeos medios Else MsgBox (" Solo numeros de 4 cifras ")Txtnu.SetFocus End If suma = cent + extreLblsuma.Caption = sumaLblcent.Caption = centLblexter.Caption = extre  End Sub  :huh:  :huh:

Nebire:
Esto no precisa ninguna ayuda.

Si no sabes resolver esto por tí mismo, dedícate a otra cosa, no importa que digas que eres un novato...

fraj:

--- Cita de: "Nebire" ---Esto no precisa ninguna ayuda.

Si no sabes resolver esto por tí mismo, dedícate a otra cosa, no importa que digas que eres un novato...
--- Fin de la cita ---

 :mellow: gracias por tu ayuda y apoyo
Pues ya lo hice   :P  :P   :D  :D  :D
Mira . Q te parce ?  <_<  <_<

--- Código: Visual Basic ---Private Sub Cmdver_Click()Dim nu As Integer, cent As Integer, cart As Integer, i As Integer, suma As Integer, extre1 As Integer, extre2 As Integer  nu = Val(Txtnu.Text)cart = Len(CStr(nu)) If cart = 4 Then    For i = 1 To 4 Step 3    extre1 = Left(nu, 1)   extre2 = Left(StrReverse(nu), 1)   Next  cent = Mid(nu, 2, 2)Else MsgBox (" Solo numeros de 4 cifras ")Txtnu.SetFocus End If suma = cent + extre1 & extre2Lblsuma.Caption = sumaLblcent.Caption = centLblexter.Caption = extre1 & extre2 

Nebire:
Si uno no sabe muy bien como, lo importante es resolverlo.

Pero cuando algo es muy simple o snecillamente bastante asequible uno debe ver si puede optimizar el código.

Así que te propongo que lo optimices un poquito porque le das muchas vueltas innecesariamente para obtener el primero y el último.
Debes quitar el bucle y el último debes obtenerlo sin utilizar el strreverse. Te doy una pista... si utilizas las función Left (izquierda) la función Mid 'middle' (Medio) no crees que existirá una función más ?, cuál podría ser ?.


Luego la comprobación de 4 caracteres aunque soluciona el caso, dado que procede de la interfaz deberías detectarlo cuando y dónde se introduce siempre que dicho textbox se usa exclusivamente para esta función y no de forma compartida para otros botones.

Txtnu.Text.maxlength= 4
y en el evento validate lo controlas...

Si utilizas el buscador verás que no hace mucho hablamos bastante sobre el evento validate donde hay ejemplos que te ilustran para qué sirve dicho evento y cómo se utiliza. ...

fraj:
:mellow: Tienes mucha razon Nebire,   hice cosas demas  :huh:
asi me kdo mejor  
Q te parece ?  :unsure:  :unsure:

--- Código: Visual Basic ---  Private Sub Txtnu_Validate(Cancel As Boolean)             Txtnu.MaxLength = 4       Txtnu.Text = Format$(Txtnu.Text, "###")          End SubPrivate Sub Cmdver_Click()Dim nu As Integer, extre As Integer, cent As Integer, cart As Integer, i As Integer, suma As Integer, extre1 As Integer, extre2 As Integer, total As Integer  nu = Val(Txtnu.Text)cart = Len(CStr(nu)) If cart = 4 Then   extre1 = Left(nu, 1)   extre2 = Right(nu, 1)   cent = Mid(nu, 2, 2) total = extre1 & extre2End IfLblsuma.Caption = cent + totalLblcent.Caption = centLblexter.Caption = extre1 & extre2 

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa