SoloCodigo
Programación General => Pascal => Mensaje iniciado por: michael en Sábado 22 de Marzo de 2003, 00:21
-
hola necesi to urgente el codigo para calcular la parte entera de un numero real positivo o negativo. en pascal
muchas gracias.
-
si no necesitas almacenar el valor te puede servir esto:
a:real;
a:=3.1415;
writeln(a:0:0);
Mostrara solo en pantalla "3"
-
Tambien puedes hacer lo siguiente:
var
a:real;
b:integer;
begin
a:=15.489361;
b := a div 1;
end;
El div te devolverá solo la parte entera del resultado.
-
si tenes el Turbo Pascal podrias utilizar la funcion de "Trunc()" sus parametros son los siguientes:
:ph34r:
Function Trunc (R:Real) : LongInt;
Le pasas un numero de tipo real y te devuelve el entero Ej:
Y:=Trunc(X); o mas facil :rolleyes: X:=Trunc(X);
-
:comp: Espera me estoy olvidando de la funcion Round que redondea la parte no entera de un real pos o neg.
Sus parametros son los mismos que el de "Trunc" que trunca(corta) la parte decimal.
-
Saludos!.
Veamos:
"trunc" es una función, y transforma un valor tipo "real" a otro tipo "longint". Este valor obtenido será la parte entera del valor inicial. Por ejemplo, trunc (-1.892) dará como resultado -1, trunc (200.5) dará 200, trunc (25.3) dará 25, y así.
"round" es una función, y también transforma un valor tipo "real" a otro tipo "longint". Este valor obtenido esta vez será la parte entera del valor inicial, pero "redondeada". Por ejemplo, round (-1.892) dará como resultado -2, ya que su parte decimal es superior a 0.5, round (200.5) dará 201, ya que su parte decimal es igual a 0.5, y round (25.3) dará 25, ya que su parte decimal es inferior a 0.5, y así.
Ahora tu decide cual te sirve.
Bernardo L. :comp: