Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros temas > La Taberna
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 13-01-2007
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Jugando con los numeros

Bueno, aquí va otro pasatiempo matemático ...

Escoge cuatro dígitos al azar (que no sean los cuatro iguales), y forma con ellos el mayor numero posible y el menor numero posible. Ahora al mayor restale el menor. Con los dígitos del numero resultante de la resta vuelve a repetir la operación.

Por ejemplo:
Código:
Las cifras -> 1,2,3,4
El numero mayor -> 4321
El numero menor -> 1234
La resta -> 4231 - 1234 = 3087

Las cifras -> 3,0,8,7
El numero mayor -> 8730
El numero menor -> 0378
La resta -> 8730 - 0378 = 8352

{Repite la operacion unas cuantas veces, 4 o 5 veces sera sufciente}
Ahora deja que me concentre ........ ya puedo verlo, el resultado es: 6174

































Bien, después de la tontería, la explicación . A la operación anterior se le llama "Operacion de Kaprekar", y para cuatro dígitos el único numero que se mantiene igual después de aplicarle la operación es el 6174, uno de esos números misteriosos. Es mas, si se realiza esta operación el numero suficiente de veces sobre cualquier numero, siempre termina dando como resultado el número misterioso. Si alguien quiere saber el por que, en el enlace anterior lo explican con un sistema de 4 ecuaciones, para el que la única solución entera es el famoso 6174

Pero como siempre digo, delphi vale para cualquier cosa, así que ahí va un poco de código para la demostración empírica:
Código Delphi [-]
function Kaprekar(n: integer): integer;
var
  Str: string;
  i,j: integer;
  c: char;
begin
  Str:= Format('%.4d',[n]);
  for i:= 1 to Length(Str) do
    for j:= Length(Str) downto i + 1 do
      if Str[i] < Str[j] then
      begin
        c:= Str[i];
        Str[i]:= Str[j];
        Str[j]:= c;
      end;
  Result:= StrToInt(Str);
  j:= Length(Str);
  for i:= 1 to Length(Str) div 2 do
  begin
    c:= Str[i];
    Str[i]:= Str[j];
    Str[j]:= c;
    dec(j);
  end;
  Result:= Result - StrToInt(Str);
end;

//Por ejemplo
ShowMessage(IntToStr(Kaprekar(1234)));

Ahora vamos a por la serie:
Código Delphi [-]
function SerieKaprekar(n: integer): string;
var
  i: Integer;
begin
  Result:= EmptyStr;
  if (n > 9999) or (n < 0)  then
    Exit;
  repeat
    Result:= Result + Format('%.4d',[n]) + #13#10;
    i:= n;
    n:= Kaprekar(n);
  until n=i;
end;

// Por ejemplo
ShowMessage(SerieKaprekar(1234));

Podéis hacer pruebas con cualquier número de cuatro cifras (siempre que las cuatro no sean iguales) y vereis que la serie siempre termina en el numero 6174, el numero misterioso

Si, lo se, es una tontada ...
Responder Con Cita
  #2  
Antiguo 13-01-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Cita:
Empezado por Seoane
Si, lo se, es una tontada ...
No, no; es un misterio.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #3  
Antiguo 14-01-2007
Robert01 Robert01 is offline
Miembro
 
Registrado: feb 2006
Ubicación: Córdoba, Argentina
Posts: 895
Poder: 19
Robert01 Va por buen camino
Seoane, una pregunta:

¿en otros sistemas de numeración, hay números que tengan estas propiedades?

Por ejemplo en el sistema hexadecimal

Saludos
Responder Con Cita
  #4  
Antiguo 14-01-2007
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Cita:
Empezado por Robert01
Seoane, una pregunta:

¿en otros sistemas de numeración, hay números que tengan estas propiedades?

Por ejemplo en el sistema hexadecimal

Saludos
Pues no lo se, podríamos preguntarle al señor Kaprekar, que al parecer le gustaba entretenerse buscando números como este
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Los numeros del Pasaporte / DNI seoane Varios 5 31-05-2006 15:06:18
Jugando Al Golf Bicho Humor 0 19-01-2006 11:51:52
Numeros a Letras!! jmedina Varios 26 20-10-2005 20:19:42
Numeros complejos trabuc Varios 2 19-01-2005 14:31:16
¿¿Redondear números?? Magneto Varios 1 04-12-2003 04:58:00


La franja horaria es GMT +2. Ahora son las 00:05:24.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi