Vous êtes sur la page 1sur 5

Ejercicios propuestos.

1. Hacer un programa que pida un nmero N y despliegue todas las


combinaciones de dos nmeros que sumados den N.
Solucin:

%Inicio
N=input ('Dame un valor: ');
M=0;
while M<=N
S=0;
while S<=N
if N==M+S;
fprintf('Combinacion: %d=%d+%d\n',M+S,M,S)
%disp(M)
%disp(S)
end
S=S+1;
end
M=M+1;
end
disp ('Fin de programa')

2. Hacer un programa que despliegue la tabla de multiplicar de un nmero X.
Solucin:

%Inicio
%Pedir un valor y guardarlo en la variable N
N=input ('dame un numero para multiplicar: ');
S=0 ;
%Dar un valor para que realice la multiplicacion en forma de bucle
while S<=10
A=N*S;
disp (A)
S=S+1;
end
disp ('Fin de programa');

3. Hacer un programa para calcular la factorial de un nmero.
Solucin:

%Inicio
%Pedir un valor y guardarlo en la variable N

N=input ('Dame un numero para hayar su factotial');
T=1;
S=1;
while S<=N
T=T*S;
S=S+1;
end
disp ('El factorial es: ')
disp (T)
disp ('Fin de programa');

4. Hacer un programa que pida un nmero y vaya decreciendo su valor en una
unidad hasta que llegue a cero
Solucin:

% Inicio

n=input('Dame un valor: ')

% Crear un bucle que haga un decremento de una unidad por ciclo.

while n~=0
n=n-1;
disp(n)
end

% Fin

dips('Fin de programa')


5. Hacer un programa que recoja nmeros del usuario hasta que se introduzca un
0 y despus devuelva la media de los nmeros introducidos.
Solucin:

% Inicio

n=input('Dame un valor: ')

% Nombramos una variable que cuente el numero de veces que se realiza el
% ciclo (contador)

c=1;

% Nombramos una variable pra que se acumule n en cada ciclo

v=0;
while n~=0
c=c+1;
v=v+n;
n=input('Dame un valor: ')
end

% Calculamos la media y la imprimimos en pantalla

m=v/c;
disp('La media es: ')
disp(m)

% Fin

disp('Fin de programa')

6. Hace un programa que pida un nmero hasta que este nmero sea mayor que
cero, indicando con un mensaje que el nmero introducido no es mayor de
cero.
Solucin:

% Inicio

n=input('Dame un valor: ');

% comprobar que el numero introducido es menor que cero

if n>=0
disp ('El numero introducido es mayor que cero o es cero')
else
while n<0
n=input('Reintroduce el valor correcto: ');
end
disp('El numero introducido es mayor que cero')
end
disp('Fin del programa')


7. Hacer un programa para imprimir la sucesin de Fibonacci.
Solucin:

%Inicio
N=input('Dame un numero de N: ');
X=0;
Y=1;
C=0;
while C<N
C=X+Y;
disp(C)
Y=X;
X=C;
end
dis('Fin de programa')

8. Hacer un programa que pida un nmero y compruebe si ese nmero es primo.
Solucin:

% Inicio

n=input('Dame un valor: ');

% Introducir un valor por el cual empezar a dividir el numero n

c=n/2;

% Operar y comprobar si n es primo

while mod(n,c);
c=c-1;
end

% Ahora al salir del bucle debemos diferenciar si c es 1 o no

if c==1
disp('Es primo')
else
disp('No es primo')
end
disp('Fin del programa')

9. Hacer un programa que recoja una edad y diga si es menor de edad, mayor de
edad o de la tercera edad.
Solucin:

%Inicio
%1.Pedir un la edad y guardarlo en la variable A
A=input ('Cuantos aos tienes?')
%2. Comparar si A<18, si lo es imprimir en pantalla que A
% es menor de 18 aor
if A<18
disp ('Es menor de edad')
%3. Comparar si A>=60, si lo es imprimir en pantalla que A
% es de la tercera edad
elseif A>=60
disp ('Es de la tercera edad')
else A<60
disp ('Es mayor de edad')
end
disp ('Fin de programa')


10. Hacer un programa que recoja los valores (i y j). Que escriba POSITIVO si los
dos son positivos, NEGATIVO si los dos son negativos o MEZCLADO si uno
es positivo y el otro negativo.
Solucin:

%Inicio
%1.Pedir un valor y guardarlo en la variable I
I=input ('Cuanto vale I?: ')
%2.Pedir un valor y guardarlo en la variable J
J=input ('Cuanto vale J?: ')
%3. Comparar si I>0
if I>0

if J>0
disp ('POSITIVOS')
elseif J<0
disp ('MEZCLADOS')
end

elseif I<0
disp ('NEGATIVO')
end
disp ('Fin de programa')

11. Generalizar el programa que calcula las races de la ecuacin cuadrtica para
que responda correctamente tambin en el caso de races imaginarias, es decir
si el discriminante es negativo.
Solucin:

% Inicio
% 1.Introducir coeficientes
a=input('Dame el valor del coeeficiente que acompaa a x^2: ')
b=input('Dame el valor del coeeficiente que acompaa a x: ')
c=input('Dame el valor del termibo independiente: ')
if (b*b-4*a*c)>0
R1=(-b+sqrt(b^2-4*a*c))/(2*a)
R2=(-b-sqrt(b^2-4*a*c))/(2*a)
disp('Las soluciones son')
disp(R1)
disp(R2)
else
i=sqrt(-1)
Ri1=(-b+sqrt(-(b^2-4*a*c))*i)/(2*a)
Ri2=(-b-sqrt(-(b^2-4*a*c))*i)/(2*a)
disp('Las soluciones son')
disp(Ri1)
disp(Ri2)
end
disp('Fin de programa')