Skip to content

Commit cd6ea21

Browse files
authored
whom I will send unto you from the Father
But when the Comforter is come, whom I will send unto you from the Father, even the Spirit of truth, which proceedeth from the Father, he shall testify of me: (John 15:26)
1 parent d109822 commit cd6ea21

1 file changed

Lines changed: 77 additions & 0 deletions

File tree

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
2+
//But when the Comforter is come, whom I will send unto you from the Father, even the Spirit of truth,
3+
//which proceedeth from the Father, he shall testify of me: (John 15:26)
4+
5+
package com.javarush.task.task29.task2913;
6+
7+
import java.util.Random;
8+
9+
/*
10+
Замена рекурсии
11+
*/
12+
13+
public class Solution {
14+
private static int numberA;
15+
private static int numberB;
16+
17+
public static String getAllNumbersBetween(int a, int b) {
18+
StringBuilder result = new StringBuilder();
19+
result.append(a);
20+
int temp = a;
21+
if (a == b) {
22+
return Integer.toString(a);
23+
} else {
24+
if (a > b) {
25+
while (temp > b) {
26+
result.append(" ").append(--temp);
27+
}
28+
} else {
29+
30+
while (temp < b) {
31+
result.append(" ").append(++temp);
32+
}
33+
}
34+
}
35+
return result.toString();
36+
}
37+
38+
public static void main(String[] args) {
39+
Random random = new Random();
40+
numberA = random.nextInt() % 1_000;
41+
numberB = random.nextInt() % 10_000;
42+
System.out.println(getAllNumbersBetween(numberA, numberB));
43+
System.out.println(getAllNumbersBetween(numberB, numberA));
44+
}
45+
}
46+
47+
/*
48+
Замена рекурсии
49+
50+
В программе случайным образом генерируются два целых числа A и В. Нужно вывести все целые числа от A до B включительно, в порядке возрастания, если A меньше B, или в порядке убывания в противном случае.
51+
52+
53+
54+
Задача реализована с использованием рекурсии.
55+
56+
Иногда в результате работы программы получаем Exception in thread "main" java.lang.StackOverflowError.
57+
58+
59+
60+
Твоя задача: перепиши код без использования рекурсии.
61+
62+
Метод recursion переименуй на getAllNumbersBetween.
63+
64+
65+
66+
67+
68+
Требования:
69+
70+
1. Метод recursion необходимо переименовать на getAllNumbersBetween.
71+
72+
2. Ни в одном методе класса Solution не должно быть рекурсивных вызовов.
73+
74+
3. В конце строчки вывода последовательности чисел не должно быть пробела.
75+
76+
4. Логика работы программы должна остаться прежней.
77+
*/

0 commit comments

Comments
 (0)