I understand the OP's approach, but I am not sure I understand VonNemo's remarks. The truth table for must indeed have the following form:

Code:

p q | p \/ (not q)
----+-------------
T T | ?
F T | ?
T F | ?
F F | ?

(Though I prefer the following order of the first two columns going down: F F, F T, T F, T T. If T is replaced by 1 and F by 0, we get 00, 01, 10, 11, which in binary notation means 0, 1, 2, 3. Following this systems helps prevent missing or repeated rows.)

However, the OP's truth values in the last column are incorrect. For example, when p = T and q = T, is T because disjunction is true if at least one of the arguments (in this case, p) is true.