#include #include #include #include double euclidean_length(const std::vector &v); double scalar_product(const std::vector &v, const std::vector &w); std::vector normalize(const std::vector &v); double euclidean_distance(const std::vector &v, const std::vector &w); void print_dvector(const std::vector &v); unsigned fibonacci_rec(unsigned n); unsigned fibonacci_nonrec(unsigned n); void mymap(); int main() { std::vector a = {1, 2, 3}; std::vector b = {4, 5, 6}; std::cout << "length of 'a': " << euclidean_length(a) << '\n'; std::cout << "scalar product of 'a' and 'b': " << scalar_product(a, b) << '\n'; print_dvector(normalize(a)); std::cout << "distance between 'a' and 'b': " << euclidean_distance(a, b) << '\n'; std::cout << "Recursive Fibonacci of 25: " << fibonacci_rec(25) << '\n'; std::cout << "Fibonacci of 50: " << fibonacci_nonrec(25) << '\n'; mymap(); } void print_dvector(const std::vector &v) { for (const double &d : v) { std::cout << d << '\n'; } std::cout << '\n'; } double euclidean_length(const std::vector &v) { double sum = 0; return std::sqrt(sum); } double scalar_product(const std::vector &v, const std::vector &w) { double product = 0; if(v.size()!=w.size()) { return std::nan(""); } for(int i=0; i normalize(const std::vector &v) { double length = euclidean_length(v); std::vector norm; for(int i=0; i &v, const std::vector &w) { if(v.size()!=w.size()) { return std::nan(""); } double distance = 0; for(int i=0; i mymap; mymap["Peter"] = 40; mymap["Brian"] = 4; mymap["Stewie"] = 1; mymap["Chris"] = 15; mymap["Meg"] = 14; for(const auto& n : mymap) { std::cout << n.first << ' ' << n.second << '\n'; } mymap["Lois"] = 41; std::cout << '\n'; for(const auto& n : mymap) { std::cout << n.first << ' ' << n.second << '\n'; } }