Ответ:
1) 504:21=24 (км/ч) — скорость теплохода против течения
2) 24+2=26 (км/ч) — собственная скорость теплохода
3) 26+2=28 (км/ч) — скорость теплохода по течению
4) 504:28=18 (часов) — время, за которое теплоход пойдет это расстояние по течению реки