Área y circunferencia de un círculo en C

CBeginner
Practicar Ahora

Introducción

En este laboratorio, crearemos un programa en C que calcule el área y la circunferencia de un círculo. Este sencillo programa demuestra varios conceptos fundamentales de programación, incluyendo la declaración de variables, el procesamiento de la entrada del usuario, los cálculos matemáticos y la visualización de la salida formateada.

Circle Area and Circumference in C

Utilizaremos las fórmulas matemáticas:

  • Área de un círculo = π × radio²
  • Circunferencia de un círculo = 2 × π × radio

Al final de este laboratorio, habrás escrito un programa completo en C que tome la entrada del usuario y realice cálculos utilizando estas fórmulas.

Crear el archivo del programa y la estructura básica

Comencemos creando el archivo de nuestro programa en C y configurando la estructura básica. Crearemos un archivo llamado circle.c en el directorio ~/project/circle_program.

  1. Navegue hasta el directorio del proyecto:

    cd ~/project/circle_program
  2. Cree un nuevo archivo llamado circle.c utilizando el editor WebIDE. Haga clic en el menú "File" en la parte superior del WebIDE y luego seleccione "New File". Como alternativa, puede hacer clic derecho en el panel del explorador de archivos y seleccionar "New File".

  3. Nombre el archivo circle.c y guárdelo en el directorio ~/project/circle_program.

  4. Ahora, agreguemos la estructura básica de nuestro programa en C al archivo:

    #include <stdio.h>
    
    int main() {
        // We will add our code here
    
        return 0;
    }

En el código anterior:

  • #include <stdio.h> es una directiva de preprocesador que le dice al compilador que incluya la biblioteca de Entrada/Salida Estándar (Standard Input/Output library), que proporciona funciones como printf() y scanf().
  • int main() define la función principal, que es el punto de entrada de cualquier programa en C.
  • Las llaves { } marcan el inicio y el final del cuerpo de la función principal.
  • return 0; indica que el programa se ejecutó correctamente.
  1. Guarde el archivo presionando Ctrl+S o utilizando el menú "File" y seleccionando "Save".

Declarar variables y constantes

Ahora que tenemos la estructura básica de nuestro programa, agreguemos las variables y constantes que necesitaremos para nuestros cálculos.

  1. Abra el archivo circle.c en el editor (si no está ya abierto).

  2. Necesitaremos varias variables:

    • Una variable para almacenar el radio del círculo
    • Una constante para almacenar el valor de π (pi)
    • Variables para almacenar el área y la circunferencia calculadas
  3. Actualice su código como se muestra a continuación:

    #include <stdio.h>
    
    int main() {
        // Declare variables and constants
        float radius;         // to store the radius of the circle
        const float PI = 3.14159; // the mathematical constant π (pi)
        float area;           // to store the calculated area
        float circumference;  // to store the calculated circumference
    
        return 0;
    }

Comprendamos las declaraciones de variables:

  • float radius; - Usamos el tipo de dato float porque el radio podría ser un número decimal.
  • const float PI = 3.14159; - Definimos PI como una constante porque su valor no debe cambiar durante la ejecución del programa. La palabra clave const asegura esto.
  • float area; y float circumference; - Estas variables almacenarán los resultados de nuestros cálculos, que podrían ser números decimales.

En la programación en C, normalmente declaramos todas las variables al principio de una función. Esta práctica hace que el programa esté más organizado y sea más fácil de entender.

  1. Guarde su archivo (Ctrl+S).

Obtener la entrada del usuario

Ahora, agreguemos código para pedirle al usuario el radio del círculo y leer su entrada.

  1. Abra el archivo circle.c en el editor (si no está ya abierto).

  2. Agregue el código para solicitar al usuario y leer su entrada:

    #include <stdio.h>
    
    int main() {
        // Declare variables and constants
        float radius;         // to store the radius of the circle
        const float PI = 3.14159; // the mathematical constant π (pi)
        float area;           // to store the calculated area
        float circumference;  // to store the calculated circumference
    
        // Prompt user for radius
        printf("Please enter the radius of the circle: ");
    
        // Read the radius value from user input
        scanf("%f", &radius);
    
        // Validate input (optional but good practice)
        if (radius <= 0) {
            printf("Error: Radius must be a positive number\n");
            return 1;  // Exit with error code
        }
    
        return 0;
    }

Comprendamos lo que agregamos:

  • printf("Please enter the radius of the circle: "); - Esto muestra un mensaje pidiendo al usuario que ingrese el radio.
  • scanf("%f", &radius); - Esto lee un valor de punto flotante de la entrada del usuario y lo almacena en la variable radius.
    • %f es un especificador de formato para números de punto flotante.
    • &radius pasa la dirección de memoria de la variable radius, lo que permite a scanf() modificar su valor.
  • Agregamos una simple comprobación de validación para asegurarnos de que el radio sea positivo, ya que un círculo no puede tener un radio cero o negativo.

La función scanf() se utiliza para leer entrada formateada desde la entrada estándar (teclado). Es importante usar el especificador de formato correcto (%f para float) y pasar la dirección de la variable utilizando el operador &.

  1. Guarde su archivo (Ctrl+S).

