Ir a contenido


Bienvenido a MadBoxpc.com - Geeks por Defecto!


Ingresar  Iniciar con Facebook Iniciar con Twitter

Registrar
Como en la mayoría de las comunidades en línea, necesitas registrarte para poder participar, crear temas, hacer amigos, concursar, ver menos publicidad, etc.. No te preocupes el registro es rápido, fácil y gratis. Incluso te puedes registrar con tus cuentas de Twitter y Facebook.
 
Regístrate en MadBoxpc.com y podrás:
  • Crear nuevos temas y contestar otros.
  • Suscribirte por correo a los temas que quieras. 
  • Obtén tu propio perfil, compartir y hacer amigos. 
  • Participar en todos nuestros concursos y ganar excelentes premios. 
  • Aprender y Enseñar sobre lo último en tecnología.
  • Enviar Mensajes privados. 
MadBoxpc.com es una de las comunidades de tecnología más grandes de habla Hispana y una de las más reconocidas en Latino América. ¡Regístrate!
 
 
Guest Message by DevFuse

Foto
- - - - -

Rutina para validar RUT en en diferentes lenguajes de prog.


  • Please log in to reply
7 respuestas a este tema

#1 Jose Ossa

Jose Ossa

    Gurú

  • Usuario
  • 630 Mensajes:
  • Sexo:Masculino

Escrito 24 marzo 2010 - 12:12

Si alguien alguna vez ha necesitado validar los rut en una planilla excel les adjunto un macro que programé hace algunos años.

Procedimiento:
- Abrir el editor de visual basic dentro del excel (ALT+F11)
- Insertar -> modulo
- Pegan el siguiente codigo.

Public Function dvrut(rut)
' Por Jose Ossa Monge 2006'
 rut = Replace("0000" & rut, ".", "", 1) 
 If InStr(1, rut, "-") > 0 Then rut = Left(rut, InStr(1, rut, "-") - 1) 
 rut = Right(rut, 8) 
 suma = 0 
 For i = 1 To 8 
 suma = suma + Val(Mid(rut, i, 1)) * Val(Mid("32765432", i, 1)) 
 Next i 
 dv = 11 - (suma Mod 11) 
 If dv = 10 Then dv = "k" 
 If dv = 11 Then dv = 0 
 dvrut = dv 
 End Function

Despues, cuando estan en la hoja ingresan un rut sin dv en una celda (por ejemplo A1) y en la celda A2 escriben =dvrut(A1) y les devolerá el digito verificador de ese rut.

Este tema ha sido editado por Jose Ossa: 24 marzo 2010 - 12:13

  • 12

Comente en Facebook

#2 Sago7

Sago7

    Mr.Foro

  • Staff en Retiro
  • 6.778 Mensajes:
  • Sexo:Masculino
  • Ubicación:Phobos

Escrito 24 marzo 2010 - 12:20

Buen aporte, te ganaste un puntito de karma...
  • 0
Imagen enviada






Imagen enviada


#3 Sago7

Sago7

    Mr.Foro

  • Staff en Retiro
  • 6.778 Mensajes:
  • Sexo:Masculino
  • Ubicación:Phobos

Escrito 24 marzo 2010 - 12:22

Encontre por ahi una pagina donde aparece la rutina para validar rut en diferentes lenguajes.


Les dejo el link.

Validad RUT
  • 3
Imagen enviada






Imagen enviada


#4 Gespenstt

Gespenstt

    ZzzZZZz!

  • Staff en Retiro
  • 3.640 Mensajes:
  • Nombre Real:Jaime Vásquez
  • Sexo:Masculino
  • Ubicación:Santiasko Urbano
  • Intereses:Pc's y MusicA!!!!!!
    Y mi novia hermosa (Nat)

Escrito 25 marzo 2010 - 01:31

Ercelente :) +1
  • 0

Imagen enviada


#5 Gespenstt

Gespenstt

    ZzzZZZz!

  • Staff en Retiro
  • 3.640 Mensajes:
  • Nombre Real:Jaime Vásquez
  • Sexo:Masculino
  • Ubicación:Santiasko Urbano
  • Intereses:Pc's y MusicA!!!!!!
    Y mi novia hermosa (Nat)

Escrito 25 marzo 2010 - 01:31

+1 :headbang:
  • 0

Imagen enviada


#6 Avatar242

Avatar242

    Iniciado

  • Usuario
  • 5 Mensajes:

Escrito 07 julio 2010 - 01:39

Espero que este tb les sea util....

http://www.dcc.uchil....cl/validarrut/


saludos!
  • 0

#7 k4nnon.

k4nnon.

    Mr.Foro

  • MadBoxOC Team
  • 7.786 Mensajes:
  • Nombre Real:Gonzalo
  • Sexo:Masculino
  • Ubicación:desde mi pc
  • Intereses:TODO MENOS REGGETON

Escrito 11 enero 2012 - 07:03

#include<stdio.h>
#include <stdlib.h>
#include <math.h>
main(){
	double aux,rut,num;
int z,k,s;
int n,t,ok;
int v[7];
int f[8];
char dv;

					  
	
	printf("\nIngrese el RUT : ");
	scanf("%lf", &rut);
	printf("\nIngrese su digito validador : ");
	scanf("%s", &dv);
  
  
	aux = rut;
	n = int(log10(rut))+1;
  
	for(z=n-1;z>0;z--){
if (z>0) {v[z]=int(aux/pow(10,z));aux = aux - v[z]*pow(10,z);}
}
num=0;
	for(z=n-1;z>0;z--){
num =  num + v[z]*pow(10,z);
}
	v[0]=rut-num;
  
	s = 0;
  
	for(z=0;z<6;z++){
	f[z]=z+2;
	}				
	for(z=6;z<8;z++){
	f[z]=z-4;
	}  
  
	for(z=0;z<n;z++){
	s = s + v[z]*f[z];
	}
		
	k = s-11*int(s/11);
	t=11-k;
  
  
	ok = 0;
	if((t==10)&&(dv=='k')) {ok=1;}
	if((t==11)&&(dv=='0')) {ok=1;}
	if((t<10)&&(dv-48==t)) {ok=1;}
  

	if (ok==1) {printf("\n El rut es correcto\n");}
	else {printf("\n El rut es falso\n");}

	
system("pause");
}

aca otro programa hecho por mi. la gracia del programa es que no usa getchar y ademas usa codigo ascii para validar el k. estan en c

saludos.
  • 1

Imagen enviada


#8 SebaGonzalez

SebaGonzalez

    Mr.Foro

  • Moderador
  • 1.959 Mensajes:
  • Nombre Real:Sebastian Gonzalez Leon
  • Sexo:Masculino
  • Ubicación:Santiago de Chile
  • Intereses:Todo.

Escrito 13 enero 2012 - 02:02

:o tienes razon... pero esta es super clonada ps :/ en todos lados siempre encuentras validadores de rut :)
  • 0




0 usuario(s) están leyendo este tema

0 miembros, 0 invitados