From c0ccb7b38426c3f21fb1b7fe9db19ed6d4613681 Mon Sep 17 00:00:00 2001 From: Aryadev Chavali Date: Mon, 22 Nov 2021 06:09:34 +0000 Subject: (list)+some flavour text for list program output --- list.cpp | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'list.cpp') diff --git a/list.cpp b/list.cpp index caa4fbc..f5077f0 100644 --- a/list.cpp +++ b/list.cpp @@ -96,15 +96,28 @@ std::ostream& operator<<(std::ostream& ostream, const List *lst) int main(void) { + puts("Create linked list with 1..10"); auto lst = append(nullptr, 1); - for (int i = 2; i < 10; ++i) + for (int i = 2; i <= 10; ++i) lst = append(lst, i); + printf("Current output for list: "); std::cout << lst << std::endl; lst = reverse(lst); + printf("Reverse list: "); std::cout << lst << std::endl; + puts("Reverse list again..."); + printf("Map list with f(x) = 2x: "); map(lst = reverse(lst), [](int x){ return x * 2; }); std::cout << lst << std::endl; - std::cout << reduce(lst, [](int a, int b) { return a + b; }, 0) << std::endl; + puts("Reverse map..."); + map(lst, [](int x){ return x / 2; }); + printf("Sum all numbers in list: "); + std::cout << reduce(lst, [](int a, int b) { return a + b; }, 0) + << std::endl; + printf("Print all even numbers 1..10: "); + auto evens = filter(lst, [](int a) { return a % 2 == 0; }); + std::cout << evens << std::endl; delete lst; + delete evens; return 0; } -- cgit v1.2.3-13-gbd6f