#include
float ff(float x, float z) {
float a = x * x + z * z - 1;
return a * a * a - x * x * z * z * z;
}
int main(void){
int ppi=10;
int sw = ppi, sh = ppi;
for (int sy = 0; sy < sh; sy++) {
float z = 1.5f - sy * 3.0f / sh;
for (int sx = 0; sx < sw; sx++) {
float x = sx * 3.0f / sw - 1.5f;
if (ff(x, z) <= 0.0f) {
putchar('*');
} else {
putchar(' ');;
}
}
putchar('\n');
}
return 0;
}
我想知道变量z和x为什么要这么写,那个ff函数是返回心形公式的值,当这个值等于0是这个就是心形线上的一个点,这个是我从知乎上看到的,但是没解释