爱心c++代码

cpp
#include <iostream> #include <cmath> int main() { const double PI = 3.141592653589793238463; const int heartSize = 10; for (int y = heartSize; y >= -heartSize; --y) { for (int x = -heartSize; x <= heartSize; ++x) { double distance = sqrt(x * x + y * y); if (distance <= heartSize * sqrt(2 * abs(sin(PI * atan2(y, x) / 2)))) std::cout << "*"; else std::cout << " "; } std::cout << std::endl; } return 0; }

这段代码会打印一个简单的爱心图案。

cpp
#include <iostream> #include <cmath> const double PI = 3.141592653589793238463; // 函数用来判断指定坐标是否在爱心图案的内部 bool isInHeart(int x, int y, int size) { double distance = sqrt(x * x + y * y); double f = pow(distance / size, 2); double g = sin(PI * sqrt(f)); return g - f >= 0; } int main() { const int heartSize = 10; // 遍历每个点,打印爱心图案 for (int y = heartSize; y >= -heartSize; --y) { for (int x = -heartSize; x <= heartSize; ++x) { if (isInHeart(x, y, heartSize)) std::cout << "* "; else std::cout << " "; } std::cout << std::endl; } return 0; }

这段代码将打印一个更加精细的爱心图案。