Tuesday, July 31, 2012, 06:55 PM - Delphi
aqui vamos calcular el numero de digitos (longitud) de un numero utilizando la unidad "math"
{este programa nos dira de cuantos digitos es un numero q ingresamos}
program Project9;
{$APPTYPE CONSOLE}
uses
SysUtils,
math; //<-----------------------
//IMPORTANTE en uses escribimos "math"
//despues de sysutils y con una coma
//que es como una caja de herramientas
//que contiene todas los operaciones
//matematicas en esta oportunidad utilizaremos
//la funcion logaritmo
var x,aux:integer;
begin
{ TODO -oUser -cConsole Main : Insert code here }
Write('ingrese un numero =');
readln(x);
//cuando aplicamos logaritmo a algun numero siempre nos da como resultado
//un numero entero casi igual al numero de digitos
//ejemplo logaritmo en base 10
// 1=0, 9=0.95, 22=1.3, 555=2.74, 123456789=8.09
//como vemos siempre el numero entero es una unidad menor al numero de digitos
//por lo q usaremos esta particularidad
aux:=trunc(Log10(x));//pero existe un problema a nosotros no nos interesa
//los numero decimales por lo q usaremos otra funcion
// q se llama "trunc" esta funcion se encarga de eliminar
//todos los numero decimales y deja unicamente los enteros
//otra forma inteligente de eliminar los decimales es
//dividiendo entre uno y tomar la parte entera
aux:=aux+1;
//como logaritmo nos da una unidad menor sumamos uno a nuestra variable
write('su numero contiene ');
Write(aux);
writeln(' digitos');
readln;
end.