function y = f_a_pedazos(x)
%   y = evaluarFuncionA_Pedazos(x) recibe un vector o matriz x y devuelve
%   el resultado y para cada elemento según los siguientes tramos:
%   Tramo 1: x + 2   si x < 1
%   Tramo 2: x^2     si x >= 1

    % 1. Inicializar el vector de salida del mismo tamaño y tipo que x
    y = zeros(size(x));

    % 2. Crear las máscaras lógicas para cada condición
    tramo1 = (x < 1);
    tramo2 = (x >= 1);

    % 3. Evaluar las funciones aplicando la indexación lógica
    y(tramo1) = x(tramo1) + 2;
    y(tramo2) = x(tramo2).^2;
end
