Sie sind auf Seite 1von 6

Programación Cientifica

Tema 4. Programación con Matlab

Primer Curso de Grado en Física


(Primer cuatrimestre)

Prof. Mercedes Marín Beltrán


Sebastián Ventura Soto

Relación de Algoritmos

Curso 2015 – 2016

Universidad de Córdoba
Dpto. Informática y Análisis Numérico

merche@uco.es; sventura@uco.es
Práctica 2

1. A LGORITMOS NUMÉRICOS

Algoritmo.A 1. Escribe un programa M ATLAB que nos pida un número natural e imprima, de forma
descendente, los números impares que hay menores que ese número. Utiliza un bucle
condicional while.

Algoritmo.A 2. Escribe un programa M ATLAB que nos pida un número natural, imprima los números
impares que hay entre 1 y ese número incluido, de forma ascendente, imprima cuántos
hay y la suma de los cuadrados de todos ellos. Utiliza un bucle indexado for.

Algoritmo.A 3. Escribe un programa M ATLAB que imprima la suma de los números pares del 20 al 240.
Hazlo de dos formas, la primera de ellas con un bucle y la segunda usando la función
de array sum.

Algoritmo.A 4. Utiliza bucles para crear una matriz de dimensión (5 × 4), en la que cada elemento sea
el producto de sus índices. Por ejemplo, el valor del elemento A(2, 5) será 10.

Algoritmo.A 5. Escribe un programa M ATLAB que nos pida ocho números, los guarde en un vector,
calcule su media aritmética y nos la muestre por pantalla. Usa los mandatos sum y
length. Comprueba que lo has hecho bien usando después la orden mean.

Algoritmo.A 6. Escribe un programa M ATLAB que imprima los números naturales pares múltiplos de
4 y 5 que hay entre 20 y 200 y que imprima cuántos hay de cada tipo.

Algoritmo.A 7. Escribe un programa M ATLAB que encuentre el menor número entero par que sea di-
visible por 5 y cuyo cuadrado sea mayor que 3000. Utiliza un bucle condicional que
empiece en 2 y se detenga cuando encuentre el número que cumpla las condiciones
anteriores. Finalmente, el programa mostrará por pantalla el mensaje: ’ El número pe-
dido es:’, y visualizará seguidamente el número calculado.

Algoritmo.A 8. Escribe un programa que pida dos números y devuelva como resultado si los números
son iguales. Si no lo son, devolverá como resultado el mayor de los dos. Escribe dos
versiones, una utilizará la función max y la otra no.

Algoritmo.A 9. Escribe un programa que calcule los cuadrados de los 20 primeros naturales los guarde
en un vector y los muestre por pantalla.

Algoritmo.A 10. Escribe un programa que pida dos números y devuelva como resultado si los números
son iguales. Si no lo son, devolverá como resultado el menor de los dos. Escribe dos
versiones, una utilizará la función min y la otra no.

Algoritmo.A 11. Escribe un programa M ATLAB que imprima los números pares que hay entre 1 y 10, de
forma ascendente. Utiliza un bucle condicional while.

Algoritmo.A 12. Escribe un programa M ATLAB que imprima los números pares que hay entre 1 y 10, de
forma ascendente. Utiliza ahora un bucle indexado for.

Algoritmo.A 13. Escribe un programa M ATLAB que imprima los números impares que hay entre 1 y 10
y que imprima cuántos impares hay. Utilizar un bucle condicional while.

Universidad de Córdoba Programación Científica. Curso 2015 – 2016


Práctica 3

Algoritmo.A 14. Escribe un programa M ATLAB que imprima los números impares que hay entre 1 y 10
y que imprima cuántos impares hay. Utilizar un bucle indexado for.

Algoritmo.A 15. Escribe un programa M ATLAB que imprima la suma de los números naturales del 1 al
100. Usar un bucle condicional while.

Algoritmo.A 16. Escribe un programa M ATLAB que imprima la suma de los números naturales del 1 al
100. Usa un bucle indexado for.

Algoritmo.A 17. Escribe un programa M ATLAB que imprima la suma de los números naturales del 1 al
100. Usa la función de array sum.

Algoritmo.A 18. Escribe un programa M ATLAB que imprima los cuadrados de los números pares que
hay entre 1 y 10 y que imprima la suma de los cuadrados de dichos números pares.
Usa un bucle indexado for.

