方法一 心型极坐标方程
爱心代码你真的理解吗
笛卡尔的心型公式:
for (y = 1.5; y > -1.5; y -= 0.1)
for (x = -1.5; x < 1.5; x += 0.05)
代码里面用了二个for循环,第一个代表y轴,第二个代表x轴
二个增加的单位不同,能使得它不是长方形,正方形。
下面x轴增加的少,能使得打印出来的图像不是很方正。
看左边公示图。相当于x轴左移,拉宽了心形。
效果如下:
看左边公示图。相当于x轴左移,拉宽了心形。
带入公式: a = x * x + y * y - 1; 表达式 (a * a * a - x * x * y * y * y);
如果这个值大于0,说明在心形的范围内,打印出来。
代码如下:
if ((a * a * a - x * x * y * y * y) <= 0.0) {
// 判断条件,如果表达式 (a * a * a - x * x * y * y * y) 的结果小于等于 0.0。
printf("*");
// 如果满足条件,打印一个星号,表示该坐标点在爱心图案内。
} else {
printf(" ");
// 如果不满足条件,打印一个空格,表示该坐标点不在爱心图案内。
}
注意:每行输出完我们我们要换行,所以for (y = 1.5; y > -1.5; y -= 0.1) {}每行输出完要加一个换行符号:
printf("\n");
// 内层循环结束后,打印一个换行符,开始下一行的输出。
整体代码:
#include <stdio.h>
// 引入标准输入输出头文件,用于使用输入输出函数如 printf。
#include <Windows.h>
// 引入 Windows 系统相关的头文件,这里可能是为了使用 system 函数来设置控制台颜色。
int main() {
system("color 0c");
// 调用 s