C语言利用心形方程式输出图形的代码看不懂求解

我主要是看不懂两个for循环里的内容,1.5,—1.5,0.1,0.05这几个数是怎么确定出来的,为啥是这几个数就行,求解,谢谢大家

极坐标方程

水平方向: r=a(1-cosθ) 或 r=a(1+cosθ) (a>0)
垂直方向: r=a(1-sinθ) 或 r=a(1+sinθ) (a>0)
直角坐标方程

心形线的平面直角坐标系方程表达式分别为 x^2+y^2+a*x=a*sqrt(x^2+y^2) 和 x^2+y^2-a*x=a*sqrt(x^2+y^2)
参数方程

x=a*(2*cos(t)-cos(2*t))
y=a*(2*sin(t)-sin(2*t))
所围面积为3/2*PI*a^2,形成的弧长为8a

图片说明
心形线图像

for(float y=1.5f;y>—1.5f;y=—0.1f)

#include

int main() {
for (float y = 1.5f; y > -1.5f; y -= 0.1f) {
for (float x = -1.5f; x < 1.5f; x += 0.05f) {
float a = x * x + y * y - 1;
putchar(a * a * a - x * x * y * y * y <= 0.0f ? '*' : ' ');
}
putchar('\n');
}
}
//我也没办法解释这个坐标问题。。。。

一箭穿心

http://bbs.csdn.net/topics/390714312