Algoritmo.A 19. Escribe un programa M ATLAB que imprima los cuadrados de los números pares que
hay entre 1 y 10 y que imprima la suma de los cuadrados de dichos números pares.
Usa la función de array sum.

Algoritmo.A 20. Suponiendo que no dispones del operador potencia, escribe un programa M ATLAB
que, dada la base (número real) y el exponente (número natural, incluido el 0), cal-
cule la base elevada al exponente.

Algoritmo.A 21. Escribe un programa M ATLAB que permita saber si una persona es mayor o menor de
edad. La mayoría de edad se considera a los 18 años.

Algoritmo.A 22. Escribe un programa M ATLAB que imprima los números naturales múltiplos de 7 ó 13
que hay entre 1 y 1000 y que imprima cuántos hay de cada tipo.

Algoritmo.A 23. Escribe un programa M ATLAB que imprima la suma de los números impares del 1 al
200. Usar un bucle condicional while.

Algoritmo.A 24. Escribe un programa M ATLAB que imprima la suma de los números impares del 1 al
200. Usa un bucle indexado for.

Algoritmo.A 25. Escribe un programa M ATLAB que imprima la suma de los números impares del 1 al
200. Usa la función de array sum.

Algoritmo.A 26. Escribe un programa M ATLAB que imprima los cubos de los números impares que hay
entre 15 y 40 y que imprima la suma de los cubos de dichos números impares. Usa un
bucle indexado for.

Algoritmo.A 27. Escribe un programa M ATLAB que imprima los cubos de los números impares que hay
entre 15 y 40 y que imprima la suma de los cubos de dichos números impares. Usa la
función de array sum.

Algoritmo.A 28. Escribe un programa M ATLAB que imprima la media aritmética de los números impa-
res que hay entre 150 y 300, sin usar el mandato mean. Usa un bucle indexado for.

Algoritmo.A 29. Escribe un programa M ATLAB que imprima la media aritmética de los números impa-
res que hay entre 150 y 300. Usa los mandatos sum y size.

Universidad de Córdoba Programación Científica. Curso 2015 – 2016


Práctica 4

Algoritmo.A 30. Escribe un programa M ATLAB que imprima los números naturales múltiplos de 5 ó 12
que hay entre 1 y 100 y que imprima cuántos hay de cada tipo.

Algoritmo.A 31. Escribe un programa M ATLAB que solicite al usuario la entrada por teclado de dos nú-
meros y que calcule la suma de los números pares y la media aritmética de los números
impares que hay entre los números solicitados (ambos inclusive).

Algoritmo.A 32. Escribe un programa M ATLAB que rellene un vector de 10 casillas con números pedidos
al usuario, calcule el máximo de los números situados en casillas pares y lo muestre por
pantalla.

Algoritmo.A 33. Escribe un programa M ATLAB que solicite un número entero y averigüe si es primo o
no.

2. A LGORITMOS DE APLICACIÓN

π
Algoritmo.B 1. Sabemos que tan = 1. De esta forma se puede calcular π = 4 arctan(1). Por otra parte,
4
el desarrollo en serie de Taylor de arctan(x) es:
x3 x5
arctan(x) = x − + −···
3 5
Usando ambas expresiones, se puede calcular el valor de π como la suma de la siguien-
te serie:
∞ (−1)n
π=4
X
.
n=0 2n + 1
Realiza un programa que, utilizando el desarrollo en serie anterior, aproxime el valor
de π. El programa pedirá el número de sumandos a considerar, realizará la suma, la
sacará por pantalla y calculará e imprimirá por pantalla el error cometido entre el valor
de π que nos ofrece M ATLAB y el obtenido por la suma parcial.

Algoritmo.B 2. La ley de Stokes describe la resistencia al movimiento de una esfera a través de un


fluido viscoso en una región de flujo laminar:

F r = 6πv R µ,

Fr ≡ resistencia al movimiento,
v ≡ velocidad de la esfera (m/s),
donde:
R ≡ radio de la esfera (m),
µ ≡ viscosidad del fluido (N · s/m2 ).
Escribe un programa M ATLAB que pida los valores de v, R y µ y muestre por pantalla
el valor de la resistencia F r .
El programa mostrará por pantalla una tabla con los valores resultantes para los si-
guientes datos:

