|
1 / 1 / 0
Регистрация: 14.11.2019
Сообщений: 22
|
|
Последовательность чисел Фибоначчи через циклы19.11.2019, 18:06. Показов 15860. Ответов 6
Метки нет (Все метки)
Чего не хватает в коде для вывода последовательности чисел Фибоначчи?
Без возвращающих методов, без return class les3i8 { static void Main() { Console.WriteLine("Введите кол-во чисел в последовательности"); int s = 0; for (int num = 1; num <= 10; num++) { s = num - s; Console.WriteLine(s); } Console.ReadLine(); } } }
0
|
|
| 19.11.2019, 18:06 | |
|
Ответы с готовыми решениями:
6
Последовательность чисел Фибоначчи
Последовательность Фибоначчи |
|
1849 / 1191 / 501
Регистрация: 14.10.2018
Сообщений: 3,214
|
||||||
| 19.11.2019, 18:15 | ||||||
|
Roman_Marinov, логики (придет со временем) и переменных. На всякий случай ссылка Числа Фибоначчи
1
|
||||||
|
1 / 1 / 0
Регистрация: 14.11.2019
Сообщений: 22
|
|
| 20.11.2019, 14:36 [ТС] | |
|
сидел ломал голову, никак не пойму последовательность выполнения каждого действия во время выполнения цикла.
я сопоставлял с теми цифрами которые на выходе. не пойму как так получаются. если не трудно, можете написать? Добавлено через 4 минуты 1 1 2 3 5 8 13 21 34 55 89 144 233 377 Console.WriteLine(current); - это первая единица temp = current; - это вторая единица current = current + prev; - тут тоже будет 1, хотя должна быть 2 prev = temp; - тут еще 1, хотя должна быть 3 как разобраться?
0
|
|
|
1849 / 1191 / 501
Регистрация: 14.10.2018
Сообщений: 3,214
|
|||
| 20.11.2019, 15:09 | |||
Сообщение было отмечено Roman_Marinov как решение
Решение
Единственная переменная которая нам нужна в цикле для вывода на экран - это current.
Переменная prev запоминает какое число было до этого (нужно для логики) Переменная temp для запоминая значений (нужно для логики) Напечатано: 0 (до цикла) Начало цикла 1 проход) Напечатано: 0 1 temp = current; // temp = 1 // единица current = current + prev; // 1 = 1 + 0 // единица prev = temp; // prev = 1 // единица 2 проход) Напечатано: 0 1 1 temp = current; // temp = 1 // единица current = current + prev; // current = 1 + 1 // двойка prev = temp; // prev = 1 // единица 3 проход) Напечатано: 0 1 1 2 temp = current; // temp = 2 // двойка current = current + prev; // current = 2 + 1 // тройка prev = temp; // prev = 2 // двойка 4 проход) Напечатано: 0 1 1 2 3 temp = current; // temp = 3 // тройка current = current + prev; // current = 3 + 2 // пятерка prev = temp; // prev = 3 // тройка 5 проход) Напечатано: 0 1 1 2 3 5 temp = current; // temp = 5 // пятерка current = current + prev; // current = 5 + 3 // восьмерка prev = temp; // prev = 5 // пятерка Добавлено через 1 минуту
1
|
|||
|
1 / 1 / 0
Регистрация: 14.11.2019
Сообщений: 22
|
|
| 20.11.2019, 16:05 [ТС] | |
|
спасибо, очень подробно расписали.
скажите на что сначала и потом обращали внимание, чтобы написать такую логику? я так же хотел бы уметь.
0
|
|
|
1849 / 1191 / 501
Регистрация: 14.10.2018
Сообщений: 3,214
|
|||
| 20.11.2019, 16:43 | |||
Сообщение было отмечено Roman_Marinov как решение
Решение2) увидев закономерность, понял что следующее число образуется из текущего и предыдущего (для этого нужны 2 переменные) current и prev 3) В цикле понял, что не получается обойтись 2-мя переменными, добавил 3-ю temp 4) Число ноль не получилось отобразить в цикле (вынес за его пределы) 5) Протестил код - все работает - скинул вам 1) переменные 2) условия (if else) 3) циклы (while, do while, for) 4) массивы (обычные, двумерные, зубчатые) 5) Отладчик (дебаггер) И вперед на этот форум. ОЧЕНЬ часто попадают задачки на массивы. Просто решайте их и логика со временем будет "прокачиваться". Со временем станет скучно делать такие легкие задачки.
1
|
|||
|
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 20.11.2019, 16:44 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Сообщение было отмечено Roman_Marinov как решение
Решение
Обратили внимание, что на каждой итерации значения как бы смещаются влево? Предыдущее становится Текущим, Текущее становится Следующим, а Следующее становится суммой Предыдущего и Текущего. Вот и реализуйте этот простейший алгоритм:
1
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 20.11.2019, 16:44 | |
|
Помогаю со студенческими работами здесь
7
Последовательность Фибоначчи По тексту вывести последовательность Фибоначчи
Проверить образуют ли введенные числа последовательность Фибоначчи Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
kYBz3eJf3jQ
|
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
|
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
|
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора
Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если. . .
|
|
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
|
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
|
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|