Sunteți pe pagina 1din 15

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 “ax^2+bx+c = 0“ y
calcula sus soluciones. Trabaja sólo con números reales.

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 componentes son los valores:


X = -1.001+0.01*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 = x-
sen(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 siendo m y n dos numeros enteros que se


suponen dados
13. Sumatorio de los inversos de la sucesión de Fibonacci

𝑛 1
Se desea calcular la suma, s = ∑𝑘=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

S-ar putea să vă placă și