28 abril, 2025

Todo Programación

Cursos, código fuente y ejemplos.

Turbo C – Capítulo 04 – Funciones

Turbo C, Capítulo 04, Funciones

En la programación, las funciones son bloques de código que realizan una tarea específica. La modularidad es el concepto de dividir un programa en partes más pequeñas y manejables, lo que facilita la organización, el mantenimiento y la reutilización del código. Turbo C permite la creación y el uso de funciones para lograr una programación más estructurada y eficiente. En este capítulo, exploraremos cómo trabajar con funciones en Turbo C, junto con ejemplos y ejercicios resueltos.

Creación y Llamada de Funciones

En Turbo C, las funciones se definen utilizando una declaración de función que especifica su tipo de retorno, nombre y parámetros.

Sintaxis:

tipo_de_retorno nombre_de_la_funcion(tipo_parametro1 parametro1, tipo_parametro2 parametro2, ...) {
    // Código de la función
    return valor_de_retorno;
}

Ejemplo:

#include <stdio.h>

// Función que suma dos números
int sumar(int a, int b) {
    return a + b;
}

int main() {
    int resultado = sumar(5, 3);
    printf("Resultado: %d\n", resultado);

    return 0;
}

Modularidad y Reutilización del Código

Dividir un programa en funciones promueve la modularidad, lo que facilita la comprensión y el mantenimiento del código. Además, permite la reutilización de funciones en diferentes partes del programa.

Ejemplo:

#include <stdio.h>

// Función para calcular el área de un triángulo
float areaTriangulo(float base, float altura) {
    return 0.5 * base * altura;
}

// Función para calcular el área de un rectángulo
float areaRectangulo(float lado1, float lado2) {
    return lado1 * lado2;
}

int main() {
    float base, altura, area;

    printf("Ingrese la base y la altura del triángulo: ");
    scanf("%f %f", &base, &altura);
    area = areaTriangulo(base, altura);
    printf("Área del triángulo: %.2f\n", area);

    printf("Ingrese los lados del rectángulo: ");
    scanf("%f %f", &base, &altura);
    area = areaRectangulo(base, altura);
    printf("Área del rectángulo: %.2f\n", area);

    return 0;
}

Paso de Parámetros por Valor y Referencia

En Turbo C, los parámetros de una función se pasan por valor de forma predeterminada, lo que significa que se crea una copia local de los valores originales. Sin embargo, también es posible pasar parámetros por referencia, lo que permite que la función modifique directamente los valores originales.

Ejemplo:

#include <stdio.h>

// Función que modifica el valor de una variable mediante punteros
void duplicar(int *numero) {
    *numero *= 2;
}

int main() {
    int n = 5;
    duplicar(&n);
    printf("Doble de n: %d\n", n);

    return 0;
}

Ejercicios Resueltos

Ejercicio 1: Conversión de Moneda
Escribe un programa en Turbo C que solicite una cantidad en dólares y la convierta a euros utilizando una función.

Solución:

#include <stdio.h>

float convertirDolaresAEuros(float dolares) {
    return dolares * 0.85;
}

int main() {
    float dolares, euros;
    printf("Ingrese la cantidad en dólares: ");
    scanf("%f", &dolares);

    euros = convertirDolaresAEuros(dolares);
    printf("%.2f dólares equivalen a %.2f euros.\n", dolares, euros);

    return 0;
}

Ejercicio 2: Cálculo de Factorial
Escribe un programa que calcule el factorial de un número utilizando una función recursiva.

Solución:

#include <stdio.h>

int calcularFactorial(int n) {
    if (n == 0 || n == 1) {
        return 1;
    } else {
        return n * calcularFactorial(n - 1);
    }
}

int main() {
    int numero;
    printf("Ingrese un número: ");
    scanf("%d", &numero);

    int factorial = calcularFactorial(numero);
    printf("El factorial de %d es %d.\n", numero, factorial);

    return 0;
}

Conclusion

Las funciones son conceptos fundamentales en la programación, ya que permiten organizar y reutilizar el código de manera eficiente. Turbo C ofrece la capacidad de crear y utilizar funciones, lo que mejora la legibilidad, la mantenibilidad y la eficiencia de los programas.


Copyright © Todos los derechos reservados. | Newsphere por AF themes.