Задача
Даны действительные числа [latex]a_{1},a_{2}, \ldots [/latex]. Известно, что [latex]a_{1}>0[/latex] и что среди [latex]a_{2},a_{3}, \ldots[/latex] есть хотя бы одно отрицательное число. Пусть [latex]a_{1},\ldots , a_{n}[/latex] -– члены данной последовательности, предшествующие первому отрицательному члену ([latex]n[/latex] заранее известно). Получить:
a) [latex]a_{1}+a_{2}+ \cdots +a_{n}[/latex];
| Элементы последовательности | Сумма элементов до отрицательного числа. | 
| 3 4 6 -2 3 1 | 13 | 
| 2 8 -1 2 3 4 5 | 10 | 
| 1 0 5 0 0 -1 0 0 0 | 6 | 
| 4.2 3.2 1 -5 1 5 | 8.4 | 
От нас требуют посчитать сумму элементов последовательности, которые стоят до первого отрицательного элемента этой же последовательности. Для того, что бы это сделать, мы, в цикле, считываем числа с потока данных. Если попадается отрицательное число, то цикл останавливается и выводит накопленную сумму.
Ниже представленная сама программа (C++).
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 | #include <iostream> using namespace std; int main()  { 	double sum=0; 				//Сумма элементов 	double a; 	while(cin >> a && a>=0)		//чтение данных с входного потока 	{ 		sum+=a; 	} 	printf("Сумма членов последовательности до первого отрицательного элемента равна %5.3lf \n",sum); 	return 0; } | 
Код на Java:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | import java.util.*; import java.lang.*; import java.io.*; class Brovko { 	public static void main (String[] args) throws java.lang.Exception { 	double sum=0, a; 	 	Scanner in = new Scanner(System.in); 	while(in.hasNext()) 	{ 		a = in.nextDouble(); 		if (a<0) 		{ 			break; 		} 		sum+=a; 	} 	System.out.format("Сумма членов последовательности до первого отрицательного элемента равна %5.1f \n",sum); } } | 
Так же вы можете воспользоваться ссылкой (C++)/ссылкой (Java), для ознакомления с программой.
 
						
Вы пишите «n заранее известно» это НЕ соответствует условию. Нужно суммировать до тех пор пока не встретится отрицательное число. И прочтите здесь как решать задачи этого раздела. Там объясняется почему нет необходимости в массивах.
Понял, что можно сделать проще.
Исправил.
Зачтено.
Дело не в том, что так проще. Просто сейчас Вы решили именно ту задачу, которую нужно.
Все хорошо, но небольшая ошибка в отступе строки System.out.format(...). Java решение засчитано, тем не менее поправьте отступ этой строки.
Странно, что Вы решили воспользоваться условным оператором, хотя в программе на С++ в с лёгкостью без неё обошлись.