#include <iostream>
#include <cmath>
// CMYK = Cyan, Magenta, Yellow, Key(black)
// RGB = Red, Green, Blue
struct CMYK {
double C;
double M;
double Y;
double K;
};
struct RGB {
double R;
double G;
double B;
};
struct RGB CMYKToRGB(struct CMYK cmyk) {
struct RGB rgb;
rgb.R = round(255 * (1 - cmyk.C / 100) * (1 - cmyk.K / 100));
rgb.G = round(255 * (1 - cmyk.M / 100) * (1 - cmyk.K / 100));
rgb.B = round(255 * (1 - cmyk.Y / 100) * (1 - cmyk.K / 100));
return rgb;
}
int main(void)
{
struct CMYK data = {4.0, 16.0, 100.0, 0.0};
struct RGB rgb = CMYKToRGB(data);
std::cout << "R = " << rgb.R << " G = " << rgb.G << " B = " << rgb.B;
}
/*
run:
R = 245 G = 214 B = 0
*/