#include "library.h" double formula(const double x, const double y) { return sin(hypot(x, y)) * sin(pow(hypot(x - 5, y - 5), 0.8)); } double scale_x(const double x) { return (x + 10) * 25; } double scale_y(const double y) { return (10 - y) * 25; } int scale_z(const double z) { return z * 127 + 128; } void vary_x_for_given_y(const double x, const double last, const double y) { const double z = formula(x, y); const int red = scale_z(z); const int blue = 255 - red; set_pixel_color(scale_x(x), scale_y(y), make_color_int(red, 0, blue)); if (x < last) vary_x_for_given_y(x + 0.025, last, y); } void vary_y(const double y, const double last) { vary_x_for_given_y(-10, 10, y); if (y < last) vary_y(y + 0.025, last); } void main() { make_window(500, 500); vary_y(-10, 10); }