Una pregunta, de donde se puede sacar el logo (aparte de la pagina principal)? 
xD, no se si participar, se photoshop, pero no soy muuuy creativo xD

xD, no se si participar, se photoshop, pero no soy muuuy creativo xD
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes MenúCita de: KarlosVid(ÊÇ) en 5 Agosto 2009, 20:52 PM
Ok Azielito, esta bien, pero que opinan del trabajo que hice. Lo hice bien o le falta algo.
Entonces preparare uno para setiembre.
Saludos...
Timer1.Enabled = True
Timer1.Start()
Webrowser1.Refresh()
Imports System.Text.RegularExpressions
Module Module1
Sub Main()
Dim opcion As String = ""
Console.WriteLine("Ingrese una operacion combinada o 'end' para salir")
Do
opcion = Console.ReadLine()
If opcion = "end" Then Exit Do
Try
Console.WriteLine("Resultado: " & Eval(opcion).ToString("N"))
Catch ex As Exception
Console.ForegroundColor = ConsoleColor.White
Console.WriteLine("Error: " & ex.Message)
Console.ForegroundColor = ConsoleColor.Gray
End Try
Loop
End Sub
Public Function Eval(ByVal operacion As String) As Double
Dim resp As Double = 0D
Dim temp As Double = 0D
operacion = operacion.Replace(" ", "")
operacion = operacion.Replace(".", ",")
Dim RegexObj As New Regex( _
"(?<Termino>[+\-]? (?: \d [\d,*/]* | \( [\d,+\-*/]* \) (?: [*/] \d | [*/] \( [\d,+\-*/]* \) )* ) )", _
RegexOptions.IgnorePatternWhitespace)
If RegexObj.IsMatch(operacion) Then
Dim MatchResults As MatchCollection = RegexObj.Matches(operacion)
Dim MatchResult As Match = MatchResults(0)
Dim termino As String
For i As Int32 = 0 To MatchResults.Count - 1
termino = MatchResult.Groups("Termino").Value
If IsNumeric(termino) Then
temp = Double.Parse(termino)
Else
' No podemos pasarle +(5+5)*2 porque lo tomaria como termino y entraria en un bucle infinito
' asi que le extraemos el signo, por defecto le ponemos como positivo y despues le volvemos al
' signo que debe tener
Dim signo As Integer = 1
If termino.Substring(0, 1) = "-" Then
signo = -1
termino = termino.Substring(1)
ElseIf termino.Substring(0, 1) = "+" Then
signo = 1
termino = termino.Substring(1)
End If
temp = ResolverTermino(termino)
temp *= signo ' Multiplicamos por -1 para cambiar el signo, por 1 para mantenerlo igual
End If
resp += temp
MatchResult = MatchResult.NextMatch()
Next
Return resp
Else
Throw New Exception("La operacion no pudo ser reconocida")
End If
End Function
Function ResolverTermino(ByVal Termino As String) As Double
Dim resp As Double = 0D
Dim temp As Double = 0D
Dim RegexObj As New Regex("(?<Termino> [\+\-]?\( .* \) | [\*\/] \d*\,?\d* | [\+\-]? \d*\,?\d* )", RegexOptions.IgnorePatternWhitespace)
If RegexObj.IsMatch(Termino) Then
Dim MatchResults As MatchCollection = RegexObj.Matches(Termino)
Dim MatchResult As Match = MatchResults(0)
Dim subTermino As String
For I As Int32 = 0 To MatchResults.Count - 2
subTermino = MatchResult.Groups("Termino").Value
If IsNumeric(subTermino) Then
resp = Double.Parse(subTermino)
Else
Select Case subTermino.Substring(0, 1)
Case "*"
temp = Double.Parse(subTermino.Substring(1))
resp *= temp
Case "/"
temp = Double.Parse(subTermino.Substring(1))
resp /= temp
Case Else
resp = Eval(Regex.Match(subTermino, "\((?<Operacion>.*)\)").Groups("Operacion").Value)
End Select
End If
MatchResult = MatchResult.NextMatch
Next
Return resp
Else
Throw New Exception("Parte de la operacion no pudo ser reconocida")
End If
End Function
End Module
InfoClienteActual = Clientes(IDReal)
With InfoClienteActual
....
End with
With Clientes(IDReal)
....
End with