Write the syntax definitions of the following objects:
(a) Natural number (1, 2, 3, ...)
(b) Unsigned integer (0, 1, 2, 3, ...)
(c) Integer ( ..., - 2, - 1,0, 1, 2, ...)
(d) Odd number ( ..., - 3, - 1, 1, 3, ...)
(e) Even number ( ..., - 4, - 2,0, 2, 4, ...)
(f) Integer divisible by 5 ( ..., - 10, - 5,0, 5, 10, ...)
Solve each problem from (a) to (f) using BNF, EBNF, syntax diagrams, and the parenthetic notation. At the end compare all solutions and write what is in your opinion the most suitable metalanguage for solving this type of problems.