Calcular el área y la circunferencia

Ahora que tenemos el radio, podemos calcular el área y la circunferencia del círculo utilizando nuestras fórmulas.

  1. Abra el archivo circle.c en el editor (si no está ya abierto).

  2. Agregue el código de cálculo:

    #include <stdio.h>
    
    int main() {
        // Declare variables and constants
        float radius;         // to store the radius of the circle
        const float PI = 3.14159; // the mathematical constant π (pi)
        float area;           // to store the calculated area
        float circumference;  // to store the calculated circumference
    
        // Prompt user for radius
        printf("Please enter the radius of the circle: ");
    
        // Read the radius value from user input
        scanf("%f", &radius);
    
        // Validate input
        if (radius <= 0) {
            printf("Error: Radius must be a positive number\n");
            return 1;  // Exit with error code
        }
    
        // Calculate the area of the circle
        area = PI * radius * radius;
    
        // Calculate the circumference of the circle
        circumference = 2 * PI * radius;
    
        return 0;
    }

Comprendamos los cálculos:

  • area = PI * radius * radius; - Esto calcula el área utilizando la fórmula π × r², donde r es el radio.
  • circumference = 2 * PI * radius; - Esto calcula la circunferencia utilizando la fórmula 2 × π × r.

En C, el operador de multiplicación es *. Para calcular r², simplemente multiplicamos el radio por sí mismo (radius * radius). Para operaciones matemáticas más complejas, usaríamos funciones de la biblioteca math.h, pero nuestros cálculos son lo suficientemente simples sin ella.

  1. Guarde su archivo (Ctrl+S).

Mostrar resultados y probar el programa

Completemos nuestro programa agregando código para mostrar los resultados, luego compílemoslo y ejecutémoslo para ver si funciona correctamente.

  1. Abra el archivo circle.c en el editor (si no está ya abierto).

  2. Agregue el código para mostrar los resultados:

    #include <stdio.h>
    
    int main() {
        // Declare variables and constants
        float radius;         // to store the radius of the circle
        const float PI = 3.14159; // the mathematical constant π (pi)
        float area;           // to store the calculated area
        float circumference;  // to store the calculated circumference
    
        // Prompt user for radius
        printf("Please enter the radius of the circle: ");
    
        // Read the radius value from user input
        scanf("%f", &radius);
    
        // Validate input
        if (radius <= 0) {
            printf("Error: Radius must be a positive number\n");
            return 1;  // Exit with error code
        }
    
        // Calculate the area of the circle
        area = PI * radius * radius;
    
        // Calculate the circumference of the circle
        circumference = 2 * PI * radius;
    
        // Display the results
        printf("\nResults for a circle with radius %.2f units:\n", radius);
        printf("Area: %.2f square units\n", area);
        printf("Circumference: %.2f units\n", circumference);
    
        return 0;
    }

Comprendamos el código de salida:

  • printf("\nResults for a circle with radius %.2f units:\n", radius); - Esto muestra el radio con 2 decimales.
  • printf("Area: %.2f square units\n", area); - Esto muestra el área calculada con 2 decimales.
  • printf("Circumference: %.2f units\n", circumference); - Esto muestra la circunferencia calculada con 2 decimales.

El especificador de formato %.2f le dice a printf() que muestre números de punto flotante con 2 decimales, lo que hace que la salida sea más legible.

  1. Guarde su archivo (Ctrl+S).

  2. Ahora, compile el programa. En la terminal, navegue hasta el directorio de su proyecto y use el compilador gcc:

    cd ~/project/circle_program
    gcc circle.c -o circle

    La opción -o circle le dice al compilador que cree un archivo ejecutable llamado circle.

  3. Si la compilación es exitosa, puede ejecutar su programa con:

    ./circle
  4. Cuando se le solicite, ingrese un valor de radio (por ejemplo, 5) y presione Enter. Debería ver una salida similar a:

    Please enter the radius of the circle: 5
    
    Results for a circle with radius 5.00 units:
    Area: 78.54 square units
    Circumference: 31.42 units
  5. Intente ejecutar el programa nuevamente con diferentes valores de radio para confirmar que funciona correctamente.

¡Felicidades! Ha creado con éxito un programa en C que calcula y muestra el área y la circunferencia de un círculo basado en la entrada del usuario.

Resumen

En este laboratorio, has creado con éxito un programa en C que:

  1. Solicita al usuario que ingrese el radio de un círculo
  2. Lee y valida la entrada del usuario
  3. Calcula el área del círculo utilizando la fórmula π × r²
  4. Calcula la circunferencia del círculo utilizando la fórmula 2 × π × r
  5. Muestra los resultados calculados con el formato adecuado

En el camino, has aprendido varios conceptos importantes de programación en C:

  • Incluir archivos de encabezado con #include
  • Definir y usar variables y constantes
  • Leer la entrada del usuario con scanf()
  • Realizar cálculos matemáticos
  • Mostrar salida formateada con printf()
  • Compilar y ejecutar un programa en C

Estas habilidades fundamentales son los bloques de construcción de programas en C más complejos. Ahora puedes ampliar este conocimiento para crear aplicaciones más sofisticadas que involucren interacción con el usuario y cálculos matemáticos.