Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Repaso Matlab
Repaso Matlab
Programación en Matlab
1) while …. End
while condicion
Instrucciones
end
2) for
for v = vi : inc: vf
Instrucciones
end
donde :
vi: valor inicial
inc: incremento
vf: valor final
for v=vi:vf
Instrucciones
end
Ejemplo mientras 01
Ejecución
Ejemplo mientras 02
Ejecución
Ejemplo mientras 03
Ejecución
Ejemplo for 01
Ejecución
Ejemplo for 02
Ejecución
Ejemplo for 03
Ejecución
Ejemplo repetitivo 01
Ejecución
Ejemplo repetitivo 02
Ejecución
Acumulador: Variable que comienza con un valor inicial que generalmente es cero y
se incrementa una cantidad variable
Inicializamos S=0
Y en el proceso de suma
S = S + valor_a_sumar;
Ejemplo repetitivo 03
Ejecución
Ejemplo repetitivo 04
Ejecución
Ejemplo repetitivo 05
Ejecución
Ejemplo repetitivo 06
Ejecución
Ejemplo repetitivo 07
Ejecución
Multiplicador: Variable que comienza con un valor inicial que generalmente es uno y
se multiplica una cantidad variable
Inicializamos P = 1;
Y en el proceso de multiplicación
P = P * valor_a_multiplicar;
Ejemplo repetitivo 08
Ejecución
Ejemplo repetitivo 09
Ejecución
Ejemplo 10
Calcular la suma de los n términos de la siguiente serie:
Ejecución
Ejemplo 11
Ejecución
Ejemplo 12
Ejecución
Ejemplo 13
Calcular la sumatoria:
Ejecución
Ejercicios Resueltos
clc
n=input('ingrese numero :');
disp('Los divisores son ');
for i=1:n
if rem(n,i)==0
fprintf('%d ',i);
end
end
clear all
clc
n=input('Ingrese numero :');
s=0;
for i=1:n-1
if rem(n,i)==0
s= s+i;
end
end
if n==s
disp('es perfecto');
else
disp('no es perfecto');
end
clear all
clc
n=input('Ingrese numero :');
cd=0;
for i=1:n
if rem(n,i)==0
cd= cd+1;
end
end
if cd==2
disp('es primo');
else
disp('no es primo');
end
clc
clear all
n1=input('Primer numero :');
n2=input('Segundo numero :');
d=2;
mcd=1;
while d<=n1 & d<=n2
if rem(n1,d)==0 & rem(n2,d)==0
mcd=mcd*d;
n1=n1/d;
n2=n2/d;
else
d=d+1;
end
end
fprintf('El m.c.d. es : %d ',mcd);
clc
clear all
n1=input('Primer numero :');
n2=input('Segundo numero :');
d=2;
mcm=1;
while n1~=1 | n2~=1
if rem(n1,d)==0 | rem(n2,d)==0
mcm=mcm*d;
if rem(n1,d)==0
n1=n1/d;
end
if rem(n2,d)==0
n2=n2/d;
end
else
d=d+1;
end
clc;
n=input('Ingrese numero :');
x=n;
cd=0;
while x>0
dig= rem(x,10);
cd=cd+1;
x=fix(x/10);
end
fprintf('El numero %d tiene %d digitos ',n,cd);
clc;
n=input('Ingrese numero :');
x=n;
disp('El numero al reves es :');
while x>0
dig= rem(x,10);
fprintf('%d',dig);
x=fix(x/10);
end
Ejercicios Propuestos
1) Ingresar un numero N entero positivo y reportar la suma de los números desde 1
hasta N.
2) Ingresar N números enteros positivos y reporte la suma de pares.
3) Reportar la suma de los N términos de la serie:
1, 4, 7, 10, 13..
4) Hacer un programa para calcular el valor de XN. X real y N entero. (No usar el
operador ^).
5) Determinar la suma de los N términos de la serie:
X + X2 + X3 + X4 + ….
6) Hacer un programa que dado un valor de x, calcule el valor de la función:
f(x) = 1 – x + x2/2! – x3/3! + x4/4! – x5/5! + …
Tenga en cuenta solo los términos de la serie que en valor absoluto son mayores o
iguales a 0.001
7) Reportar los N términos de la serie:
17, 15, 18, 16, 19, 17, 20, 18, 21,…
8) Hacer un programa que reporte los términos de la sucesión:
2, 5, 7, 10, 12, 15, 17…. 1800
Además debe imprimir la suma de los términos.
9) Sea n un entero positivo. Si n es par, divídalo entre 2, sino lo es, multiplíquelo por 3
y súmele 1. Realice este proceso hasta que el número que alcance sea 1. Realice un
programa en C que implemente dicho proceso. Imprima los números que van
obteniendo. Por Ejemplo:
Para n = 10 la sucesión generada es: 10 5 16 8 4 2 1
10) Como parte de un experimento un biólogo requiere tomar la temperatura exterior
de un lugar cada hora por un periodo de 6 horas. Realice un programa que reciba
como datos las temperaturas tomadas y determine la mayor y la menor.
11) Generar un número aleatorio entre 1 y 100 y trate de adivinarlo. El resultado debe
orientar según el resultado con los mensajes, “alto” y “bajo”. Al final debe mostrar
el número de intentos en los que adivino el número.
12) Generar n notas aleatoriamente y reportar el promedio, la nota mayor y la nota
menor.
13) Hacer un programa que simule varios lanzamientos de un dado hasta obtener un
seis. Muestre los puntajes del dado mientras se vayan generando y muestre al final
cuantos lanzamientos fueron necesarios efectuar.
14) Hacer un programa que genere números aleatorios entre 300 y 1000 hasta obtener
un número múltiplo de 7. Se debe mostrar los números generados, su suma, el mayor
y el menor.
15) Hacer un programa que genera la nota de n alumnos y que imprima cada nota y al
costado tantos asteriscos como indique la nota.
16) Escribir un programa que lea 3 números enteros positivos a, b, n>0, calcule la
sumatoria de :
1! 2! 3! 4! (n+1)!
- + - + .....
A A+B A + 2B A + 3B A + nB
17) Escriba un programa que lea 2 números X1 y X2 tal que X1<X2. Se debe calcular e
imprimir el valor de f(x) para todos los valores de X , desde X=X1 hasta x=X2
f(x) = 1 + x/3! – x2/5! + x3/7! – x4/9! + …
La sumatoria termina cuando se tiene un término: | Xn/Y! | < 0.001.
18) Escribir un programa que lea un número entero n>0 y que imprima los n términos de
la serie:
4, 12, 24, 40, 60........ Debe imprimir también la suma de los n términos.
19) Escribir un programa que lea un número entero n>0 y que imprima los n términos de
la serie:
4, 9, 15, 23, 34, 49,..... Debe imprimir también la suma de los n términos
20) Escribir un programa que calcule e imprima el valor de los n términos de la serie:
2, 1, 1, 2, 8, 64.......También se debe imprimir la suma de los n términos
21) Escribir un programa que calcule e imprime los N términos de la sumatoria
4/2 – 9/1 + 15/1 – 23/2 + 34/8 – 49/64 + ….
Debe imprimir como mínimo k términos por línea. También debe calcular la suma de
los N términos
22) Escribir un programa que permita leer dos números y reporte si son amigos.
Se dice que dos números son amigos si cada uno de ellos es igual a la suma de los
divisores (menores que el número) del otro. Ejemplo: 220 y 284 son amigos.
23) Escribir un programa para ingresar 3 números y reporte su máximo común divisor y
su mínimo común múltiplo.
24) Escribir un programa que para reducir un quebrado a su mínima expresión.
Ejemplos: 15/25 = 3/5 y 18/60 = 9/30 = 3/10
25) Escribir un programa que convierta un número de base b (entre 2 y 9) a un número
de base 10.
26) Convertir un numero de base n a un número de base m .
27) Escribir un programa que determine todos los números primos que se encuentran
entre 2 números n1 y n2.
28) Escribir un programa que permita mostrar en pantalla los N primeros números
primos.
29) Escribir un programa que permita mostrar todos los números perfectos menores
que 1000.
30) Escribir un programa que permita ingresar un número entero y reporte si es un
Cubo Perfecto. Un número es un cubo perfecto y es igual a la suma de sus dígitos al
cubo. Ejemplo 153 es cubo Perfecto porque 13 + 53+ 33 = 153.
31) Ingresar un número entero positivo y reportar el producto de sus dígitos y el mayor
de sus dígitos.
32) Ingresar N números de 2 dígitos y determinar cuál de ellos tiene la suma de
dígitos mayor
33) Escribir un programa que permita leer números enteros diferentes de cero y que al
finalizar imprima:
a.- El número mayor y el número menor.
b.- El total de números leídos.
c.- La cantidad de números positivos y números negativos.
El programa termina cuando se ingresa el cero.
34) Escribir un programa que lea las edades de personas y calcule la edad mayor, la
edad menor y la edad promedio.
El programa termina cuando se ingresa una edad menor o igual que cero.