diff --git a/reference/BasicAlgo/BasicAlgo.cpp b/reference/BasicAlgo/BasicAlgo.cpp new file mode 100644 index 000000000..ff8da2e32 --- /dev/null +++ b/reference/BasicAlgo/BasicAlgo.cpp @@ -0,0 +1,38 @@ +#include + +using namespace Upp; + +CONSOLE_APP_MAIN{ + StdLogSetup(LOG_FILE|LOG_COUT); + + Vector data, empty; + data << 10 << 5 << 11 << 9 << 2; + + DUMP(Sum(data)); + + DUMP(FindMin(data, 0, data.GetCount() - 1)); + DUMP(FindMin(data)); + DUMP(Min(data)); +// DUMP(Min(empty)); // This is undefined (fails in ASSERT) + DUMP(Min(empty, -99999)); + + DUMP(Sum(data)); + DUMP(FindMax(data, 3, 2)); + DUMP(FindMax(data)); + DUMP(Max(data)); +// DUMP(Max(empty)); // This is undefined (fails in ASSERT) + DUMP(Max(empty, 99999)); + + Vector s = Split("one;two;three", ';'); + DUMP(Sum(s, "")); + + DUMP(sgn(10)); + DUMP(sgn(0)); + DUMP(sgn(-7)); + + DUMP(findarg(3, 1, 7, 6, 3, 2)); + DUMP(findarg(5, 1, 7, 6)); + + DUMP(decode(2, 1, "one", 2, "two", 3, "three", "?")); + DUMP(decode(5, 1, "one", 2, "two", 3, "three", "?")); +} diff --git a/reference/BasicAlgo/BasicAlgo.upp b/reference/BasicAlgo/BasicAlgo.upp new file mode 100644 index 000000000..d2f1e3356 --- /dev/null +++ b/reference/BasicAlgo/BasicAlgo.upp @@ -0,0 +1,11 @@ +description "Basic function templates (min/max/sum/findarg/decode)\377"; + +uses + Core; + +file + BasicAlgo.cpp; + +mainconfig + "" = "SSE2"; + diff --git a/reference/BasicAlgo/init b/reference/BasicAlgo/init new file mode 100644 index 000000000..fb9b21418 --- /dev/null +++ b/reference/BasicAlgo/init @@ -0,0 +1,4 @@ +#ifndef _BasicAlgo_icpp_init_stub +#define _BasicAlgo_icpp_init_stub +#include "Core/init" +#endif