elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Descifrar operaciones en resultados correlativos
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Descifrar operaciones en resultados correlativos  (Leído 3,616 veces)
luis456


Desconectado Desconectado

Mensajes: 525



Ver Perfil
Descifrar operaciones en resultados correlativos
« en: 4 Octubre 2014, 20:55 »

Descifrar operaciones en resultados correlativos, ( hoy sabado jej a programar)

la idea es saber como se llega de un numero inicial al segundo numero y como desde el segundo numero al tercero
y asi susecivamente con toda la muestra en el txt


estos numeros estan en un txt.el procedimiento que hago es, tomo el primer numero y lo comparo con el segundo  para
saber que operaciones matematicas hay entre numero y numero.a mano se hacerlo pero npi para hacerlo en net





ejemplo :

  01   07   08   20  23  39 <---numero inicial en el txt (pueden ser miles)

+ 18 + 15 + 19 + 9 + 10 + 7 <------- operaciones para llegar al segundo numero

  19   22   27   29   33  46 <---segundo numero


- 18 - 18 - 16 - 12 - 11 -15 <--operaciones para llegar al tercer numero

  01   04   11   17   22  31 <- tercer numero


En otro txt mostrar:

solo las operaciones encontradas

ejemplo

+ 18 + 15 + 19 + 9 + 10 + 7
- 18 - 18 - 16 - 12 - 11 -15


saludos
Luis


En línea

Que tu sabiduria no sea motivo de Humillacion para los demas
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.709



Ver Perfil
Re: Descifrar operaciones en resultados correlativos
« Respuesta #1 en: 5 Octubre 2014, 09:58 »

Solo tienes que obtener la diferencia, no se que tipo de complicación le encuentras para realizar lo mismo en un código.

Prueba así:

Código
  1. Public Class Form1
  2.  
  3.    Private Shadows Sub Load() Handles MyBase.Load
  4.  
  5.        Dim sb As New System.Text.StringBuilder
  6.        Dim Values As New List(Of Integer()) From
  7.            {
  8.                ({1I, 19, 1I}),
  9.                ({7I, 22, 4I}),
  10.                ({8I, 27, 11}),
  11.                ({20, 29, 17}),
  12.                ({23, 33, 22}),
  13.                ({39, 46, 31})
  14.            }
  15.  
  16.        For Each ValueCol() As Integer In Values
  17.  
  18.            Dim Value1 As Integer = ValueCol(0)
  19.            Dim Value2 As Integer = ValueCol(1)
  20.            Dim Value3 As Integer = ValueCol(2)
  21.            Dim Diff1 As String = GetDifferenceExpression(Value1, Value2)
  22.            Dim Diff2 As String = GetDifferenceExpression(Value2, Value3)
  23.  
  24.            sb.AppendLine(String.Format("{0} -> {1} = {2}",
  25.                          Value1.ToString("00"), Value2.ToString("00"), Diff1))
  26.  
  27.            sb.AppendLine(String.Format("{0} -> {1} = {2}",
  28.                          Value2.ToString("00"), Value3.ToString("00"), Diff2))
  29.  
  30.            sb.AppendLine()
  31.  
  32.        Next ValueCol
  33.  
  34.        MessageBox.Show(sb.ToString)
  35.  
  36.        Application.Exit()
  37.  
  38.    End Sub
  39.  
  40.    ' Get Difference expression
  41.    ' ( By Elektro )
  42.    '
  43.    ' Usage Examples:
  44.    ' MessageBox.Show(GetDifferenceExpression(5, 10))
  45.    '
  46.    ''' <summary>
  47.    ''' Gets the arithmetic sum/rest difference expression between two values.
  48.    ''' </summary>
  49.    ''' <param name="Value1">The first value.</param>
  50.    ''' <param name="Value2">The second value.</param>
  51.    ''' <returns>The arithmetic expression.</returns>
  52.    Friend Function GetDifferenceExpression(ByVal Value1 As Long, ByVal Value2 As Long) As String
  53.  
  54.        Select Case Value2
  55.  
  56.            Case Is > Value1 ' Value2 is bigger than Value1.
  57.                Return String.Format("+{0}", CStr(Value2 - Value1))
  58.  
  59.            Case Is < Value1 ' Value2 is lower than Value1.
  60.                Return String.Format("-{0}", CStr(Value1 - Value2))
  61.  
  62.            Case Else ' Value2 is equals to Value1.
  63.                Return "0"
  64.  
  65.        End Select
  66.  
  67.    End Function
  68.  
  69. End Class





