Redondear números en C#

En este post vamos a ver cómo usar funciones de Math en C# para redondear números. A mi modo de ver existen 3 maneras de redondear números:

Redondear basándose en la parte fraccionaria. En este caso si es mayor o igual que .5 sube, y si no, baja.

Las otras 2 maneras son forzar el redondeo hacia abajo y forzar el redondeo hacia arriba sin importar la parte fraccionaria.

3 Métodos para redondear con C#

Para redondear hacia abajo se utiliza Math.Floor, para redondear hacia arriba usamos Math.Ceiling y finalmente, para redondear basándose en la parte que va después del punto usamos Math.Round.

Recordemos que al redondear un número se devuelve un entero, por eso es que se llama redondear o round.

Ejemplos de redondeo con C#

El código que demuestra el redondeo es el siguiente:

/*
  Demostrar 3 formas de redondear números en C#

  @author parzibyte
*/
using System;

class MainClass {
  public static void Main (string[] args) {
    // Para dedondear de modo que:
    // * Mayor o igual que .5 sube
    // * Menor que .5 baja
    // Usa Math.Round
    Console.WriteLine("Round(1.1): {0}", Math.Round(1.1));
    Console.WriteLine("Round(1.58): {0}", Math.Round(1.58));
    Console.WriteLine("Round(50.9): {0}", Math.Round(50.9));
    Console.WriteLine("Round(15.1): {0}", Math.Round(15.1));
    // Si quieres forzar el redondeo hacia abajo
    // utiliza Math.Floor. Eso hace que tanto .1 hasta .9 bajen
    Console.WriteLine("Floor(1.1): {0}", Math.Floor(1.1));
    Console.WriteLine("Floor(1.58): {0}", Math.Floor(1.58));
    Console.WriteLine("Floor(50.9): {0}", Math.Floor(50.9));
    Console.WriteLine("Floor(15.1): {0}", Math.Floor(15.1));
    // Si quieres forzar el redondeo hacia arriba
    // utiliza Math.Ceiling. Eso hace que tanto .1 hasta .9 suban
    Console.WriteLine("Ceiling(1.1): {0}", Math.Ceiling(1.1));
    Console.WriteLine("Ceiling(1.58): {0}", Math.Ceiling(1.58));
    Console.WriteLine("Ceiling(50.9): {0}", Math.Ceiling(50.9));
    Console.WriteLine("Ceiling(15.1): {0}", Math.Ceiling(15.1));
  }
}

Puedes ejecutarlo aquí.

Como siempre, te invito a leer más sobre C# y matemáticas.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

1 comentario en “Redondear números en C#”

  1. (“…En este caso si es mayor o igual que .5 sube…”).

    Ejemplo con 4,5. estoy probando y me da:

    4 con math.floor.
    4. con math.round
    5 con math.ceiling.

    me sorprende el resultado con math.round, porque tenía asumido el texto en comillas.

Dejar un comentario

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