Das kann nicht funktionieren.
In Deinem Button1Click berechnest Du die Variable "q" auf Basis von Edit3.Text. Edit3.Text kann aber leer sein, was vermutlich in Deinem Beispiel auch so sein wird.
Ansonsten kann ich mich nur den anderen anschließen: Dein Programmierstil ist zum Abgewöhnen.
Schau mal
bei DSDT nach, wie es besser geht.