Saludos.


« Última modificación: 5 Octubre 2014, 10:14 por Eleкtro » En línea


luis456


Desconectado Desconectado

Mensajes: 525



Ver Perfil
Re: Descifrar operaciones en resultados correlativos
« Respuesta #2 en: 5 Octubre 2014, 17:49 »

Bueno no se que ha pasado que no entraba el foro,me imagino que una caida de servidor :)

Gracias elektro lo revizo :)


Luis
En línea

Que tu sabiduria no sea motivo de Humillacion para los demas
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.709



Ver Perfil
Re: Descifrar operaciones en resultados correlativos
« Respuesta #3 en: 5 Octubre 2014, 19:33 »

Bueno no se que ha pasado que no entraba el foro,me imagino que una caida de servidor :)

Gracias elektro lo revizo :)


Luis

Dímelo a mi, a los 10 minutos de leer tu pregunta (ayer sabado por la noche) ya habia escrito el ejemplo de arriba para ti y te lo quería mostrar para que tuvieras algo con lo que programar 'por que era sábado' como dijiste ;), pero hasta hoy por la mañana no pude postear el code xD.

PD: Todo es por culpa de un individuo o una panda de Juanckers que se dedican a Ddosear el foro, pero bueno, en este mundo debemos aprender a convivir con gente (y gentuza) de todo tipo.

Saludos!
En línea


luis456


Desconectado Desconectado

Mensajes: 525



Ver Perfil
Re: Descifrar operaciones en resultados correlativos
« Respuesta #4 en: 6 Octubre 2014, 06:12 »

Solo tienes que obtener la diferencia, no se que tipo de complicación le encuentras para realizar lo mismo en un código.

Prueba así:

Código
  1. Public Class Form1
  2.  
  3.    Private Shadows Sub Load() Handles MyBase.Load
  4.  
  5.        Dim sb As New System.Text.StringBuilder
  6.        Dim Values As New List(Of Integer()) From
  7.            {
  8.                ({1I, 19, 1I}),
  9.                ({7I, 22, 4I}),
  10.                ({8I, 27, 11}),
  11.                ({20, 29, 17}),
  12.                ({23, 33, 22}),
  13.                ({39, 46, 31})
  14.            }
  15.  
  16.        For Each ValueCol() As Integer In Values
  17.  
  18.            Dim Value1 As Integer = ValueCol(0)
  19.            Dim Value2 As Integer = ValueCol(1)
  20.            Dim Value3 As Integer = ValueCol(2)
  21.            Dim Diff1 As String = GetDifferenceExpression(Value1, Value2)
  22.            Dim Diff2 As String = GetDifferenceExpression(Value2, Value3)
  23.  
  24.            sb.AppendLine(String.Format("{0} -> {1} = {2}",
  25.                          Value1.ToString("00"), Value2.ToString("00"), Diff1))
  26.  
  27.            sb.AppendLine(String.Format("{0} -> {1} = {2}",
  28.                          Value2.ToString("00"), Value3.ToString("00"), Diff2))
  29.  
  30.            sb.AppendLine()
  31.  
  32.        Next ValueCol
  33.  
  34.        MessageBox.Show(sb.ToString)
  35.  
  36.        Application.Exit()
  37.  
  38.    End Sub
  39.  
  40.    ' Get Difference expression
  41.    ' ( By Elektro )
  42.    '
  43.    ' Usage Examples:
  44.    ' MessageBox.Show(GetDifferenceExpression(5, 10))
  45.    '
  46.    ''' <summary>
  47.    ''' Gets the arithmetic sum/rest difference expression between two values.
  48.    ''' </summary>
  49.    ''' <param name="Value1">The first value.</param>
  50.    ''' <param name="Value2">The second value.</param>
  51.    ''' <returns>The arithmetic expression.</returns>
  52.    Friend Function GetDifferenceExpression(ByVal Value1 As Long, ByVal Value2 As Long) As String
  53.  
  54.        Select Case Value2
  55.  
  56.            Case Is > Value1 ' Value2 is bigger than Value1.
  57.                Return String.Format("+{0}", CStr(Value2 - Value1))
  58.  
  59.            Case Is < Value1 ' Value2 is lower than Value1.
  60.                Return String.Format("-{0}", CStr(Value1 - Value2))
  61.  
  62.            Case Else ' Value2 is equals to Value1.
  63.                Return "0"
  64.  
  65.        End Select
  66.  
  67.    End Function
  68.  
  69. End Class





