matrices

Iniciado por legomanticore, 13 Mayo 2012, 00:08 AM

0 Miembros y 1 Visitante están viendo este tema.

legomanticore

perdonen la molestia que les pudiera ocasionar, quisiera ayuda con un tema en especial:

debo crear en visual basic 2010 un programa que mande una matriz almacenada en notepad hacia un richtextbox y que me de aparte las posiciones de los elementos de la matriz, para despues realizar una suma transversal con los elementos de dicha matriz en el note pad aqui dejo el codigo que tengo hasta ahorita, cabe mencionar que debe darme las medidas de la matriz (algo que mas o menos ya tengo)
Código (vbnet) [Seleccionar]

Public Class Form1
   Private Sub cargar_Click(sender As System.Object, e As System.EventArgs) Handles cargar.Click
       datos2.LoadFile("C:\\Users\\Elio\\Desktop\\algodon.txt", RichTextBoxStreamType.PlainText)
   End Sub
   Private Sub cargaraka_Click(sender As System.Object, e As System.EventArgs) Handles cargaraka.Click
       datosabajo.Text = datos2.Text
   End Sub

   Private Function contar(ByVal registro As String) As Integer
       Dim coma As Integer
       Dim x As Integer
       For y = 0 To registro.Length - 1
           If registro.Chars(x) = "," Then
               coma = coma + 1
           End If
       Next
       Return coma + 1
   End Function


   Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles lines.Click
       TextBox1.Text = datos2.Lines.Count.ToString
       lineas.Text = datos2.Lines(1)
       Label1.Text = lineas.TextLength
       'TextBox1.Text = Label1.Text & " " & "X" & " " & datos2.Lines.Count
       TextBox1.Text = datos2.Lines.Count

   End Sub

   Private Sub Button1_Click_1(sender As System.Object, e As System.EventArgs) Handles Button1.Click
       Dim x As Integer
       Dim y As Integer
       Dim cucho(x, y) As Integer
       Dim columnas As Integer
       Dim filas As Integer
       columnas = Val(Label1.Text)
       filas = Val(TextBox1.Text)
       x = 0
       y = 0

       For y = 0 To columnas Step 1

           For x = 0 To filas Step 1
               cucho(x, y) = datos2.Lines(y).Substring(3, 3)


           Next

       Next



   End Sub

End Class


Porfavor necesito mucha ayuda soy nuevo en esto y se me olvida estoy haciendolo en visual basic 2010 :(

$Edu$

Que alguien mueva esto a .Net que es vb.net.

Cuando dejes un codigo podrias ponerlo entre las etiquetas de codigo asi queda coloreado y se lee mas facil.

Y siempre deja datos de lo que queres hacer bien, en este caso por ejemplo podrias dejar como esta esa matriz en el notepad y dar un ejemplo de como queres que se guarde y como hacer la operacion. Digo porque cuanta mas informacion mas usuarios te podran ayudar, yo por ejemplo por ahora solo te puedo decir:

Cuando pones esto:

Código (vb) [Seleccionar]
datos2.LoadFile("C:\\Users\\Elio\\Desktop\\algodon.txt", RichTextBoxStreamType.PlainText)

No necesitas poner doble "\", sino que lo haces asi, poniendole un arroba:

Código (vb) [Seleccionar]
datos2.LoadFile(@"C:\Users\Elio\Desktop\algodon.txt", RichTextBoxStreamType.PlainText)

Si no me he olvidado mucho es asi, pero pruebalo o busca sobre que hace @ que es "anular" los nombres reservados, y poder usarlos.

Despues en tus bucles For, ese Step 1, le indica que avance de a 1, cosa que lo hace por default, asi que no lo pongas, eso lo haces cuando queres q aumente de otra cosa que no sea 1.

reagea

buen concejo yo lo hago no un motorora telefono conectado a usb
Rea
Aprende las reglas para que sepas romperlas cuando conviene...la inmortalidad del conocimiento...

legomanticore

#3
Cita de: $Edu$ en 13 Mayo 2012, 00:27 AM

ia perdona soy nuevo en los foros realmente todo lo saco de la mente o videos tutoriales de youtube, ehm en si lo que me pide es que una matriz en un notepad (la matriz tiene q tener los valores que el usuario quiera poner en el notepad osea es dinamica), el boton jala la matriz hacia el richtextbox(esto para que veas los datos que tiene el notepad) y pues el siguiente paso es encontrar la forma en que esos datos que estan en el richtextbox ehm pues me los almacene en una matriz automaticamente para por medio de un boton extra hacer las sumas transversales, es decir ala matriz del notepad debe darsele una posicion por cada caracter q contiene ... (creo que estoy enredando mas las cosas u.u,no se como explicar)....

ejemplo:

tengo estos valores en el notepad (sin comas)

1,3,7
3,4,5
9,4,1  

y quiero que a cada valor de la matriz que muestra en el notepad se le asigne una posicion para poder hacer una suma transversal

1+4+1 +9+4+7    (es algo asi)

$Edu$

Asi que te dan un documento .txt con un valor por ejemplo asi:

[code]
137
345
941



Guardar cada numero de esos en una matriz[][] de la forma que:

matriz[0][0] = 1
matriz[0][1] = 3
matriz[0][2] = 9
matriz[1][0] = 3
matriz[1][1] = 4
matriz[1][2] = 5
matriz[2][0] = 9
matriz[2][1] = 4
matriz[2][2] = 1

Y lo guardas en un Richtextbox de esta forma:


1  3  7
3  4  5
9  4  1


Para que quede mejor visto y mas ordenado.

Luego hacer las siguientes sumas:

1 + 4 + 1 = 6
7 + 4 + 9 = 20

Pero si la matriz que ingresa el usuario es de 3x5 ponele, ya no queda un cuadrado como para hacer las sumas de las "diagonales".

El problema es ese, que yo no he aprendido lo que estas aprendiendo ahora en la universidad o donde estes, por eso te digo que des ejemplos porque algunos no sabemos algunas cosas pero si programar, si vs me decis ahora que tipo de tamaños tendra las matrices que ponga y como es bien lo de las sumas, te puedo ayudar, sino vendra otro y dira como es.

Asi que explicame eso y decime si esta bien lo que he dicho hasta ahora y te recomiendo empezar a organizarte de nuevo desde cero porque en tu codigo tienes cosas que no usas y si arrancas de cero podras aplicar lo que te dije en el otro post anterior. Saludos[/code]