Savelyev_Vyacheslav

task_1_1ver5

Oct 20th, 2021 (edited)
230
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 2.83 KB | None | 0 0
  1. % %https://base-n.de/matlab/code_beautifier.html
  2. % 1.1
  3. % Написать скрипт, в первом блоке которого генерируются
  4. % случайные координаты
  5. % двух точек в декартовых осях
  6. % (в диапазоне от -10 до 10 по каждой координате)
  7. clear
  8. clc
  9. close all % закрыть окна
  10. Pts2per2 = rand(2, 2) - rand(2, 2);
  11. Pts2per2 = Pts2per2 * 10;  % матрица готова
  12.  
  13. %Pts2per2 = [0, 1; 1, 1] * 10;  % для проверки вертикального графика и горизонтального
  14.  
  15.  
  16. % построить в графическом окне обе точки и прямую, проходящую через них;
  17. grid on % включает сетку
  18. hold on % включает наложение графиков
  19.  
  20. % для проверки составления прямой А и В
  21. plot(Pts2per2(1, 1), Pts2per2(1, 2), '*k'); % первая точка А
  22. plot(Pts2per2(2, 1), Pts2per2(2, 2), '*y'); % вторая точка В
  23.  
  24. % вывести в командное окно уравнение этой прямой (в виде y = 4*x - 0.75);
  25.  
  26. ugolGraf4 = (Pts2per2(1, 2) - Pts2per2(2, 2)) / (Pts2per2(1, 1) - Pts2per2(2, 1)); % % https://ru.wikipedia.org/wiki/%D0%A3%D0%B3%D0%BB%D0%BE%D0%B2%D0%BE%D0%B9_%D0%BA%D0%BE%D1%8D%D1%84%D1%84%D0%B8%D1%86%D0%B8%D0%B5%D0%BD%D1%82
  27. num075 = Pts2per2(1, 2) - (Pts2per2(1, 1) * ugolGraf4);
  28. PointsX = - 10:(1):10;
  29. PointsY = ugolGraf4*PointsX + num075; % Готовы точки графика по Х и У
  30.  
  31. % if (Pts2per2(1, :) == Pts2per2(2, :)) % точка первая равна точке второй A==B
  32. %     PointsX = - 10:(1):10;
  33. %     num075 = Pts2per2(1, 1);
  34. %     PointsX = (PointsX - PointsX) + num075;
  35. %     PointsY = PointsX;
  36. %     plot(PointsX, PointsY, '.b-');
  37. %     disp(['Функция F(x) = ', num2str(num075), '; x = ', num2str(num075)]);
  38. %     return;
  39. % end
  40. % if (Pts2per2(1, 1) == Pts2per2(2, 1)) % X1 == X2 иксы равны
  41. %     num075 = Pts2per2(1, 1);
  42. %     PointsX = (PointsX - PointsX) + num075;
  43. %     PointsY = - 10:(1):10;
  44. %     plot(PointsX, PointsY, '.b-');
  45. %     disp(['Функция F(x) = (-inf,+inf)', '; x = ', num2str(Pts2per2(1, 1))]);
  46. %     return;
  47. % end
  48. % if (Pts2per2(1, 2) == Pts2per2(2, 2)) % Y1 == Y2 игрики равны
  49. %     num075 = Pts2per2(1, 2);
  50. %     PointsX = - 10:(1):10;
  51. %     PointsY = (PointsY - PointsY) + num075;
  52. %     plot(PointsX, PointsY, '.b-');
  53. %     disp(['Функция F(x) = ', num2str(Pts2per2(1, 1)), '; x = (-inf,+inf)']);
  54. %     return;
  55. % end
  56.  
  57. plot(PointsX, PointsY, '.b-');
  58. if (num075 < 0)
  59.     disp(['Функция F(x) = ', num2str(ugolGraf4), '*x - ', num2str(abs(num075))]);
  60. else
  61.     disp(['Функция F(x) = ', num2str(ugolGraf4), '*x +', num2str(abs(num075))]);
  62. end
  63.  
  64.  
Add Comment
Please, Sign In to add comment