Advertisement
Savelyev_Vyacheslav

lesson5

Sep 8th, 2021
1,547
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 3.15 KB | None | 0 0
  1. %
  2. clear
  3. clc
  4. ch = log(2)/log(1.1); % вычисление логорифмов log(2)/log(1.1) = lg 1.1(2)
  5.  
  6. % function [входные аргументы] = имя (выходные аргументы)
  7. % от 1 до 10^3 вывести числа
  8. clear
  9. clc
  10.  
  11. for k = 1:1000
  12.     if isPrime(k)
  13.         disp(k);
  14.     end
  15. end
  16. % в фаиле скрипте всегда пишем функции под исполняемым кодом
  17. % функции можно сохранять в файлах
  18.  
  19. % ugly(1,1,1) - функция углы описана ниже, а вызывается выше
  20. clear
  21. clc
  22. ugly(1,1,1)
  23. % MySort(Mass1); - функция сортировки пузырьком
  24. clear
  25. clc
  26. Mass1 = rand(1,10000);
  27. Mass2 = Mass1;
  28. tic;  % tic - начало измерения времени
  29. MySort(Mass1);
  30. t1 =toc; % toc - завершение измерения времени
  31. tic;
  32. sort(Mass2);
  33. t2=toc;
  34. disp(['Быстрее в ', num2str(t1/t2)]);
  35. % график
  36. clear
  37. clc
  38. close all % закрывает все графические окна перед запуском нового окна
  39. t = 0:0.01:10;
  40. x = sin(t)+0.1*(rand(size(t))-1/2)*2;
  41. plot(t,x);
  42. hold on % включает наложение графиков
  43. grid on % включает сетку
  44. SglazhennyiMassiv = sliding_av(x,10);
  45. plot(t,SglazhennyiMassiv);
  46. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  47. % ниже описаны исполняемы функции
  48.  
  49. function [y]= sliding_av(x,w) %  функция выравнивания графика где x - это массив, w - это шаг диапозон сглаживания
  50.     for k=1:length(x)
  51.         d_s = max(k-w,1);
  52.         d_e = min(k+w,length(x));
  53.         y(k)= mean(x(d_s:d_e)); % mean(x) - берет среднее от массива
  54.         % при X = 50 d_s = 40  d_e = 60 mean(x(d_s:d_e)) - это среднее в
  55.         % диапозоне от d_s до d_e
  56.     end
  57. end
  58.  
  59.  
  60. function [x]= MySort(x) %  функция сортировки
  61.     for N = length(x):-1:2
  62.         for k = 1:N-1
  63.             if x(k)>x(k+1)
  64.                 buf = x(k+1);
  65.                 x(k+1)=x(k);
  66.                 x(k)=buf;
  67.             end
  68.         end
  69.     end
  70. end
  71.  
  72.  
  73. function[AcosX] = my_cos(X,Y,Z)
  74.     cosX =  (Y^2+Z^2-X^2)/(2*Y*Z);
  75.     AcosX = rad2deg(acos(cosX));
  76. end
  77.  
  78. function  ugly(A,B,C)
  79.     Max = max([A,B,C]); % ищет максимум в массиве
  80. Summ = sum([A,B,C]); % суммирует все числа массива
  81. bool_ = Max > Summ - Max;
  82. if bool_
  83.    disp('Не существует');
  84. else
  85.     ugA = my_cos(A,B,C);
  86.     ugB = my_cos(B,C,A);
  87.     ugC = my_cos(C,A,B);
  88.     disp(['ugA=', num2str(ugA),' ugB=', num2str(ugB),' ugC=', num2str(ugC),]);
  89. end
  90. end
  91.  
  92.  
  93.  
  94. function [isP] = isPrime(N)  % создание функции
  95. isP = true;
  96.     for k=2:sqrt(N)
  97.         if mod(N,k) == 0
  98.             isP = ~isP;
  99.             return
  100.         end
  101.     end
  102. end
  103.  
  104. function [num] = my_max(A,B)  % создание функции
  105.     if A>B
  106.         num = 1;
  107.     elseif A<B
  108.         num = 2;
  109.     else
  110.         num = 'равны';
  111.     end
  112. end
  113.  
  114.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement