The Lie groups SU(3) ⊂ U(3) play an important role in nuclear physics. All their representations are highest weight representations. When the representation space is symmetry adapted to the rotation group SO(3) their representations can be used to describe collective rotational motion of the nucleus. Elliott's SU(3) model and the interacting boson model exhibit a rotational spectrum if the Hamiltonian can be approximately written in terms of Casimir invariants. The electromagnetic transition rates can be approximated by the reduced matrix elements of the quadrupole tensor operator Q, which are the output of part 1 of the program. Part 2 generates the Clebsch-Gordan coefficients as well as the isoscalar factors by coupling two irreducible representations of U(3). All results are analytic, that is exact as opposed to numerical This program uses that the highest weight representations of U(3) can be realized on certain polynomial spaces, which can be endowed with a simple differentiation inner product. In order to generate the polynomial basis and to reduce the representations in the desired subgroup chain U(3) ⊃ SO(3) ⊃ SO(2), the elegant Cartan-Weyl theory is used. This means that the irreducible representations are generated by continued application of the lowering operators to the highest weight vector. This theory is very suitable for implementation on a computer algebra program like Macsyma. The method of combining the Cartan-Weyl theory with polynomial spaces is not particular to U(3) and can be used for representations of U(n) in any subgroup chain. However, what is possible in reality depends on the available computer power