Programación en Ada / Unidades predefinidas / Ada.Float Text IO

De Wikilibros, la colección de libros de texto de contenido libre.

Ada.Float_Text_IO es un paquete predefinido de la biblioteca estándar para la entrada/salida de datos de tipo Float.

Lo primero que hay que hacer es importar este paquete:

with Ada.Float_Text_IO;

use Ada.Float_Text_IO;

Están predefinidos dentro de esta biblioteca los siguientes procedimientos:

Put (Número, X, Y, Z);

Put (Fichero, Número, X, Y, Z);

De donde:

  • Número es el número en coma flotante a mostrar.
  • X son los espacios en blanco que queremos mostrar entre varios números.
  • Y cuantos dígitos decimales queremos que se muestren.
  • Z cuantos dígitos dejamos para exponente en notación científica.
  • Fichero es un fichero abierto con Ada.Text_IO.Open para salida.

Podemos dejar parámetros en blanco y se tomarían por defecto los valores que tenga el procedimiento en la biblioteca:

Put (Número);

Put (Número,X);

Put (Número, ,Y,Z); -- ¡¡NO!! Error

-- La siguiente es la manera correcta de dejar el número de dígitos
-- decimales al valor por defecto.
Put (Item => Número,
     Aft  => Y,
     Exp  => Z);

Lo más usual es que usemos Put dentro de otro procedimiento:

with Ada.Float_Text_IO;
use Ada.Float_Text_IO;

procedure EscribirReal(X: float) is

begin
    Put (X,8,2,2);
end EscribirReal;

Si llamamos a EscribirReal(-100.0) obtendremos por pantalla lo siguiente:

     -1.00E+2

(que al ser notación científica es -1.00 \times 10^2).

Obsérvese que el signo usa uno de los espacios en blanco con lo cual no dejamos 8 espacios entre números sino 7, usamos un blanco para el signo.

Este paquete es equivalente a una instanciación del paquete genérico Float_IO, anidado dentro de Ada.Text_IO.

[editar] Especificación

Según el manual de referencia de Ada, la especificación de este paquete puede ser la siguiente (en rigor no se requiere que sea realmente una instanciación):

with Ada.Text_IO;
package Ada.Float_Text_IO is new Ada.Text_IO.Float_IO(Float);

[editar] Manual de referencia de Ada

Herramientas personales