EJERCICIOS DE MATLAB 1.
Resolver ecuación de segundo grado - Escribe un programa en Matlab que pida al usuario a, b, c de la ecuación calcula sus soluciones. Trabaja sólo con números reales.
“ax^2+bx+c = 0“ y
SOLUCION :
2.
Conversor de grados Fahrenheit a Celsius
3.
Representar en una gráfica un vector frente a otro de dimensión 100 -
Crear un vector k de dimensión 100, cuyas componen componentes tes son son los valores: X = -1.001+0.01* -1.001+0.01*k k Calcular a continuación un vector y cuyas componentes vienen dadas por Y = sen(X) / X Finalmente se ha de representar gráficamente y frente a x.
4.
Representar función entre unos valores de abcisas dados
Leer del teclado un par de abcisas “x1” , “x2” . Representar gráficamente la función y = xsen(x) utilizando cien puntos equiespaciados entre x1 y x2.
5.
Programar menú matemático
Programar un menú matemático simple. El programa ha de leer un número x y luego aceptar una opción elegida por el usuario. Si la opción es 1 se ha de escribir el valor absoluto de x, si es 2 se ha de escribir x^2, si es 3 aparecera x^3, finalmente si es 4 se escribira x!.
6.
Escribir una lista de números primos
Crea un programa en Matlab que genere una lista con un determinado número de números primos (dado por el usuario, por ejemplo). Teoria : Cómo averiguar si un número es primo. El algoritmo más sencillo que puede utilizarse para saber si un número n es primo es el de la división. Se trata de ir probando para ver si tiene algún divisor propio. Para ello vamos dividiendo el número n entre 2, 3, 4, 5, ... , n-1. Si alguna de las divisiones es exacta (da resto cero) podemos asegurar que el número n es compuesto. Si ninguna de estas divisiones es exacta, el número n es primo. Este método puede hacerse más eficiente observando simplemente, que si un número es compuesto alguno de sus factores (sin contar el 1) debe ser menor o igual que √ n. Por lo tanto, el número de divisiones a realizar es mucho menor. Sólo hay que dividir entre 2, 3, 4, 5, ... , [√ n]. En realidad, bastaría hacer las divisiones entre los números primos menores o iguales que √ n. Ejemplo: Para probar que 227 es primo sabiendo que √227 = 15'0665... basta con ver que no es divisible entre 2, 3, 5, 7, 11 y 13.
count = solo es un contador; i = inicio de la sucesion de numeros primos : 2 d = 2 , 3 , 4 , 5 , .... n-1.
7.
Sucesion en matlab
Escriba los n primeros términos de la sucesión dada por n=(1+(1/i))^i , siendo n un numero entero positivo dado.
8.
Sucesión de Fibonacci
Crea un programa en matlab que genere un número determinado de términos de la serie de Fibonacci. Usa variables persistentes y funciones.
Isempty : determina cuando un vector esta vacio Si esta vacio devuelve el valor de 1 valor logico , de lo contrario el valor devuelto sera 0 valor falso. Qué quieren decir las dos barras verticales (||) que separan las condiciones al usar la sentencia if?
Equivale a decir o. Es un operador lógico. Sería decir: “si se cumple la primera parte de la condición o la segunda parte, entonces es verdadero y ejecuta estas acciones…”. Es posible escribir también “|” en vez de “ ||“. La doble barra sirve para acelerar el proceso ya que, si se confirma la primera parte de la condición ya no comprueba si se cumple o no la segunda parte, ya que el resultado sería el mismo. VARIABLE PERSISTENTES persistent X Y Z define X, Yy Z como variables que son locales a la función en la que están declaradas; sin embargo, sus valores se conservan en la memoria entre llamadas a la función. Las variables persistentes son similares a las variables globales porque el software MATLAB® crea un almacenamiento permanente para ambas. Se diferencian de las variables globales en que las variables persistentes se conocen solo por la función en la que se declaran. Esto evita que las variables persistentes sean cambiadas por otras funciones o desde la línea de comando de MATLAB. Siempre que borre o modifique una función que está en la memoria, MATLAB también borrará todas las variables persistentes declaradas por esa función. Para mantener una función en la memoria hasta que MATLAB se cierre, use mlock. Si la variable persistente no existe la primera vez que emite la persistentdeclaración, se inicializa en la matriz vacía. Es un error declarar una variable persistente si existe una variable con el mismo nombre en el espacio de trabajo actual. MATLAB también comete errores si declara que alguno de los argumentos de entrada o salida de una función es persistente dentro de esa misma función. Por ejemplo, la siguiente declaración persistente no es válida: function myfun (argA, argB, argC) argB persistente
9.
Sustituir caracteres en una cadena de texto en Matlab
Genera un programar para sustituir los espacios de una cadena de texto introducida por el usuario por guiones.
al utilizar fprintf para mostrar resultados por pantalla: %f se utiliza para valores numéricos verdad?, pero %d y %s como en este caso para que sirven?.
%f sirve para representar un número con punto flotante (es decir, un número determinado
de decimales). Matlab asigna un número predeterminado de decimales que puedes editar. Por ejemplo si quieres dos decimales, escribes %.2f %d sirve para número enteros y %s para cadenas de texto (strings)
fprintf(‘%s/n’,result); /n : salto de linea
a= input(‘Introduce .... ‘ , ‘s’); ‘s’ : funciona para ingresar texto y numeros 10. Leer componentes de un vector y escribirlo
11. Función para calcular la raíz cuadrada de números enteros
Codifica y prueba el algoritmo que calcula la raíz cuadrada aproximada entera por defecto (sin emplear funciones de Matlab).
12. Sumatorio del inverso de una potencia
Se desea calcular la suma suponen dados
siendo m y n dos numeros enteros que se
13. Sumatorio de los inversos de la sucesión de Fibonacci
Se desea calcular la suma, s =
1 ∑=1 siendo los valores ak los elementos de ls
sucesion dada por a k = a k-1 + a k-2 , con a1 = 1 y a2 = 1 . El limite n ha de leerse del teclado y se supone mayor que dos.
14. Calcular área de una corona circular
Dados dos radios, calcular el área de la corona circular.
a la hora de introducir los datos, por que se pone r(1,1) o r(1,2) en lugar de llamarlos simplemente r1 y r2??
Cuando escribo r(1,1) y r(1,2) estoy usando un vector para almacenar los datos. También es posible como dices, llamar a cada radio con un nombre de variable diferente como r1, r2. Haz lo que te resulte más cómodo. 15. Generar filas de asteriscos en Matlab
Genera filas de asteriscos en Matlab, de modo que de un resultado similar a este: ***** **** *** ** *
16. Generar filas de asteriscos en Matlab (en pirámide)
Genera en Matlab una pirámide de asteriscos de n filas (invertida):
17. Buscar posición de una letra en una cadena
Busca la primera posición de una letra en una cadena de texto en Matlab.
18. Detectar tipo de triángulo dados sus lados
Dados los lados de un triángulo determinar si es un triángulo equilátero, isósceles o escaleno, si es que existe.
19. Calcular coeficiente binomial
Crea un programa en Matlab que calcule el coeficiente binomial
! ( ) !∗−! ,
siendo n, m > 0 , numeros pedidos al usuario.
20. Números primos gemelos Matlab
Dos números son primos gemelos si están separados a una distancia de 2. Ejemplos: 5-7; 3-5 Determina una lista con los primeras n parejas de números primos gemelos.
21. Calcular letra del DNI en Matlab
Crea un programa que devuelva la letra de un DNI aportando sólo la parte numérica. La letra del DNI (España) no es arbitraria, sino que se obtiene de la siguiente manera: El resto de dividir el número completo entre 23 se le asigna un valor recogido en esta tabla:
22. Solución de sistemas de ecuaciones lineales
23) Derivacion simbolica : deriva y grafica una funcion
24) Derivacion numerica : deriva y grafica una funcion
25) Derivacion de orden superior
26) Derivada parcial de una funcion de varias variables
23) Integracion simbolica o integral indefinida de dos variables
28) Integracion numerica o definida de dos variables