Saludos.



En si el código hace lo que quería exactamente ,pero como no puedo meter miles de números a mano  :)  ¿ como y por donde empiezo a romperme el coco para que pueda hacerlo desde un txt que tenga ya estos números  ? estos números pueden de de cuatro números ( 10 20 30 80 )  hasta 10 números ( 01 05 06 20 25 40 50 55 60 90 ) por ejemplo y que devuelva los resultados  ademas de pantalla en otro txt ?


Luis



En línea

Que tu sabiduria no sea motivo de Humillacion para los demas
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.709



Ver Perfil
Re: Descifrar operaciones en resultados correlativos
« Respuesta #5 en: 6 Octubre 2014, 15:32 »

¿ como y por donde empiezo a romperme el coco para que pueda hacerlo desde un txt que tenga ya estos números  ?

-> File.ReadAllLines(String)

estos números pueden de de cuatro números ( 10 20 30 80 )  hasta 10 números ( 01 05 06 20 25 40 50 55 60 90 ) por ejemplo

-> For Each...Next
+
-> String().Count
+
GetDifferenceExpression(Long, Long) by Elektro

Saludos!
« Última modificación: 6 Octubre 2014, 17:29 por Eleкtro » En línea


luis456


Desconectado Desconectado

Mensajes: 525



Ver Perfil
Re: Descifrar operaciones en resultados correlativos
« Respuesta #6 en: 7 Octubre 2014, 13:42 »

:) Bueno en el poquito rato he modificado para crear el archivo pero no se que hago mal .ya que me da error de ruta y la he cambiado varias veces ?? y voy a pie jeje

 
Código
  1. Public Class Form1
  2.  
  3.    Private Shadows Sub Load() Handles MyBase.Load
  4.  
  5.        Dim sb As New System.Text.StringBuilder
  6.        Dim Values As New List(Of Integer()) From
  7.            {
  8.                ({1I, 20, 1I}),
  9.                ({7I, 22, 4I}),
  10.                ({8I, 27, 11}),
  11.                ({20, 29, 17}),
  12.                ({23, 33, 22}),
  13.                ({39, 46, 31})
  14.            }
  15.  
  16.        For Each ValueCol() As Integer In Values
  17.  
  18.            Dim Value1 As Integer = ValueCol(0)
  19.            Dim Value2 As Integer = ValueCol(1)
  20.            Dim Value3 As Integer = ValueCol(2)
  21.            Dim Diff1 As String = GetDifferenceExpression(Value1, Value2)
  22.            Dim Diff2 As String = GetDifferenceExpression(Value2, Value3)
  23.  
  24.            sb.AppendLine(String.Format("{0} -> {1} = {2}",
  25.                          Value1.ToString("00"), Value2.ToString("00"), Diff1))
  26.  
  27.            sb.AppendLine(String.Format("{0} -> {1} = {2}",
  28.                          Value2.ToString("00"), Value3.ToString("00"), Diff2))
  29.  
  30.            sb.AppendLine()
  31.  
  32.        Next ValueCol
  33.  
  34.        MessageBox.Show(sb.ToString)
  35.  
  36.        Application.Exit()
  37.  
  38.  
  39.    End Sub
  40.  
  41.    Private Sub Form1_Load(ByVal sender As System.Object, _
  42.                       ByVal e As System.EventArgs) Handles MyBase.Load
  43.        Try
  44.            Dim Archivo As System.IO.FileStream
  45.            ' crea un archivo vacio prueba.txt  
  46.            Archivo = System.IO.File.Create("c:Documentos\Prueba.txt")
  47.            ' error  
  48.        Catch oe As Exception
  49.            MsgBox(oe.Message, MsgBoxStyle.Critical)
  50.        End Try
  51.    End Sub
  52.  
  53.    ' Get Difference expression
  54.    ' ( By Elektro )
  55.    '
  56.    ' Usage Examples:
  57.    ' MessageBox.Show(GetDifferenceExpression(5, 10))
  58.    '
  59.    ''' <summary>
  60.    ''' Gets the arithmetic sum/rest difference expression between two values.
  61.    ''' </summary>
  62.    ''' <param name="Value1">The first value.</param>
  63.    ''' <param name="Value2">The second value.</param>
  64.    ''' <returns>The arithmetic expression.</returns>
  65.    Friend Function GetDifferenceExpression(ByVal Value1 As Long, ByVal Value2 As Long) As String
  66.  
  67.        Select Case Value2
  68.  
  69.            Case Is > Value1 ' Value2 is bigger than Value1.
  70.                Return String.Format("+{0}", CStr(Value2 - Value1))
  71.  
  72.            Case Is < Value1 ' Value2 is lower than Value1.
  73.                Return String.Format("-{0}", CStr(Value1 - Value2))
  74.  
  75.            Case Else ' Value2 is equals to Value1.
  76.                Return "0"
  77.  
  78.        End Select
  79.  
  80.    End Function
  81.  
  82. End Class
  83.  



