using System.Collections.Generic;
static void Main(string[] args)
var contatore = new int[] { 10, 30, 50, 70, 90 };
var azzerato1 = new int[] { 10, 30, 60, 30 };
var azzerato2 = new int[] { 10, 30, 60, 0, 30 };
var azzerato3 = new int[] { 10, 30, 60, 4, 7, 30 };
var spurio1 = new int[] { 10, 30, 50, 0, 0, 70, 80, 0, 90 };
var spurio2 = new int[] { 10, 30, 0, 50, 0, 70, 80, 0, 90 };
var azzeratoSpurio1 = new int[] { 10, 30, 0, 50, 60, 10, 30 };
var azzeratoSpurio2 = new int[] { 10, 0, 30, 50, 60, 0, 10, 0, 30 };
Console.WriteLine("Contatore: " + Calcola3(contatore));
Console.WriteLine("Azzerato1: " + Calcola3(azzerato1));
Console.WriteLine("Azzerato2: " + Calcola3(azzerato2));
Console.WriteLine("Azzerato3: " + Calcola3(azzerato3));
Console.WriteLine("Spurio1: " + Calcola3(spurio1));
Console.WriteLine("Spurio2: " + Calcola3(spurio2));
Console.WriteLine("AzzeratoSpurio1: " + Calcola3(azzeratoSpurio1));
Console.WriteLine("AzzeratoSpurio2: " + Calcola3(azzeratoSpurio2));
private static int Calcola3(IEnumerable<int> values)
foreach (var current in values.Where(x=>x>0))
total += (current >= prev) ? current - prev : current;