2014-02-21 4 views
1

Я пытаюсь ограничить число входных чисел больше 0 и целое число.Добавление ограничений к целым числам

код здесь:

import java.util.Scanner; 

public class PROB4_CHAL1 // Sum of Numbers 
{ 
public static void main(String[] args) 
{ 

int sum = 0; 
int count = 1; 
int number = 1; 

Scanner input = new Scanner(System.in); 

System.out.println("Enter an integer " + 
       "greater than 0."); 
number = input.nextInt(); 

while (number >= count) 
{ 
    sum += count; 
    count ++; 
} 

System.out.println("Sum equals " + sum); 


} 
} 

Новое на Java, так что ничего поможет!

+0

проверить, если номер действителен после вызова nextInt() и повторите запрос, если это не так. – jeremyjjbrown

+0

Что вы хотите, если пользователь вводит отрицательное целое число? Должна ли программа вернуться и попросить их повторно ввести ее? Если это так, вам понадобится какой-то цикл, например do-while. –

+0

Помог ли мой ответ решить вашу проблему? –

ответ

2

Вы можете взять вход в цикл в то время как, например, так:

int number = 0; // start at 0 so the while loop is true for the first time 

while (number < 1) { 

    System.out.println("Enter an integer " + 
         "greater than 0."); 
    number = input.nextInt(); 
} 

Таким образом, он будет держать не спрашивая их, чтобы ввести номер, пока число их ввода больше 0.

+0

Я пытаюсь добавить 1,2,3,4,5 ... к номеру ввода. Этот код принесет сумму 0 – nerd4life

+0

@ nerd4life: Мой код не имеет ничего общего с вашим методом сбора суммы. Не заменяйте текущий цикл while, просто замените свой 'number = input.nextInt();' на мой цикл. –

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