Mod - взятие остатка от деления (35 mod 10 == 5); div - взятие целой части от деления (35 div 10 == 3). Пишу сразу заполненные таблицы:
1) а = 23
p s p>0
23 0 true
2 3 true
0 5 false => s = 5
2) a = 32
p s p>0
32 0 true
3 2 true
0 5 false => s = 5
3) a = 109
p s p>0
109 0 true
10 9 true
1 9 true
0 10 false => s = 10