aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-163/deadmarshal/c/ch-1.c20
-rw-r--r--challenge-163/deadmarshal/c/ch-2.c19
-rw-r--r--challenge-163/deadmarshal/cpp/ch-1.cpp20
-rw-r--r--challenge-163/deadmarshal/cpp/ch-2.cpp19
-rw-r--r--challenge-163/deadmarshal/lua/ch-1.lua16
-rw-r--r--challenge-163/deadmarshal/lua/ch-2.lua15
-rw-r--r--challenge-163/deadmarshal/pascal/ch1.pas25
-rw-r--r--challenge-163/deadmarshal/pascal/ch2.pas25
-rw-r--r--challenge-163/deadmarshal/perl/ch-1.pl20
-rw-r--r--challenge-163/deadmarshal/perl/ch-2.pl20
10 files changed, 199 insertions, 0 deletions
diff --git a/challenge-163/deadmarshal/c/ch-1.c b/challenge-163/deadmarshal/c/ch-1.c
new file mode 100644
index 0000000000..3c5676c25b
--- /dev/null
+++ b/challenge-163/deadmarshal/c/ch-1.c
@@ -0,0 +1,20 @@
+#include<stdio.h>
+
+int sum_bitwise_operator(int* arr, size_t sz)
+{
+ int sum = 0;
+ for(size_t i = 0; i < sz; ++i)
+ for(size_t j = i+1; j < sz; ++j)
+ sum += arr[i] & arr[j];
+ return sum;
+}
+
+int main(void)
+{
+ int n1[] = {1,2,3};
+ int n2[] = {2,3,4};
+ size_t sz = 3;
+ printf("%d\n", sum_bitwise_operator(n1,sz));
+ printf("%d\n", sum_bitwise_operator(n2,sz));
+ return 0;
+}
diff --git a/challenge-163/deadmarshal/c/ch-2.c b/challenge-163/deadmarshal/c/ch-2.c
new file mode 100644
index 0000000000..d9e64f50e0
--- /dev/null
+++ b/challenge-163/deadmarshal/c/ch-2.c
@@ -0,0 +1,19 @@
+#include<stdio.h>
+
+int summations(int *arr, size_t sz)
+{
+ for(size_t i = 0; i < sz; ++i)
+ for(size_t j = i+1; j < sz; ++j)
+ arr[j+1] = arr[j] + arr[j+1];
+ return arr[sz-1];
+}
+
+int main(void)
+{
+ int arr[] = {1,2,3,4,5};
+ int arr2[] = {1,3,5,7,9};
+ size_t sz = 5;
+ printf("%d\n", summations(arr, sz));
+ printf("%d\n", summations(arr2, sz));
+ return 0;
+}
diff --git a/challenge-163/deadmarshal/cpp/ch-1.cpp b/challenge-163/deadmarshal/cpp/ch-1.cpp
new file mode 100644
index 0000000000..061a0d8b52
--- /dev/null
+++ b/challenge-163/deadmarshal/cpp/ch-1.cpp
@@ -0,0 +1,20 @@
+#include<iostream>
+#include<vector>
+
+int sum_bitwise_operator(std::vector<int>& vec)
+{
+ int sum{};
+ for(std::size_t i{}; i < vec.size(); ++i)
+ for(std::size_t j{i+1}; j < vec.size(); ++j)
+ sum += vec[i] & vec[j];
+ return sum;
+}
+
+int main()
+{
+ std::vector<int> vec{1,2,3};
+ std::vector<int> vec2{2,3,4};
+ std::cout << sum_bitwise_operator(vec) << '\n';
+ std::cout << sum_bitwise_operator(vec2) << '\n';
+ return 0;
+}
diff --git a/challenge-163/deadmarshal/cpp/ch-2.cpp b/challenge-163/deadmarshal/cpp/ch-2.cpp
new file mode 100644
index 0000000000..5b890d6477
--- /dev/null
+++ b/challenge-163/deadmarshal/cpp/ch-2.cpp
@@ -0,0 +1,19 @@
+#include<iostream>
+#include<vector>
+
+int summations(std::vector<int> vec)
+{
+ for(std::size_t i{}; i < vec.size(); ++i)
+ for(std::size_t j{i+1}; j < vec.size(); ++j)
+ vec[j+1] = vec[j] + vec[j+1];
+ return vec.back();
+}
+
+int main()
+{
+ std::vector<int> vec{1,2,3,4,5};
+ std::vector<int> vec2{1,3,5,7,9};
+ std::cout << summations(vec) << '\n';
+ std::cout << summations(vec2) << '\n';
+ return 0;
+}
diff --git a/challenge-163/deadmarshal/lua/ch-1.lua b/challenge-163/deadmarshal/lua/ch-1.lua
new file mode 100644
index 0000000000..d545acdb00
--- /dev/null
+++ b/challenge-163/deadmarshal/lua/ch-1.lua
@@ -0,0 +1,16 @@
+function sum_bitwise_operator(t)
+ assert(type(t) == 'table', 't must be a table!')
+ local sum = 0
+ for i=1, #t do
+ for j=i+1, #t do
+ sum = sum + (t[i] & t[j])
+ end
+ end
+ return sum
+end
+
+local t = {1,2,3}
+local t2 = {2,3,4}
+print(sum_bitwise_operator(t))
+print(sum_bitwise_operator(t2))
+
diff --git a/challenge-163/deadmarshal/lua/ch-2.lua b/challenge-163/deadmarshal/lua/ch-2.lua
new file mode 100644
index 0000000000..c4f666d16f
--- /dev/null
+++ b/challenge-163/deadmarshal/lua/ch-2.lua
@@ -0,0 +1,15 @@
+function summations(t)
+ assert(type(t) == 'table', 't must be a table!')
+ for i=1, #t do
+ for j=i+1, #t-1 do
+ t[j+1] = t[j] + t[j+1]
+ end
+ end
+ return t[#t]
+end
+
+local t = {1,2,3,4,5}
+local t2 = {1,3,5,7,9}
+print(summations(t))
+print(summations(t2))
+
diff --git a/challenge-163/deadmarshal/pascal/ch1.pas b/challenge-163/deadmarshal/pascal/ch1.pas
new file mode 100644
index 0000000000..a594f21561
--- /dev/null
+++ b/challenge-163/deadmarshal/pascal/ch1.pas
@@ -0,0 +1,25 @@
+program Ch1;
+
+{$mode objfpc}
+uses
+ SysUtils,Types;
+var
+ Arr,Arr2:TIntegerDynArray;
+
+function SumBitwiseOperator(Arr:TIntegerDynArray):Integer;
+var
+ I,J:Integer;
+begin
+ Result := 0;
+ for I := 0 to High(Arr) do
+ for J := I+1 to High(Arr) do
+ Result := Result + Arr[I] and Arr[J];
+end;
+
+begin
+ Arr := TIntegerDynArray.Create(1,2,3);
+ Arr2 := TIntegerDynArray.Create(2,3,4);
+ WriteLn(SumBitwiseOperator(Arr));
+ WriteLn(SumBitwiseOperator(Arr2));
+end.
+
diff --git a/challenge-163/deadmarshal/pascal/ch2.pas b/challenge-163/deadmarshal/pascal/ch2.pas
new file mode 100644
index 0000000000..ce9cde7e76
--- /dev/null
+++ b/challenge-163/deadmarshal/pascal/ch2.pas
@@ -0,0 +1,25 @@
+program Ch2;
+
+{$mode objfpc}
+uses
+ SysUtils,Types;
+var
+ Arr,Arr2:TIntegerDynArray;
+
+function Summations(Arr:TIntegerDynArray):Integer;
+var
+ I,J:Integer;
+begin
+ for I := Low(Arr) to High(Arr) do
+ for J := I+1 to Pred(High(Arr)) do
+ Arr[J+1] := Arr[J] + Arr[J+1];
+ Result := Arr[High(Arr)];
+end;
+
+begin
+ Arr := TIntegerDynArray.Create(1,2,3,4,5);
+ WriteLn(Summations(Arr));
+ Arr2 := TIntegerDynArray.Create(1,3,5,7,9);
+ WriteLn(Summations(Arr2));
+end.
+
diff --git a/challenge-163/deadmarshal/perl/ch-1.pl b/challenge-163/deadmarshal/perl/ch-1.pl
new file mode 100644
index 0000000000..c812746d72
--- /dev/null
+++ b/challenge-163/deadmarshal/perl/ch-1.pl
@@ -0,0 +1,20 @@
+#!usr/bin/env perl
+use strict;
+use warnings;
+
+sub sum_bitwise_operator{
+ my ($arr) = @_;
+ my $sum = 0;
+ for(my $i = 0; $i < @$arr; ++$i){
+ for(my $j = $i+1; $j < @$arr; ++$j){
+ $sum += $arr->[$i] & $arr->[$j];
+ }
+ }
+ $sum;
+}
+
+my @n = (1,2,3);
+my @n2 = (2,3,4);
+
+print sum_bitwise_operator(\@n), "\n";
+print sum_bitwise_operator(\@n2), "\n";
diff --git a/challenge-163/deadmarshal/perl/ch-2.pl b/challenge-163/deadmarshal/perl/ch-2.pl
new file mode 100644
index 0000000000..91b1949513
--- /dev/null
+++ b/challenge-163/deadmarshal/perl/ch-2.pl
@@ -0,0 +1,20 @@
+#!/usr/bin/env perl
+use strict;
+use warnings;
+
+sub summations{
+ my ($arr) = @_;
+ my ($i,$j);
+ for($i = 0; $i < @$arr; ++$i){
+ for($j = $i+1; $j < @$arr-1; ++$j){
+ $arr->[$j+1] = $arr->[$j] + $arr->[$j+1];
+ }
+ }
+ return $arr->[$j-1];
+}
+
+my @arr = (1,2,3,4,5);
+my @arr2 = (1,3,5,7,9);
+print summations(\@arr), "\n";
+print summations(\@arr2), "\n";
+