2016-01-31 1 views
-2

Как я могу вывести список чисел, чтобы каждое следующее число увеличивалось на значение, которое в свою очередь увеличивается на единицу каждый раз?Приращивание значения на значение возрастания и вывод результата

В моем случае мне нужно вывести именно этот список:

0 
10 
21 
33 
46 
60 
75 
91 
108 
126 
145 
165 

Так что приращения первого значения на 10, то приращения результата на 11, то в результате этого увеличивается на 12, а затем на 13 , 14, 15 и т. Д.

Я пытался достичь этого, используя for-loops, но, очевидно, не получил никакого правильного результата.

ответ

0

Вот краткий фрагмент кода:

/** 
* Print List 
**/ 
public static void main (String[] args) { 
    /* Initialize Number Value */ 
    int num = 0; 
    /* Initialize Increment Value */ 
    int increment = 10; 
    /* Print First Number */ 
    System.out.println(num); 
    for(int i = 0; i < 10; i++) { 
     /* Increment Number */ 
     num += increment; 
     /* Print Next Number In List */ 
     System.out.println(num); 
     /* Increment The Increment Counter */ 
     ++increment; 
    } 
} 

Вы можете изменить итерации цикла в for от 10 до все, что вы хотите.

+1

Спасибо! Именно то, что мне нужно! – mikebrsv

0

Это решение проблемы, и я также чувствую адекватное представление о том, как петли работают на Java. Вы определили, что вам нужно начать увеличивать некоторое значение на 10 (а затем, 11, 12, 13), и вам нужно будет сделать это в цикле. Это, как вы бы добиться того, что

int currentNumber = 0; 
int incrementValue = 10; 

for (int i = 0; i < 12; i++) { 
    System.out.println(currentNumber); 
    currentNumber += incrementValue++; 
} 
+0

Спасибо, слишком плохо, я не могу принять более одного ответа. – mikebrsv

1

Понадобится:

int sum = 0; 
System.out.println(sum); 
for (int i = 10; i < Integer.MAX_VALUE; i++) { 
    sum += i; 
    System.out.println(sum); 
} 
+0

Технически это решение работает просто отлично, хотя приводит к бесконечному циклу из-за использования Integer.MAX_VALUE. – mikebrsv

+0

@mikebrsv, вы правы в Integer.MAX_VALUE, просто использовали его, например. – eg04lt3r

0

Увеличьте приращение для цикла:

int increment = 10; 
int incrementStep = 1; 

for (int i = 10; i < 200; i += increment) { 
    System.out.println(i); 
    increment += incrementStep; 
} 
Смежные вопросы