using System;
using System.Linq;
public class Test
{
public static void Main()
{
var List = new []
{
new { tovar_code = 1, tovar_kol = 10, tovar_obyem = 20 },
new { tovar_code = 2, tovar_kol = 20, tovar_obyem = 30 },
new { tovar_code = 3, tovar_kol = 30, tovar_obyem = 60 },
new { tovar_code = 4, tovar_kol = 40, tovar_obyem = 80 },
new { tovar_code = 5, tovar_kol = 50, tovar_obyem = 90 }
}.ToList();
var total_quantity = List.Sum(x => x.tovar_kol);
var total_volume = List.Sum(x => x.tovar_obyem);
Console.WriteLine($"Total quantity: {total_quantity}, total volume: {total_volume}");
var result =
List.Aggregate(
new { total_quantity = 0, total_volume = 0 },
(sum, curr) => new { total_quantity = sum.total_quantity + curr.tovar_kol,
total_volume = sum.total_volume + curr.tovar_obyem });
Console.WriteLine($"Total quantity: {result.total_quantity}, total volume: {result.total_volume}");
int total_quantity_2 = 0;
double total_volume_2 = 0;
foreach (var item in List)
{
total_quantity_2 += item.tovar_kol;
total_volume_2 += item.tovar_obyem;
}
Console.WriteLine($"Total quantity: {total_quantity_2}, total volume: {total_volume_2}");
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uTGlucTsKCnB1YmxpYyBjbGFzcyBUZXN0CnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBNYWluKCkKCXsKICAgICAgICB2YXIgTGlzdCA9IG5ldyBbXQogICAgICAgIHsKICAgICAgICAgICAgbmV3IHsgdG92YXJfY29kZSA9IDEsIHRvdmFyX2tvbCA9IDEwLCB0b3Zhcl9vYnllbSA9IDIwIH0sCiAgICAgICAgICAgIG5ldyB7IHRvdmFyX2NvZGUgPSAyLCB0b3Zhcl9rb2wgPSAyMCwgdG92YXJfb2J5ZW0gPSAzMCB9LAogICAgICAgICAgICBuZXcgeyB0b3Zhcl9jb2RlID0gMywgdG92YXJfa29sID0gMzAsIHRvdmFyX29ieWVtID0gNjAgfSwKICAgICAgICAgICAgbmV3IHsgdG92YXJfY29kZSA9IDQsIHRvdmFyX2tvbCA9IDQwLCB0b3Zhcl9vYnllbSA9IDgwIH0sCiAgICAgICAgICAgIG5ldyB7IHRvdmFyX2NvZGUgPSA1LCB0b3Zhcl9rb2wgPSA1MCwgdG92YXJfb2J5ZW0gPSA5MCB9CiAgICAgICAgfS5Ub0xpc3QoKTsKCiAgICAgICAgdmFyIHRvdGFsX3F1YW50aXR5ID0gTGlzdC5TdW0oeCA9PiB4LnRvdmFyX2tvbCk7CiAgICAgICAgdmFyIHRvdGFsX3ZvbHVtZSA9IExpc3QuU3VtKHggPT4geC50b3Zhcl9vYnllbSk7CiAgICAgICAgCiAgICAgICAgQ29uc29sZS5Xcml0ZUxpbmUoJCJUb3RhbCBxdWFudGl0eToge3RvdGFsX3F1YW50aXR5fSwgdG90YWwgdm9sdW1lOiB7dG90YWxfdm9sdW1lfSIpOwoKICAgICAgICB2YXIgcmVzdWx0ID0KICAgICAgICAgICAgTGlzdC5BZ2dyZWdhdGUoCiAgICAgICAgICAgICAgICBuZXcgeyB0b3RhbF9xdWFudGl0eSA9IDAsIHRvdGFsX3ZvbHVtZSA9IDAgfSwKICAgICAgICAgICAgICAgIChzdW0sIGN1cnIpID0+IG5ldyB7IHRvdGFsX3F1YW50aXR5ID0gc3VtLnRvdGFsX3F1YW50aXR5ICsgY3Vyci50b3Zhcl9rb2wsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3RhbF92b2x1bWUgPSBzdW0udG90YWxfdm9sdW1lICsgY3Vyci50b3Zhcl9vYnllbSB9KTsKCiAgICAgICAgQ29uc29sZS5Xcml0ZUxpbmUoJCJUb3RhbCBxdWFudGl0eToge3Jlc3VsdC50b3RhbF9xdWFudGl0eX0sIHRvdGFsIHZvbHVtZToge3Jlc3VsdC50b3RhbF92b2x1bWV9Iik7CiAgICAgICAgCiAgICAgICAgaW50IHRvdGFsX3F1YW50aXR5XzIgPSAwOwogICAgICAgIGRvdWJsZSB0b3RhbF92b2x1bWVfMiA9IDA7CiAgICAgICAgZm9yZWFjaCAodmFyIGl0ZW0gaW4gTGlzdCkKICAgICAgICB7CiAgICAgICAgICAgIHRvdGFsX3F1YW50aXR5XzIgKz0gaXRlbS50b3Zhcl9rb2w7CiAgICAgICAgICAgIHRvdGFsX3ZvbHVtZV8yICs9IGl0ZW0udG92YXJfb2J5ZW07CiAgICAgICAgfQogICAgICAgIENvbnNvbGUuV3JpdGVMaW5lKCQiVG90YWwgcXVhbnRpdHk6IHt0b3RhbF9xdWFudGl0eV8yfSwgdG90YWwgdm9sdW1lOiB7dG90YWxfdm9sdW1lXzJ9Iik7Cgl9Cn0=