Skip to content

Commit 406e403

Browse files
authored
Update Фибоначчи.md
Добавила 3 вариант задачки Фибоначчи
1 parent 4470b0a commit 406e403

1 file changed

Lines changed: 69 additions & 5 deletions

File tree

Фибоначчи.md

Lines changed: 69 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
1-
# Числа Фибоначчи — два варианта для практики
1+
# Числа Фибоначчи — три варианта для практики
22

3-
Здесь пока два кода на Java, которые помогут мне запомнить, как работает последовательность Фибоначчи.
3+
Здесь пока три кода на Java, которые помогут мне запомнить, как работает последовательность Фибоначчи.
44

55
Первый - просто выводит числа.
66
Второй - считает сумму всех чисел и выводит ее.
7+
Третий - показывает порядковый номер для каждого числа.
78

8-
Оба кода написаны в процессе тренировки.
9+
Три кода написаны в процессе тренировки.
910

1011
---
1112

@@ -50,7 +51,7 @@ public static String numbers() {
5051
---
5152

5253
## Вариант 2: считаем сумму чисел Фибоначчи
53-
Что делает:
54+
**Что делает:**
5455
Вычисляет первые 10 чисел Фибоначчи, складывает их и выводит только общую сумму.
5556

5657
**Код:**
@@ -106,4 +107,67 @@ public static String numbers() {
106107
- Сдвиг `a = b;`, `b = c;` — это сердце алгоритма
107108
- В варианте 1 я собираю строку `result`, в варианте 2 — число `sum`
108109

109-
⭐ Оба кода — моя шпаргалка. Когда забуду, как работает Фибоначчи, прихожу сюда и вспоминаю.
110+
---
111+
112+
## Вариант 3: числа Фибоначчи с порядковыми номерами
113+
114+
**Что делает:**
115+
- Выводит первые 12 чисел Фибоначчи
116+
- Каждое число сопровождается порядковым номером (1:, 2:, 3: ...)
117+
- Нумерация помогает сразу видеть, какое по счёту число в последовательности
118+
119+
**Код:**
120+
```java
121+
public static void main(String[] args) {
122+
System.out.println(numbers());
123+
}
124+
125+
public static String numbers() {
126+
String result = "";
127+
int a = 0; // первое число
128+
int b = 1; // второе число
129+
int count = 1; // счётчик для нумерации
130+
131+
result += count + ": " + a + "\n"; // 1: 0
132+
count++;
133+
134+
result += count + ": " + b + "\n"; // 2: 1
135+
count++;
136+
137+
for (int i = 3; i <= 12; i++) {
138+
int c = a + b; // следующее число
139+
a = b;
140+
b = c;
141+
result += count + ": " + c + "\n"; // 3: 1, 4: 2, 5: 3...
142+
count++;
143+
}
144+
return result;
145+
}
146+
```
147+
#### Пример вывода в консоли
148+
1: 0
149+
2: 1
150+
3: 1
151+
4: 2
152+
5: 3
153+
6: 5
154+
7: 8
155+
8: 13
156+
9: 21
157+
10: 34
158+
11: 55
159+
12: 89
160+
161+
**Что я тренирую на этом примере:**
162+
- Нумерацию элементов с помощью отдельного счётчика `count`
163+
- Одновременное накопление строки `result` и увеличение счётчика
164+
- Связь: номер числа `(count)` ↔ само число `(a, b, c)`
165+
- Логику Фибоначчи с нумерацией для наглядности
166+
167+
**Что можно менять для практики:**
168+
| Если хочу... | То меняю... |
169+
|------|-------------|
170+
| Больше чисел | `i <= 12` на `i <= N` |
171+
| Меньше чисел | `i <= 12` на `i <= N` |
172+
| Начать нумерацию с `0` | `int count = 0;` |
173+
| Выводить только чётные номера | Добавить `if (count % 2 == 0)` |

0 commit comments

Comments
 (0)