Funciones y Operaciones Matemáticas con Vectores y Matrices: Ejemplos Prácticos

Funciones y Operaciones con Vectores y Matrices

Operaciones con Vectores

  • sum(v): Suma de las componentes del vector v.
  • prod(v): Producto de las componentes del vector v.
  • dot(v,w): Producto escalar de dos vectores v y w del mismo tipo y las mismas dimensiones.
  • cross(v,w): Producto vectorial de dos vectores v y w del mismo tipo y dimensión 3.
  • max(v): Máximo de las componentes del vector v (sin valor absoluto).
  • norm(v): Norma euclídea del vector v.
  • norm(v,p): Norma-p del vector v.

Operaciones con Matrices

  • diag(A): Vector conteniendo la diagonal principal de la matriz A.
  • diag(A,k): k-ésima sub o super diagonal de A (según sea k>0, k=0, k<0).
  • max(A): Vector conteniendo el valor máximo de las componentes de cada columna.
  • [y,k]=max(A): Nos da, además, la fila en la que se produce el máximo de cada columna.
  • zeros(n,m): Matriz nxm con todas sus componentes iguales a cero.
  • zeros(n): Ídem nxn.
  • ones(n,m): Matriz nxm con todas sus componentes iguales a uno.
  • ones(n): Ídem nxn.
  • eye(n,m): Matriz unidad: matriz nxm con diagonal principal =1 y el resto de las componentes =0.
  • diag(v) (donde v es un vector): Matriz con la diagonal principal = v y ceros en el resto.
  • diag(v,k) (donde v es un vector): Ídem con la k-ésima diagonal= v y ceros en el resto.
  • [A,B]: Es la matriz (A B).
  • [A;B]: Es la matriz (A B) transpuesta (columna).
  • [ ]: Representa la matriz “vacía” (0x0).
  • A(:,3)=[]: Elimina la tercera columna de la matriz A.
  • A(1,:)=[]: Elimina la primera fila de A.
  • full(A): Si A es una matriz en forma hueca, devuelve su forma estándar.
  • [i,j,c]=find(A): Si A es una matriz (en forma hueca o no), devuelve los vectores i, j y c, correspondientes a su almacenamiento sparse.
  • sparse(A): Si A es una matriz en forma estándar, devuelve su forma esparse.

Operaciones con Polinomios

  • roots(p): Calcula las raíces del polinomio p (es un vector-columna y, en general, calcula aproximaciones).
  • poly(raices): Si raices es un vector-columna, devuelve el polinomio que tienes dichas raíces. Se obtiene normalizado y puede ser de coeficientes complejos.
  • poly(A): Si A es una matriz cuadrada, es el polinomio característico.
  • polyval(p,x): Calcula el valor del polinomio p en el punto x (x puede ser un vector).
  • conv(p1,p2): Producto de los polinomios p1 y p2.
  • deconv(p1,p2): División de polinomios.
  • polyder(p): Derivada del polinomio p.

Otras Funciones

  • sort(V): Reordena v de menor a mayor.
  • size(a): Tamaño de la matriz (fila,columna).
  • length(V): Número de elementos de v.
  • fix: Redondeo hacia cero.
  • floor: Redondeo hacia menos infinito.
  • ceil: Redondeo hacia más infinito.
  • round: Redondeo hacia el entero más próximo.
  • mod: Módulo (cociente entero de la división).
  • rem: Resto entero de la división.
  • sign: Función signo.

Ejemplos Prácticos

  1. Calcula la suma de los elementos de un vector v que ocupan las posiciones impares.
    • Solución: sum(v(1:2:end))
  2. Obtén los cinco mayores elementos de un vector v, ordenados de mayor a menor.
    • Solución: v2=sort(v); res = v2(end:-1:end-4)
  3. Obtén un vector columna concatenando las diagonales de dos matrices A y B.
    • Solución: [diag(A); diag(B)]
  4. Crea una matriz de 3×5 de valores enteros aleatorios entre 18 y 43.
    • Solución: round(rand(3,5)*(43-18)+18)
  5. Calcula la media de los elementos pares de un vector v.
    • Solución: mean(v(2:2:end))
  6. Cálculo de la primera raíz.
    • Solución: x(1) = (-b + sqrt(b^2-4*a*c))/(2*a);
  7. Calcular la media de los 10 primeros elementos de un vector v.
    • Solución: mean(v(1:10))
  8. Ejemplo 1: Calcular la suma de los n primeros términos de la sucesión 1, 2x, 3x^2, 4x^3, …
          
            n=input('¿Cuántos términos quieres sumar? ');
            x=input('Dame el valor del numero x ');
            suma=1;
            for i=2:n
              suma=suma+i*x^(i-1);
            end
            disp('El valor pedido es')
            disp(suma)
          
        
  9. Ejemplo 2: Decidir si un número natural es primo.
          
            n=input('Número natural que deseas saber si es primo ');
            i=2;
            primo=1;
            while i<=sqrt(n)
              if rem(n,i)==0  % Resto de dividir n entre i
                primo=0;
                break
              end
            end
          
        

    a) Crear un vector r con las raíces cuadradas de los 20 primeros números naturales.

    • Solución: r=sqrt(1:20)

    b) Sumar los cuadrados de los 10 primeros números naturales.

    • Solución: sum((1:10).^2)

    c) Calcular el máximo entre los elementos de las posiciones impares de un vector v.

    • Solución: max(v(1:2:end))

    d) Calcular la suma de los elementos que ocupan las posiciones múltiplo de 5 en un vector v.

    • Solución: sum(v(5:5:end))
  10. Dado un entero, n, calcular la suma de los n primeros números impares.
          
            Inicio
            LEER n
            HACER suma=0
            Para i= 1, 3, 5, ..., 2*n-1
              HACER suma=suma+i
            Fin Para
            IMPRIMIR ’La suma vale : ’, suma
            Fin
          
        
  11. Dado un número natural, n, imprimir la lista de sus divisores, en orden decreciente.
          
            Inicio
            LEER n
            IMPRIMIR ’ Lista de divisores del numero: ’, n
            Para i=ParteEntera(n/2) hasta 2 (incremento -1)
              Si resto(n/i)=0
                IMPRIMIR i
              Fin Si
            Fin Para
            IMPRIMIR 1
            Fin
          
        
  12. Imprimir de forma ascendente los 100 primeros números naturales.
          
            Inicio
            i=1
            Mientras que i ≤ 100
              IMPRIMIR i
              HACER i=i+1
            Fin Mientras
            Fin
          
        

Deja una respuesta

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

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.