% ------------------------------------------------------------------ % % PROGRAMA DE USO GENERAL % % ------------------------------------------------------------------ clc; % Borrar la consola clear all; % Borrar todas las vars close all; % Cerrar todas ventanas % Al estar despurando mejor no usarlo: warning off fprintf('INICIO DEL PROGRAMA.\n'); fprintf('\n'); %{ fprintf('\n Estamos fuera del bucle, antes de entrar.\n'); for i = 100:-1:1 if (i == 5) fprintf('\n\nLa variable i vale 50 !!!!!!!!! \n\n'); break; end switch (i) case 10 fprintf('La variable i hemos visto que vale 10 ******.\n'); case 20 fprintf('La variable i hemos visto que vale 20 ******.\n'); case 30 fprintf('La variable i hemos visto que vale 30 *******.\n'); otherwise fprintf('La variable i vale %d. \n', i ); end end fprintf('\n Estamos fuera del bucle, después de salir.\n'); nombre = input('Introduzca su nombre): ', 's'); fprintf('Hola %s.\n', nombre); fprintf('A continuación vamos a pedir la dimensión de la matriz a generar automáticamente.\n'); dimension = input('Introduzca la dimensión (número entero): '); fprintf('El grado insertado ha sido %d.\n', dimension); matriz_inicial = rand(dimension); disp('La matriz generada inicial es:'); disp(matriz_inicial); fprintf('La matriz exponencial obtenida es:\n'); [matriz_exponencial] = calcular_matriz_exponencial(matriz_inicial); analisis_de_nan = isnan( matriz_exponencial ); if ( analisis_de_nan (:,:) == 1 ) disp('La matriz se ha vuelto demasiado grande, con lo que no puede ser analizada.'); else disp( matriz_exponencial ); fprintf('A continuación vamos a comprobar si está bien calculada.\n\n'); matriz_nula = matriz_exponencial - exp(matriz_inicial); if matriz_nula(:,:) == 0 disp('La matriz está bien calculada.'); else disp('La matriz no está calculada exactamente y la resta de ambas es:'); disp( matriz_nula ); end end disp('SERIE DE FIBONACCI'); disp('A continuación vamos a mostrar los n primeros números de la Serie de Fibonacci'); numeros = input('Introduzca cuántos números desea (número entero): '); fprintf('A continuación se generarán los números %d pedidos.\n', numeros); if ( floor(numeros) == numeros ) disp('Generación de los números de Fibonacci.'); array_fibonacci = zeros(1,numeros); array_fibonacci (1) = 1; array_fibonacci (2) = 2; for k = 3:numeros array_fibonacci (k) = array_fibonacci (k-1) + array_fibonacci (k-2); end cadena_salida = '{ '; for n = 1:numeros if ( n == numeros ) cadena_salida = strcat( cadena_salida, ' y '); elseif ( n ~= 1 ) cadena_salida = strcat( cadena_salida, ' , '); end cadena_salida = strcat( cadena_salida, sprintf(' %d ', array_fibonacci(n)) ); end cadena_salida = strcat( cadena_salida, ' }'); disp( cadena_salida ); else disp('No ha insertado un número entero. El programa terminará sin más.'); end disp('PROGRESIÓN GEOMÉTRICA'); valorinicial = 3 ; razongeometrica = 1.01 ; for n = 0:500 fprintf('El elemento %d vale %d.\n', n, valorinicial * razongeometrica^n ); end %} eje_abcisas = 1:100; valores_ordenadas = randi(8,1,100); figure(1); hfig1 = gcf ; hfig1.Name = '-- Figura número 1 ***********'; bar( eje_abcisas , valores_ordenadas ); title('Axes1'); grid on; figure(2) hfig2 = gcf ; hfig2.Name = '-- Figura número 2 xxxxxxxxxx' ; histogram(valores_ordenadas); title('Axes2'); figure(3); hfig3 = gcf ; hax3 = gca ; hfig3.Name = '-- Figura número 3 --' ; scatter( eje_abcisas , valores_ordenadas ); title('Axes3'); fprintf('\n'); fprintf('FIN DEL PROGRAMA.\n');