Ejercicio 05 — Leer el radio y calcular área y perímetro de un círculo
Dificultad: amarillo · Módulo 01 (Variables, tipos y entrada/salida)
Enunciado
Leer el radio y calcular área y perímetro de un círculo.
Diagramas de flujo


Cómo se resuelve
Geometría sencilla que introduce las constantes y la ausencia de pow en C básico.
const float PI = 3.14159f;— la palabraconstle dice al compilador que ese valor no puede cambiar. Si por error escribierasPI = 4;más abajo, el programa ni siquiera compilaría. Es la forma correcta de declarar un valor fijo.float radiose lee conscanf("%f", &radio).- Área =
PI * radio * radio. En C básico no hay operador de potencia ni se usapowpara algo tan simple: elevar al cuadrado es, literalmente, multiplicar el número por sí mismo (radio * radio). - Perímetro =
2.0f * PI * radio. - Ambos resultados se muestran con
%.2f(dos decimales).
Idea que se queda: C te da lo mínimo. Operaciones que en otros lenguajes son un símbolo (**), aquí las construyes tú con multiplicaciones.
Para practicar — cópialo y complétalo
Pega este esqueleto y completa los TODO. Es la mejor forma de aprender: inténtalo antes de mirar la solución.
/*
* Curso de C — Modulo 01: Variables, tipos y entrada/salida
* Ejercicio 05 — PRACTICA (rellena los TODO)
* Enunciado: Leer el radio y calcular área y perímetro de un círculo.
* Dificultad: amarillo
* Stdin: 5
* Compilar: gcc -std=c11 -Wall ej05_practica.c -o ej05 && ./ej05
*/
#include <stdio.h>
int main(void) {
// TODO: declara una constante float llamada PI con valor 3.14159f
// Usa la palabra clave 'const' antes del tipo
// TODO: declara una variable float 'radio', inicializada a 0.0f
// TODO: muestra "Radio: " y lee el radio con scanf
// TODO: calcula el area: PI * radio * radio
// (en C basico no hay funcion pow, multiplica directamente)
// TODO: calcula el perimetro: 2.0f * PI * radio
// TODO: muestra "Area: %.2f\n" con el valor del area
// TODO: muestra "Perimetro: %.2f\n" con el valor del perimetro
return 0;
}Solución — cópiala y ejecútala
/*
* Curso de C — Modulo 01: Variables, tipos y entrada/salida
* Ejercicio 05 — MODELO (resuelto)
* Enunciado: Leer el radio y calcular área y perímetro de un círculo.
* Dificultad: amarillo
* Stdin: 5
* Compilar: gcc -std=c11 -Wall ej05_modelo.c -o ej05 && ./ej05
*/
#include <stdio.h>
int main(void) {
const float PI = 3.14159f;
float radio = 0.0f;
printf("Radio: ");
scanf("%f", &radio);
// Area = PI * r^2 (r*r es lo mismo que r al cuadrado)
float area = PI * radio * radio;
// Perimetro = 2 * PI * r
float perimetro = 2.0f * PI * radio;
printf("Area: %.2f\n", area);
printf("Perimetro: %.2f\n", perimetro);
return 0;
}Ejecútalo en el navegador
▶ Abrir y ejecutar en Compiler Explorer
Se abre con la solución ya cargada; pulsa el botón de ejecutar (Run) para ver la salida. No hay que instalar nada.
Cómo usarlo
Pega el código en un fichero y ejecútalo con tu toolchain habitual (o el botón de Ejecutar de tu editor). Antes de mirar la solución, intenta completar tú el esqueleto: es la mejor forma de aprender.