Fluido µ (N · s/m2 ) v (m/s) R (m)


Glicerina (20°C) 1.5 0.03 0.03
Agua (20°C) 0.001 0.03 0.2
Aceite (20°C) 0.03 0.03 0.08

Universidad de Córdoba Programación Científica. Curso 2015 – 2016


Práctica 5

En la primera columna aparecerá el valor de la viscosidad, en la segunda de la veloci-


dad, en la tercera del radio y en la última el valor de la resistencia calculada.

Algoritmo.B 3. Escribe un programa M ATLAB que pida un número de días y muestre el equivalente
en meses y días sobrantes. Por simplicidad, supon que cada mes tiene 30 días. Por
ejemplo, 198 días equivales a 6 meses y 18 días.

Algoritmo.B 4. La ecuación del movimiento uniformemente acelerado viene dada por:

1
e = e 0 + v 0 t + at 2 ,
2

e ≡ desplazamiento en el tiempo t (m),


e0 ≡ desplazamiento inicial (m),
donde: v 0 ≡ velocidad inicial (m/s),
a ≡ aceleración (m/s2 )
t ≡ tiempo (s).
Escribe un programa M ATLAB que para los valores de e 0 , v 0 , a y t dados en la siguiente
tabla calcule el desplazamiento e.

e 0 (m) v 0 (m/s) a (m/s2 ) t (s)


390 8 -386 2
500 120 386 10
120 -150 40 6

El programa imprimirá por pantalla una tabla con 5 columnas, la primera con los va-
lores de t , la segunda con los valores de e 0 , la tercera con v 0 , la cuarta con a y la quinta
con los valores de e calculados.

Algoritmo.B 5. La fórmula de Stirling, aproxima el factorial de un número N y viene dada por:

µ ¶N
p N
N ! ≈ 2πN
e
Escribe un programa M ATLAB que pida el número N , calcule N ! usando esta fórmula
y usando el mandato factorial de M ATLAB y muestre por pantalla ambos valores.
Probarlo con
N = 7, 9 y 11.

Algoritmo.B 6. Escribe un programa M ATLAB que imprima por pantalla una tabla de temperaturas en
grados Fahrenheit (F) , de 0 a 10 grados en intervalos de 2 grados, y su correspondencia
en grados Celsius (C) y grados Kelvin (K). Haz que el programa imprima también el
encabezado de cada columna en la tabla. Las ecuaciones de conversión son:

5(F − 32)
C= ,
9
K = C + 273, 15

Universidad de Córdoba Programación Científica. Curso 2015 – 2016


Práctica 6

Algoritmo.B 7. Usando el desarrollo de Taylor de la función exponencial e x se puede calcular el valor


del número e como la suma de la siguiente serie:

X∞ 1
e= .
n=0 n!

Realiza un programa que, utilizando el desarrollo en serie anterior, aproxime el valor


de e. El programa pedirá el número de sumandos a considerar, realizará la suma, la
mostrará por pantalla y calculará e imprimirá por pantalla el error cometido entre el
valor de e que nos ofrece M ATLAB (e=exp(1)) y el obtenido por la suma parcial.

Algoritmo.B 8. Se tiene que 1 km equivale a 3280.839895 pies, 1093.613298 yardas y 0.621371192 mi-
llas. Construye una tabla de cuatro columnas, la primera contendrá los kilómetros des-
de 1 hasta 10, la segunda contendrá su equivalente en pies, la siguiente en yardas y la
última en millas.

Algoritmo.B 9. Haz un programa M ATLAB que imprima una tabla de cuatro columnas en donde la
primera sea el valor de un ángulo entre 0o y 30o de grado en grado, la segunda sea
el ángulo correspondiente en radianes, la tercera el valor del seno correspondiente a
cada ángulo y la cuarta sea el valor del coseno.

Algoritmo.B 10. Escribe un programa M ATLAB que calcule la nota media obtenida en 8 asignaturas.
El programa irá pidiendo una a una las notas asegurándose que cada una está en el
intervalo [0, 10], si la nota introducida es menor que 0 o mayor que 10 volverá a pedirla.

Universidad de Córdoba Programación Científica. Curso 2015 – 2016

Das könnte Ihnen auch gefallen