#pragma once #include namespace PublishingHouse { namespace RandomForest { class TreeOfUnease { public: const char* traverse(float (*getObservationValue)(int), bool (*considerWithUnease)(const char*, float, int, float)) { if ((considerWithUnease)("Message", (getObservationValue)(3), 3, 1.0)) { if ((considerWithUnease)("Message", (getObservationValue)(1), 1, 3.1)) { if ((considerWithUnease)("Message", (getObservationValue)(2), 2, 1.3)) { return "Iris Setosa"; } else { return "Iris Setosa"; } } else { return "Iris Setosa"; } } else { if ((considerWithUnease)("Message", (getObservationValue)(3), 3, 1.8)) { if ((considerWithUnease)("Message", (getObservationValue)(2), 2, 5.6)) { if ((considerWithUnease)("Message", (getObservationValue)(3), 3, 1.5)) { if ((considerWithUnease)("Message", (getObservationValue)(3), 3, 1.3)) { if ((considerWithUnease)("Message", (getObservationValue)(1), 1, 2.2)) { return "Iris Versicolour"; } else { return "Iris Versicolour"; } } else { return "Iris Versicolour"; } } else { return "Iris Versicolour"; } } else { return "Iris Virginica"; } } else { return "Iris Virginica"; } } } private: }; } }