Ruby | Clase flotante

En Ruby, la clase Float es una subclase de la clase Numeric. Los objetos de la clase Float representan números reales utilizando la representación de punto flotante de precisión doble de la arquitectura nativa.

Métodos de instancia pública

  1. Operaciones aritméticas: este método realiza varias operaciones aritméticas en float .
    1. Suma: Devuelve el resultado de la suma de flotante y valor numérico en número de punto flotante.
      float + numeric
    2. Resta: Devuelve el resultado de la diferencia de flotante y valor numérico en número de coma flotante.
      float - numeric
    3. Multiplicación: Devuelve el resultado del producto de float y valor numérico en número de coma flotante.
      float * numeric
    4. División: Devuelve el resultado de la división de float y valor numérico en número de punto flotante.
      float / numeric
    5. Módulo: Devuelve el resultado del módulo de float y valor numérico en número de punto flotante.
      float % numeric
    6. Exponente: Devuelve el resultado de la potencia del flotante y el valor numérico en número de punto flotante.
      float ** numeric
    7. Menos unario: devuelve un número de coma flotante.
      float -@

    Ejemplo:

    # Ruby program to illustrate 
    # Arithmetic operation
      
    a = 2.1
    b = 2
      
    # Addition
    c = a + b    
      
    puts "addition #{c}"
      
    # Subtraction
    d = a - b    
      
    puts "subtraction #{d}"
      
    # Multiplication
    e = a * b   
      
    puts "multiplication #{e}"
      
    # Division
    f = a / b   
      
    puts "division #{f}"
      
    # Modulo
    g = a % b   
      
    puts "modulo  #{g}"
      
    # Exponent
    h = a ** b  
      
    puts "exponent #{h}"
      
    # Unary minus
    i= -a       
      
    puts "unary minus #{i}"

    Producción:

    addition 4.1
    subtraction 0.1
    multiplication 4.2
    division 1.05
    modulo  0.1
    exponent 4.41
    unary minus -2.1
    
  2. <=> : este método devuelve -1, 0 o +1 dependiendo de float . Si float es menor que el valor numérico, devolverá -1, si float es igual al valor numérico, devolverá 0, o si float es mayor que el valor numérico, devolverá +1.
    float <=> numeric --> 1, 0, +1 

    Ejemplo:

    # Ruby program to illustrate 
    # <=> Method
      
    puts 2.1 <=> 4       
    puts 2.0 <=> 2       
    puts 4.6 <=> 2       

    Producción:

    -1
    0
    1
    
  3. == : este método devuelve verdadero si el obj es igual a float ; de lo contrario, devuelve falso.
    float == obj --> true or false

    Ejemplo:

    # Ruby program to illustrate 
    # == Method
      
    puts 3.8 == 4        
    puts 3.8 == 3.8      

    Producción:

    false
    true
    
  4. abs : este método devuelve el valor absoluto de float .
    float.abs --> numeric

    Ejemplo:

    # Ruby program to illustrate 
    # abs Method
      
    puts (-54.56).abs    
    puts (-65.04).abs     

    Producción:

    54.56
    65.04
    
  5. ceil : este método devuelve el entero más pequeño mayor o igual que float . El tipo de retorno de este método es int.
    float.ceil --> int

    Ejemplo:

    # Ruby program to illustrate 
    # ceil Method
      
    puts (4.1).ceil      
    puts (4.0).ceil      
    puts (-4.1).ceil     

    Producción:

    5
    4
    -4
    
  6. divmod : este método devolverá una array que contiene el cociente y el módulo obtenidos al dividir num por numérico.
    float.divmod(numeric) --> array

    Ejemplo:

    # Ruby program to illustrate 
    # divmod Method
      
    p (45.0.divmod 5)   
    p (98.0.divmod 5)   

    Producción:

     
    [9, 0.0]
    [19, 3.0]
    
  7. eql? : Este método verifica si el obj es Float y contiene el mismo valor que en float . Si contienen el mismo valor, devolverá verdadero, de lo contrario devolverá falso. El tipo de retorno de este método es booleano .
    float.eql?(obj) --> true or false

    Ejemplo:

    # Ruby program to illustrate 
    # eql? Method
      
    puts 4.2.eql?(2)       
    puts 1.2.eql?(1.2)      

    Producción:

    false
    true
    
  8. ¿finito? : este método comprueba si el flotante es un número de punto flotante IEEE válido. Si float es un número de punto flotante IEEE válido, devolverá verdadero; de lo contrario, devolverá falso.
    float.finite? --> true or false

    Ejemplo:

    # Ruby program to illustrate 
    # finite? Method
      
    puts (45.0).finite?         
    puts (45.0/0.0).finite?    

    Producción:

    true
    false
    
  9. floor : este método devuelve el entero más grande menor o igual que float .
    float.floor --> int

    Ejemplo:

    # Ruby program to illustrate 
    # floor Method
      
    puts 2.2. floor          
    puts (-4.6).floor        

    Producción:

    2
    -5
    
  10. ¿infinito? : este método devuelve nil, -1 o +1 , depende de float . Si float es finito, devuelve nil , si float es -infinito, devuelve -1 , o si float es +infinito, devuelve +1 .
    float.infinite? --> nil, -1, +1

    Ejemplo:

    # Ruby program to illustrate 
    # infinite? Method
      
    puts (1.1).infinite?            
    puts (-1.1/0.0).infinite?      
    puts (+1.1/0.0).infinite?      
      

    Producción:

    nil
    -1
    1
    
  11. módulo: Este método es similar al método Float#%.
    float.modulo(numeric) --> numeric

    Ejemplo:

    # Ruby program to illustrate 
    # modulo Method
      
    puts 32.45.modulo(20)      

    Producción:

    12.450000000000003
    
  12. ¿yaya? : este método devuelve verdadero si float es un número de punto flotante IEEE no válido; de lo contrario, devuelve falso. El tipo de retorno de este método es booleano .
    float.nan? --> true or false

    Ejemplo:

    # Ruby program to illustrate 
    # nan? Method
      
    puts (-2.2). nan?           
    puts (0.0/0.0). nan?        

    Producción:

    false
    true
    
  13. round: este método redondea float al valor entero más cercano. El tipo de retorno de este método es int .
    float..round(digits=0) --> numeric

    Ejemplo:

    # Ruby program to illustrate 
    # round Method
      
    puts 6.7.round      
    puts (-8.9).round     

    Producción:

    7
    -9
    
  14. to_f : este método devuelve float .
    float.to_f --> float
  15. to_i : este método devuelve float truncado al entero. El tipo de retorno de este método es int .
    float.to_i --> int

    Ejemplo:

    # Ruby program to illustrate 
    # to_i Method
      
    puts 5.6.to_i   

    Producción:

    5
  16. to_int : este método es similar a Float#to_i.
    float.to_int --> int
  17. to_s : este método devuelve una string que contiene una representación de sí mismo, así como una forma de numeración fija o exponencial. La llamada puede devolver NaN, infinito e -infinito.
    float.to_s --> string 
  18. truncar : este método es igual al método Float#to_i. El tipo de retorno de este método es int.
    float.truncate 
  19. ¿cero? : este método devuelve verdadero si float es 0.0; de lo contrario, devuelve falso. El tipo de retorno de este método es booleano.
    float.zero? --> true or false

    Ejemplo:

    # Ruby program to illustrate 
    # zero? Method
      
    puts (0.0).zero?   
    puts (1.4).zero?   

    Producción:

    true
    false
    
  20. La clase flotante contiene constantes que se enumeran a continuación:

    constantes Descripción
    EXCAVAR Tiene un número mínimo de dígitos decimales significativos en un punto flotante de doble precisión y su valor predeterminado es 15.
    EPSILON Mantiene la diferencia entre 1 y el número de punto flotante de precisión doble más pequeño mayor que 1 y el valor predeterminado es 2.2204460492503131e-16.
    MANT_DIG Contiene el número de dígitos de mantisa de base RADIX. El valor predeterminado es 53.
    MÁX. Contiene el entero más grande posible en un número de punto flotante de doble precisión y su valor predeterminado es 1,7976931348623157e+308.
    MAX_10_EXP Representa el exponente positivo más grande en un punto flotante de precisión doble donde 10 elevado a esta potencia menos 1. El valor predeterminado es 308.
    MAX_EXP Es el valor de exponente más grande posible en un punto flotante de doble precisión que por defecto es 1024.
    MÍN. Es el número normalizado positivo más pequeño en un punto flotante de precisión doble. El valor predeterminado es 2.2250738585072014e-308.
    MIN_10_EXP Es el exponente negativo más pequeño en un punto flotante de precisión doble donde 10 elevado a esta potencia menos 1. El valor predeterminado es -307.
    MIN_EXP Es el valor de exponente más pequeño posible en un punto flotante de precisión doble. El valor predeterminado es -1021
    BASE La base de las representaciones de punto flotante o, en otras palabras, es una base de números de punto flotante. El valor predeterminado es 2 en la mayoría de los sistemas, lo que representaría un decimal de base 10
    REDONDO Representa el modo de redondeo para operaciones de punto flotante. Los valores incluidos son:
    -1: si la moda es indeterminada
    0: si el redondeo es hacia cero
    1: si el redondeo es el más cercano al valor representable
    2: si el redondeo es hacia +infinito
    3: si el redondeo es hacia +infinito
    Yaya Es una expresión que representa un valor que “ no es un número ”.
    INFINITO Es una expresión que representa el infinito positivo.

    Referencia: https://ruby-doc.org/core-2.4.0/Float.html

Publicación traducida automáticamente

Artículo escrito por ankita_saini y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *