Mi permetto di riscrivere il tuo HTML: come hai scritto tu ci sono vari errori.

<input type="text" name="campoA1" value="123" />123

<input type="text" name="campoA2" value="256" />256

<input type="text" name="campoA3" value="147" />147

<input type="text" name="campoA4" value="145" />145


Sai quale e` l'ultimo campo introdotto?
Non ci sono buchi? (cioe` non e` che manca il campoA3, mentre c'e` il campoA4)?
codice:
function somma(ff,ultimo) { 
            // ff contiene l'oggetto form
            // ultimo contiene il nome esatto del campo ultimo
  var som = 0;
  var i = 0;
  do {
    var ss = 'campoA'+i;
    var cc = ff.elements[ss];
    som += parseFloat(cc.value); // oppure parseInt(cc.value, 10);
    i++;
  } while(ss != ultimo);
ecc.
}