This simple calculation is returning zero, I can\'t figure it out:
decimal share = (18 / 58) * 100;
18 / 58 is an integer division, which results in 0.
18 / 58
If you want decimal division, you need to use decimal literals:
decimal share = (18m / 58m) * 100m;