To calculate damage, this is how you do it:

**Damage** = ((((2 * Level / 5 + 2) * AttackStat * AttackPower / DefenseStat) / 50) + 2) * STAB * Weakness/Resistance * RandomNumber / 100

So, in your case, since you are using power whip, this is the calculation:

Damage = ((((2 * Level / 5 + 2) * *312* * ***120***/ DefenseStat) / 50) + 2) * STAB * Weakness/Resistance * RandomNumber / 100

Random number is a random integer number between 85 and 100, called roll damage. Since you haven't told me the defending Pokemon, or your Ferrothorn's level, this is as much as I can tell you.

Hope this helped!