Foros del Web » Programando para Internet » ASPX (.net) »

RUN-RUT-Digito verificador???? en C#

Estas en el tema de RUN-RUT-Digito verificador???? en C# en el foro de ASPX (.net) en Foros del Web. Amigos tengo un problema necesito validar el RUN y tengo esta funcion que me tinca que tiene algo raro, ya que ingreso mi run y ...
  #1 (permalink)  
Antiguo 11/12/2008, 11:00
Avatar de BlueSkull  
Fecha de Ingreso: noviembre-2008
Ubicación: Chile
Mensajes: 504
Antigüedad: 15 años, 5 meses
Puntos: 4
RUN-RUT-Digito verificador???? en C#

Amigos tengo un problema necesito validar el RUN y tengo esta funcion que me tinca que tiene algo raro, ya que ingreso mi run y me lo valida sin problemas, pero ingreso el run 22.222.222-2 ( obiamente sin puntos ni coma )( el rut con el digito en dos textbox distintos ) y me dice que es valido, lo que dudo.

Tengo este codigo, para que me ayuden a ver que es lo que tiene malo o si esta bien:

--------------------------------------------------
En diseño
--------------------------------------------------

Textbox1 para strrut
Textbox2 para strdig
Button1 para llamar a la funcion que valide el run

--------------------------------------------------
Este codigo en el Codebehinde
--------------------------------------------------

private string strrut;
private string strdig;
private int intrut;

protected void Button1_Click(object sender, EventArgs e)
{
Funciones fun = new Funciones();

this.strrut = this.txt_rut.Text;
this.strdig = this.txt_dig.Text;

this.intrut = Convert.ToInt32(this.strrut);

if (this.strdig == fun.digitoVerificador(this.intrut))
{
string rut = this.strrut+this.strdig;
string mensaje = "Rut correcto"+" "+this.intrut+"-"+this.strdig+", "+rut;
this.Label1.Text = mensaje;
}
else
{
string mensaje = "Rut incorrecto";
this.Label1.Text = mensaje;
}
}

--------------------------------------------------
Este codigo en la clase
--------------------------------------------------

public string digitoVerificador(int intrut)
{
Contador = 2;
Acumulador = 0;

while (intrut != 0)
{
Multiplo = (intrut % 10) * Contador;
Acumulador = Acumulador + Multiplo;
intrut = intrut / 10;
Contador = Contador + 1;

if (Contador == 8)
{
Contador = 2;
}
}

Digito = 11 - (Acumulador % 11);
RutDigito = Digito.ToString().Trim();

if (Digito == 10)
{
RutDigito = "k";
}
if (Digito == 11)
{
RutDigito = "0";
}
return (RutDigito);
}


Bueno espero que me ayuden y si le sirve a alguien impekable.
  #2 (permalink)  
Antiguo 24/04/2011, 00:48
Avatar de jopsuey  
Fecha de Ingreso: agosto-2010
Mensajes: 4
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: RUN-RUT-Digito verificador???? en C#

Como lo implementaste???????
que es Funciones fun = new Funciones();
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:17.