Foro de elhacker.net

Programación => Programación General => Mensaje iniciado por: ¡Micronet! en 10 Febrero 2011, 19:24 pm



Título: Cientifica A Flotante Pascal
Publicado por: ¡Micronet! en 10 Febrero 2011, 19:24 pm
Disculpen tengo un problema mas :S

en una cadena yo tengo 4e^5

el numero puede cambiar el del 5 en este caso...

lo que yo quiero es arrojar el resultado de esta manera 4x10^5 pero no quiero escribirlo... si no que quiero que el mismo pascal me lo lea como ese tipo de funcion como le podria a hacer :(....y que elevado a la 5. se pueda cambiar... y que siga aceptandolo :S y me regrese el resultado en flotante.


Código
  1. function CientoFloat(s:string): real;
  2. var
  3. v: real;
  4. i: integer;
  5. d: integer;
  6. Numero: integer;
  7. Num1: integer;
  8. c: integer;
  9. Extra: integer;
  10. begin
  11.       v:=0;  d:=0;  c:=1;  Extra:=0;
  12.       while length(s) in ['0'..'9'] and c<2 do
  13.       begin
  14.            for i:=1 to length (s) do
  15.            begin
  16.                 if s[i] in ['0'..'9'] then
  17.                    d:= ord(s[i])-48;
  18.  
  19.            end;
  20.            Num1:=d;
  21.            v:=exp( Num1 * ln( Extra ) );
  22.            c:=c+1;
  23.            Extra:=Num1;
  24.       end;
  25.        CientoFloat := v;
  26. end;

Saludos he creado esta funcion para eso intentando dividir... mi cadena para poder identificar el numero de la izquierda en mi ejemplo el 4.... y luego dividirlo y usar el numero de la derecha en mi caso el 5...
pero no me sale correctamente... :/
alguien podria ayudarme :/ ¿?