matlab 圆到正方形的逼近
clc,clear,close all;
% 创建一个范围内的 x 和 y 值
x = linspace(-1.5, 1.5, 100);
y = linspace(-1.5, 1.5, 100);
% 创建一个网格来表示 x 和 y 值的组合
[X, Y] = meshgrid(x, y);
% 计算方程的左边和右边的值
LHS1 = X.^2 + Y.^2;
RHS1 = 1;
LHS2 = X.^4 + Y.^4;
RHS2 = 1;
LHS3 = X.^6 + Y.^6;
RHS3 = 1;
LHS4 = X.^100 + Y.^100;
RHS4 = 1;
% 创建一个新的图形窗口
figure;
% 绘制第一个方程(红色)
contour(X, Y, LHS1-RHS1, [0, 0], 'LineWidth', 1, 'Color', 'red');
hold on;
% 绘制第二个方程(蓝色)
contour(X, Y, LHS2-RHS2, [0, 0], 'LineWidth', 1, 'Color', 'blue');
% 绘制第二个方程(绿色)
contour(X, Y, LHS3-RHS3, [0, 0], 'LineWidth', 1, 'Color', 'green');
% 绘制第二个方程(绿色)
contour(X, Y, LHS4-RHS4, [0, 0], 'LineWidth', 1, 'Color', 'cyan');
% 绘制 x 坐标轴
plot([-2, 2], [0, 0], 'k-') % 绘制水平线段
% 绘制 y 坐标轴
plot([0, 0], [-2, 2], 'k-') % 绘制垂直线段
% 调整图像的显示范围和纵横比
axis([-1.5 1.5 -1.5 1.5]);
daspect([1 1 1]);
% 添加图例和标签
legend('x^2 + y^2 = 1', 'x^4 + y^4 = 1', 'x^6 + y^6 = 1', 'x^100 + y^100 = 1');
xlabel('y');
ylabel('x');
title('方程图像');
绘制结果
加入奇数次
clc,clear,close all;
% 创建一个范围内的 x 和 y 值
x = linspace(-1.5, 1.5, 100);
y = linspace(-1.5, 1.5, 100);
% 创建一个网格来表示 x 和 y 值的组合
[X, Y] = meshgrid(x, y);
% 计算方程的左边和右边的值
LHS1 = X.^2 + Y.^2;
RHS1 = 1;
LHS2 = X.^4 + Y.^4;
RHS2 = 1;
LHS3 = X.^6 + Y.^6;
RHS3 = 1;
LHS4 = X.^5 + Y.^5;
RHS4 = 1;
% 创建一个新的图形窗口
figure;
% 绘制第一个方程(红色)
contour(X, Y, LHS1-RHS1, [0, 0], 'LineWidth', 1, 'Color', 'red');
hold on;
% 绘制第二个方程(蓝色)
contour(X, Y, LHS2-RHS2, [0, 0], 'LineWidth', 1, 'Color', 'blue');
% 绘制第二个方程(绿色)
contour(X, Y, LHS3-RHS3, [0, 0], 'LineWidth', 1, 'Color', 'green');
% 绘制第二个方程(绿色)
contour(X, Y, LHS4-RHS4, [0, 0], 'LineWidth', 1, 'Color', 'cyan');
% 绘制 x 坐标轴
plot([-2, 2], [0, 0], 'k-') % 绘制水平线段
% 绘制 y 坐标轴
plot([0, 0], [-2, 2], 'k-') % 绘制垂直线段
% 调整图像的显示范围和纵横比
axis([-1.5 1.5 -1.5 1.5]);
daspect([1 1 1]);
% 添加图例和标签
legend('x^2 + y^2 = 1', 'x^4 + y^4 = 1', 'x^6 + y^6 = 1', 'x^5 + y^5 = 1');
xlabel('y');
ylabel('x');
title('方程图像');
描绘结果