fun = a+b+c+d/e
If we want to get the number of summands, we can use
Length[fun], which properly gives
5 in this case. However, if
fun contains only a single term
fun = d/e
2 since now it actually counts the number of terms in the multiplication instead of summation.
Length is rather a hack than an actually reliable function to get the number of summands. Is there an efficient function that returns the number of summands reliably?