Your inductive step looks weird.

You have typed commas instead of plusses between the W_i. Anyway, I suggest that you prove your base case _also_ for k=2.

Then the inductive case could go like: Suppose the result is true for k=n, and let k=n+1. Then

where the first equality is just putting in parentheses, the first inequality is using the base case k=2 (with W_1+...+W_n and W_{n+1} being the two vector spaces), and the next inequality is using the induction hypothesis that the result is true for k=n.

As for b), what is your definition of direct sum?