Programa para contar caracteres y palabras*. Act. 20/08/10

Iniciado por Braayhaan, 19 Agosto 2010, 03:05 AM

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

Braayhaan

[D4N93R] No he cachado nada yo la verdad es que no me llevo bien con los strings y estas cosas no logro hacerlo funcionar "por segunda vez" xD

Braayhaan

#11
Me acabo de fijar que Cambiando el Option Strict a Off "lo tenia en On no se porque"

Al usar este codigo de aca me da el resultado cada vez que doy click pero con 1 palabra menos :S

 
Código (vbnet) [Seleccionar]
con = 0

Sigo sin entender mucho estas cosas la verdad xD

--------EDITO--------

ya funciona perfecto! :D

este es el code :P

 
Código (vbnet) [Seleccionar]
   Dim con As Integer = 1
 Dim i As Integer
       Dim Cadena As String
       con = 1
       Cadena = TextBox1.Text
       For i = 1 To Len(Cadena)
           If Mid(Cadena, i, 1) = " " Then
               con = con + 1
           End If
       Next
       Label1.Text = CStr(con)

Braayhaan

Bueno gracias a todos ya pude añadirle el contador de palabras xDD

Hay actualice la imagen y les dejo el Direct Download :P

Keyen Night

Podrías usar el evento TextChanged del textbox para que mientras escribas te cuente las palabras y letras tambien :silbar:
La Fé Mueve Montañas...
                                    ...De Dinero

La programación es más que un trabajo es más que un hobby es una pasión...

Braayhaan

Jajajaja y yo pensaba que yo era muy perfeccionista con algunas cosas xD bueno ya lo pongo :)

43H4FH44H45H4CH49H56H45H

Si hubiese un espacio al final de todo el texto se contaria como una palabra mas.
Hace un tiempo hice algo asi para sacar info de archivos de texto, es similar a lo que comento [D4N93R].

Código (vbnet) [Seleccionar]
Imports System.IO
Public Class Form1
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        Dim palabras As Integer = 0
        Dim letras As Integer = 0
        Dim numeros As Integer = 0

        Dim lineas As String() = File.ReadAllLines("C:\1.txt")
        For Each linea As String In lineas
            For Each palabra As String In linea.Split(" ")
                If (palabra.Length > 0) Then
                    palabras = palabras + 1
                    For Each letra As Char In palabra.ToCharArray()
                        If (Asc(letra.ToString()) > 47 And Asc(letra.ToString()) < 58) Then
                            numeros = numeros + 1
                        ElseIf (Asc(letra.ToString()) > 64 And Asc(letra.ToString()) < 123) Then
                            letras = letras + 1
                        End If
                    Next
                End If
            Next
        Next

        Label1.Text = "Palabras: " & palabras & Microsoft.VisualBasic.vbNewLine & "Letras: " & letras & Microsoft.VisualBasic.vbNewLine & "Numeros: " & numeros

    End Sub
End Class

-R IP
:0100
-A 100 
2826:0100 MOV AH,09
2826:0102 MOV DX,109
2826:0105 INT 21
2826:0105 MOV AH,08
2826:0105 INT 21
2826:0107 INT 20
2826:0109 DB 'MI NICK ES CODELIVE.$' 
2826:0127 
-R BX
:0000
-R CX
:20
-N CODELIVE.COM
-W

raul338

se puede optimizar, hasta se puede hacer facil con expresiones regulares.

Consejo, no uses cstr!!! Usa .toString() !

Codelive, lindo codigo, aun asi apostaria a regexp :xD

seba123neo

La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

Braayhaan

Keyen Night ya le puse el Textchanged y le modifique la interface y le puse tooltip a los botones xDD

Braayhaan