UPC/1sem/octave/03/main.m
2019-11-22 22:51:59 +07:00

73 lines
No EOL
1.4 KiB
Matlab
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Часть 1
# Номер варианта
V = 33
# Инициализация ГПСЧ номером варианта
rand('state', V)
# Часть 2
# Вектор чисел 1..100
v1 = 1:100
v2 = randi([0, 1], [1, 100])
# Суммируем векторы v1 и v2
v3 = v1 + v2
v3 = v3 .* ~mod(v3, 2)
# Часть 3
# Создаём вектор из 99*V случайных значений на 0..3
r = rand([1, 99*V]) .* 3;
t = 0:0.01:3;
# Функция, находящая кол-во элементов r < t
f = @(x) length(r(r < x));
figure;
plot(t, arrayfun(f, t));
print("3.png")
# Часть 4
# Рисуем 4 ломаных линии в одной плоскости
figure;
plot(rand([V+12, 4]), rand([V+12, 4]));
print("4.png")
# Часть 5
# Рисуем 4 ломаных линии в одном пространстве
figure;
plot3(rand([V+12, 4]), rand([V+12, 4]), rand([V+12, 4]));
print("5.png")
# Часть 6
# Рисуем спираль с 3 + V витков
t = 0:pi/20:2*pi*(3+V);
r = t .^ 2;
x = r .* cos(t);
y = r .* sin(t);
figure;
plot(x, y);
print("6.png")
# Часть 7
# Построить в пространстве график функции z=cos(0.5Vx)x3+y2 в
# виде незакрашенной сетки и в виде закрашенной поверхности в
# области от -4 до 4 по каждой координате с шагом 0,1. В
# обоих случаях подписать оси координат.
X = -4:0.1:4;
Y = -4:0.1:4;
[x, y] = meshgrid(X, Y);
z = (cos(x .* (V*0.5)) .* x.^3) + y.^2;
figure;
mesh(z)
xlabel("x");
ylabel("y");
zlabel("z");
print("7_1.png")
figure;
surf(z)
xlabel("x");
ylabel("y");
zlabel("z");
print("7_2.png")
# Часть 11
nflip = 9*V
nexp = 1001+V
s = flip_stats(nflip, nexp)
result = s / nexp
figure;
bar(result)
print("11.png")