So, okay, ich hab's dann wohl; weiß zwar auch nicht, warum ich mich erst so blöd angestellt hab, aber sei's drum....
Das Knifflige an der Aufgabe ist, daß einfach zu wenig gegeben zu sein scheint; das ist allerdings nicht so, nur muß man das erst mal finden. Am einfachsten zu finden ist q (vermutlich ist es auch das einzige, das aus der Anfangssituation heraus überhaupt direkt zu finden ist), und zwar machen wir uns da die Ähnlichkeit der drei Dreiecke zunutze (damit meine ich das große und die zwei kleineren, in die es durch die Höhe geteilt wird). Ähnlichkeit zweier Figuren bedeutet bekanntlich, daß zwar nicht zwingend die Seitenlängen, wohl aber deren Verhältnisse (und damit auch die Winkel) gleich sind; uns interessiert jetzt die Ähnlichkeit des Dreiecks ABC mit dem Dreieck ACD (wobei D der Lotfußpunkt der Höhe ist). Es (alpha) der Winkel zwischen b und c, also beim Punkt A, dann gilt nach dem Cosinus-Satz:
cos (alpha) = b/c
cos (alpha) = q/b
Da c = p+q, ergibt sich
q/b = b/(p+q) --- und wenn wir die Nenner jeweils auf die andere Seite bringen, wird daraus
q * (p + q) = b² --- was umgeformt zu
q² + p * q - b² = 0 wird - und das ist 'ne quadratische Gleichung mit einer positiven Lösung, aber wie man zu der kommt, demonstrier ich hier jetzt nicht auch noch. 
Edit: Hmmm, okay, war dann wohl mal wieder ein klein wenig spät....