ya que en programacion no da error solo una pantalla que dice " no se puede encontrar parte de la ruta ) lo que me estraña es que dice " PARTE " no lo habia visto antes :)

luis

« Última modificación: 7 Octubre 2014, 13:45 por luis456 » En línea

Que tu sabiduria no sea motivo de Humillacion para los demas
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.709



Ver Perfil
Re: Descifrar operaciones en resultados correlativos
« Respuesta #7 en: 7 Octubre 2014, 18:34 »

me da error de ruta

 
Código
  1.    Private Sub Form1_Load(ByVal sender As System.Object, _
  2.                       ByVal e As System.EventArgs) Handles MyBase.Load
  3.        Try
  4.            Dim Archivo As System.IO.FileStream
  5.            ' crea un archivo vacio prueba.txt  
  6.            Archivo = System.IO.File.Create("c:Documentos\Prueba.txt")
  7.            ' error  
  8.        Catch oe As Exception
  9.            MsgBox(oe.Message, MsgBoxStyle.Critical)
  10.        End Try
  11.    End Sub
  12.  

Estoy harto de repetir que porfavor cuando tengas una excepción muestres el mensaje de error tal y como es.

Te faltó por añadir un backslash en la ruta, después de la letra del dispositivo:
c:\Documentos\Prueba.txt

Además, ten en cuenta que si el directorio no existe, primero deberás crearlo.

Saludos!
« Última modificación: 7 Octubre 2014, 18:36 por Eleкtro » En línea


luis456


Desconectado Desconectado

Mensajes: 525



Ver Perfil
Re: Descifrar operaciones en resultados correlativos
« Respuesta #8 en: 7 Octubre 2014, 19:48 »

????


c:\Prueba.txt

Excepción del tipo 'System.IO.DirectoryNotFoundException' en mscorlib.dll
En línea

Que tu sabiduria no sea motivo de Humillacion para los demas
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.709



Ver Perfil
Re: Descifrar operaciones en resultados correlativos
« Respuesta #9 en: 7 Octubre 2014, 20:04 »

Eso si que es raro xD

Quizás estás intentando procesar la ruta como directorio, y no como archivo, porque de otra forma es ilógico que te de ese error. Muestra el código donde te salta esa excepción :-/
En línea


Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Como selecciono mas de un dia(NO correlativos) en un MonthView
Programación Visual Basic
ReViJa 6 5,330 Último mensaje 4 Marzo 2014, 15:33
por FranciskoAsdf
2 operaciones con el boton X
Programación Visual Basic
fraktal 4 771 Último mensaje 14 Octubre 2006, 01:28
por NYlOn
Operaciones con
.NET (C#, VB.NET, ASP)
David Vans 0 1,602 Último mensaje 25 Abril 2007, 18:06
por David Vans
Descifrar método de codificación por los resultados?
Criptografía
Exp0 4 3,472 Último mensaje 23 Septiembre 2010, 13:24
por APOKLIPTICO
Caracteres correlativos
Programación C/C++
elaberinto 1 834 Último mensaje 29 Marzo 2015, 13:30
por engel lex
Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines