summaryrefslogtreecommitdiff
path: root/tests/exec/pow_loop.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/exec/pow_loop.cpp')
-rw-r--r--tests/exec/pow_loop.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/exec/pow_loop.cpp b/tests/exec/pow_loop.cpp
new file mode 100644
index 0000000..1af5861
--- /dev/null
+++ b/tests/exec/pow_loop.cpp
@@ -0,0 +1,23 @@
+#include <iostream>
+
+class Puiss {
+public:
+ int pow(int a, int n);
+};
+
+int Puiss::pow(int a, int n) {
+ int r = 1;
+ int i;
+ for(i = 0; i < n / 2; i++)
+ r = r * a;
+ r = r * r;
+ if (n % 2 != 0)
+ r = r * a;
+ return r;
+}
+
+int main() {
+ Puiss p;
+ std::cout << p.pow(2, 4) << "\n";
+ std::cout << p.pow(6, 3) << "\n";
+}