You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

67 lines
2.6 KiB
C

2 years ago
#pragma once
#include <cstdarg>
namespace PublishingHouse
{
namespace RandomForest
{
class TreeOfUnease
{
public:
const char* traverse(float (*getObservationValue)(int), bool (*considerWithUnease)(const char*, float, int, float))
{
if ((considerWithUnease)("I have a thought about the Meise herbarium...",(getObservationValue)(2), 2, 3.3)) {
if ((considerWithUnease)("...about their « living herbarium »...",(getObservationValue)(0), 0, 5.1)) {
if ((considerWithUnease)("...some of plants there come from Leopold II his garden:",(getObservationValue)(3), 3, 0.2)) {
if ((considerWithUnease)("...they dont specify it, but you can infer it from their signs",(getObservationValue)(3), 3, 0.1)) {
2 years ago
return "Iris Setosa";
}
else {
return "Iris Setosa";
}
}
else {
return "Iris Setosa";
}
}
else {
return "Iris Setosa";
}
}
else {
if ((considerWithUnease)("...about the creation of its herbarium...",(getObservationValue)(3), 3, 1.8)) {
if ((considerWithUnease)("...the basis of the Meise Collection is an herbarium of the plants from Brazil...",(getObservationValue)(3), 3, 1.6)) {
if ((considerWithUnease)("...Leopold II bought it to assess Brazil as a colony. But he chose Congo instead",(getObservationValue)(0), 0, 6.1)) {
2 years ago
return "?";
}
else {
return "Iris Versicolour";
}
}
else {
if ((considerWithUnease)("...JSB Pohl contributed to it with 1479 specimens. He also brought back a pair of indigenous people.",(getObservationValue)(1), 1, 3.3)) {
2 years ago
return "Iris Virginica";
}
else {
return "Iris Versicolour";
}
}
}
else {
if ((considerWithUnease)("...most specimens were acquired when permission from local communities wasnt required…",(getObservationValue)(2), 2, 4.9)) {
if ((considerWithUnease)("...this seems to change with frameworks such as the Nagoya Protocol and the convention on biological diversity",(getObservationValue)(0), 0, 6.0)) {
2 years ago
return "Iris Versicolour";
}
else {
return "Iris Virginica";
}
}
else {
return "Iris Virginica";
}
}
}
}
private:
};
}
}