Module 8. Function Templates Exercise Answers

1.
   template <class Type>
    void swap (Type& a, Type& b)
    {
     Type temp;
     temp = a;
     a = b;
     b = temp;
    }


2.
   template <class WhatKind>
    void multiples (WhatKind& sum, WhatKind x, int n)
    {
     int i;
     WhatKind term = (WhatKind) 0;
     sum = (WhatKind) 1;
     for (i=1; i<=n; i++)
       {
        term = term + x;
        sum = sum + term;
       }
    }


3.
   template <class T1, class T2>
    T1 init (T1 num1, T1 num2, T2& start)
    {
     start = (T2) 1;
     return (num1 + num2)
    }