using System;
using System.Linq;
public class Program
{
public static void Main()
decimal[] values = {-1.7m , 3.0m , 0.0m , 1.5m , 0.0m , -1.7m , 2.3m , -1,7m};
var result = values
.GroupBy(v => v)
.ToDictionary(g => g.Key, g => g.Count());
foreach(var kvp in result)
Console.WriteLine("{0} appears {1} time(s)", kvp.Key, kvp.Value);
}