Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Linq;
- //Write methods to calculate minimum, maximum, average, sum and product of given set of integer numbers. Use variable number of arguments.
- //Modify your last program and try to make it work for any number type, not just integer (e.g. decimal, float, byte, etc.).
- class GenericMethods
- {
- static void Main()
- {
- dynamic min;
- min = CalcMin(1,2,3,4);
- Console.WriteLine("Min value is: {0}", min);
- dynamic max;
- max = CalcMax(0.2,4,-0.56,5.67);
- Console.WriteLine("Max value is: {0}", max);
- dynamic average;
- average = CalcAverage(10000,29999999,1,-45677.0234234);
- Console.WriteLine("Average value is: {0}", average);
- dynamic sum;
- sum = CalcSum(2,4,6,7);
- Console.WriteLine("Sum is: {0}", sum);
- dynamic product;
- product = CalcProduct(1,2,3,4,-5.354);
- Console.WriteLine("Product is {0}", product);
- }
- private static T CalcProduct<T>(params T[] num)
- {
- dynamic product = 1;
- for (int i = 0; i < num.Length; i++)
- {
- product *= num[i];
- }
- return product;
- }
- private static T CalcAverage<T>(params T[] num)
- {
- dynamic sum = 0;
- for (int i = 0; i < num.Length; i++)
- {
- sum += num[i];
- }
- return sum/num.Length;
- }
- private static T CalcSum<T>(params T[] num)
- {
- dynamic sum = 0;
- for (int i = 0; i < num.Length; i++)
- {
- sum += num[i];
- }
- return sum;
- }
- private static T CalcMax<T>(params T[] num)
- {
- return num.Max();
- }
- private static T CalcMin<T>(params T[] num)
- {
- return num.Min();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement