Nie wiem z czego to wynika, ale chwilowo możesz dodać wyświetlanie ‘0’ jeżeli wszystkie liczby były niedodatnie.
Z pozostałych kwestii masz temp++;
zarówno w if
jak i w else
bez żadnych warunków więc w zasadzie… po co Ci to tam?
Zawsze:
if(warunek) {
instrukcje;
temp++;
} else {
instrukcje;
temp++;
}
możesz zamienić na:
if(warunek) {
instrukcje;
} else {
instrukcje;
}
temp++;
o ile nie da się wyjść z pętli inaczej.
Rzeczy tego typu
if (sumy[0] < 0)
sumy[0] = 0;
if (sumy[temp - 1] < 0)
sumy[temp - 1] = 0;
mogłeś robić już przy wczytywaniu
A później to już Twoja rola by dowiedzieć się czemu się 0
nie wyświetla lub jakoś je inaczej wyświetlić.