Per questi motivi, il Tribunale federale delle assicurazioni
p r o n u n c i a :
I. Il ricorso di diritto amministrativo è accolto e il
giudizio del Tribunale delle assicurazioni del Cantone
Ticino del 24 luglio 1997 è annullato.
II. Non si percepiscono spese giudiziarie né si assegnano
ripetibili.
III. La presente sentenza sarà intimata alle parti, al
Tribunale delle assicurazioni del Cantone Ticino e
all'Ufficio federale delle assicurazioni sociali.