2014-10-12 3 views
-3

Напишите программу PositiveNegative, которая считывает неопределенное число целых чисел, определяет, сколько положительных и отрицательных значений было введено, и вычисляет сумму и среднее входных значений (не считая нулей) , Чтение ввода заканчивается, когда пользователь вводит 0 (ноль). Отображение количества положительных и отрицательных входов, суммы и среднего значения. Среднее значение должно вычисляться как число с плавающей запятой. Создайте программу таким образом, чтобы она запрашивала у пользователя, хотят ли они продолжать новые входы после каждого набора записей, заканчивая программу только тогда, когда они не отвечают на вопрос «да».проверить список, сколько положительных чисел

Вот пример работы:

Input a list of integers (end with 0): 1 2 -1 3 0 

# of positive inputs: 3 
# of negative inputs: 1 
The total:    5.0 
The average:   1.25 

Would you like to continue with new inputs? yes 
Input a list of integers (end with 0): 0 

No numbers were entered except 0 

Would you like to continue with new inputs? no 

и вот мой код:

import java.util.*; 

public class PositiveNegative 
{ 
    public static void main(String[] args){ 

     Scanner input = new Scanner(System.in); 
     String answer; 
     int countpositive = 0; 
     int countnegative = 0; 
     int total = 0; 
     int num = 0; 

     System.out.print("Input a list of integers (end with 0): "); 

     do{ 
     String list = input.nextLine(); 

     for(int i = 0; ; i=i+2){ 
      num = Integer.parseInt(list.substring(i,i+1)); 

      if(num == 0) 
       break; 
      else if (num > 0) 
       countpositive++; 
      else if (num < 0) 
       countnegative--; 
      total = total + num; 
      } 
      double average = total/(countpositive + countnegative); 
      System.out.println("# of positive inputs: "+countpositive); 
      System.out.println("# of negative inputs: "+countnegative); 
      System.out.println("The total: "+total); 
      System.out.println("The average"+average); 
      System.out.println("\n "); 
      System.out.print("Would you like to continue with new inputs? "); 
      answer = input.next(); 

     }while(answer.equalsIgnoreCase("Yes")); 

     } 
    } 

я могу скомпилировать файл, но когда я запускаю его, я не могу получить результат как образец запуска ,

+0

Итак, в чем проблема/вопрос, который у вас есть? – nmore

+0

, когда я запускаю код, я не могу получить результат, например, образец образца –

+0

Вы должны предоставить то, что вы пробовали, и трассировку стека вывода вашей программы. Дополнительную информацию см. На странице http://stackoverflow.com/help/on-topic. – nmore

ответ

1

Вы декремент (countnegative--;) подсчет отрицательных чисел вместо приращения он (countnegative++;), когда отрицательное целое число встречается.

+0

thx я исправлю это. но все еще что-то не так в моем коде –

Смежные вопросы