Как использовать цикл while и напечатать функцию сложения в методе Java? - PullRequest
0 голосов
/ 12 июня 2011

У меня возникла проблема в последней печати.Я хочу, чтобы он напечатал количество раз, когда была напечатана предыдущая строка, и сложил все числа вместе.Таким образом, если пользователь введет «3», он напечатает его три раза, а затем сложит три числа вместе, чтобы получить шесть.Кто-нибудь знает, как я могу это сделать?Или что я делаю не так?

    import java.util.Scanner;

    public class LoveCS { 
        public static void main(String[] args) { 
            int limit; 
            Scanner scan = new Scanner(System.in);
            System.out.println("How many times should the string be printed? " );
            limit = scan.nextInt();  
            int count = 1; 
            while (count <= limit){ 
                System.out.println(+count+"I love hot chocolate!!"); 
                count++;    
            } 
            sum+=limit;
            System.out.println("Java printed this message: "+ limit+ " times." + "The sum of the numbers from 1 to " + (count-1) + " is " sum);

        } 
    } 

Ответы [ 3 ]

0 голосов
/ 12 июня 2011
import java.util.Scanner;

public class LoveCS {

    public static void main(String[] args) {
        int limit;
        Scanner scan = new Scanner(System.in);
        System.out.println("How many times should the string be printed? ");
        limit = scan.nextInt();
        int count = 1;
        int sum = 0;
        while (count <= limit) {
            sum += count;
            System.out.println("I love hot chocolate!!");
            count++;
        }
        System.out.println("Java printed this message: " + limit + " times." + "The sum of the numbers from 1 to " + (count - 1) + " is " + sum);
     }
}
0 голосов
/ 12 июня 2011

Вместо while петли:

int count = 1;
while (count <= limit) {
    // code inside loop
    count++;
}

Чистее использовать петлю for:

for (int count = 1; count <= limit, count++) {
    // code inside loop
}

Это меньше кода, и он делает очевидным, что контролирует цикл = меньше ошибок.

Использование этого значения будет означать изменение последней строки:

..."The sum of the numbers from 1 to " + limit + " is"... // change (count - 1) to limit
0 голосов
/ 12 июня 2011

Место, куда вы добавляете сумму, находится за пределами цикла, поэтому вы получите только последний бит.Если вы поместите его в цикл, он должен работать.В любом случае, где вы объявляете сумму?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...