<MyRusakov.ru />

PHP и MySQL с Нуля до Гуру 3.0

PHP и MySQL с Нуля до Гуру 3.0

Данный курс научит Вас программировать на самом популярном Web-языке в мире - PHP. Курс состоит из 9 разделов, в которых с нуля рассказывается и показывается процесс написания различных скриптов на PHP.

В курсе Вы узнаете всю необходимую теоретическую часть, а также увидите массу практических примеров, в том числе, и из моей практики.

В Бонусе «Создание сайта для библиотеки» Вы увидите применение знаний из основного курса при создании полноценного проекта.

Просмотрев данный курс, Вы сможете создавать абсолютно любые PHP-сайты любой сложности.

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Зачем Вы изучаете программирование/создание сайтов?

Поиск числа Фибоначчи

Поиск числа Фибоначчи

Итальянский ученый Леонардо Пизанский вывел закономерную последовательность чисел, при которой каждое стоящее в ряду число, является результатом суммы двух предыдущих чисел. Казалось бы, что в этой последовательности нет ничего особенного, но математик заметил, что при делении каждого последующего числа на предыдущее, получается всегда примерно одинаковое число 1.618. В дальнейшем число 1.618 стали называть числом Фибоначчи (прозвище гениального математика).

Последовательность Фибоначчи

Вот так выглядит последовательность Фибоначчи:

0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377 и так далее.
// Данные вычисления создают последовательность Фибоначчи
// 0 + 1 = 1
// 1 + 1 = 2
// 2 + 1 = 3
// 3 + 2 = 5
// 5 + 3 = 8


// Математическая формула
// Fn = F(n-1) + F(n-2)

При нарастании чисел в данной последовательности, результатом деления всегда будет число 1.618.



// Как получилось число Фи = 1.618
2 / 1 = 2;
8 / 5 = 1,625;
8 / 5 = 1,619;
89 / 55 = 1,618;
144 / 89 = 1,618;
...

Функция для поиска числа Фибоначчи

Напишем функцию на JavaScript для быстрого вычисления числа Фибоначчи. Сначала создадим саму функцию fib и внутри функции запустим цикл for(). Внутри цикла создадим переменную счетчик с начальным значением 1. Зададим условие, что цикл будет продолжать работу до тех пор, пока i меньше n. С каждым проходом цикла, будем увеличивать счетчик на единицу.

function fib(n) {
    for(let i = 1; i <= n; i++ ) {
    ...
    }
}

Укажем начальные значения и занесем их в переменные.

// руководствуемся математической формулой Fn = F(n-1) + F(n-2)
let f1 = 0; // первое значение n-1
let f2 = 1; // второе значение n-2
let cf = 1; // текущее значение

Для начала вычислим текущее значение числа Фибоначчи путем сложения переменных f1 + f2. Затем переместим значение f2 на место f1, а f2 будет равняться текущему значению числа Фибоначчи cf.

function fib(n) {
    let f1 = 0, f2 = 1, cf = 1;
    for(let i = 1; i <= n; i++ ) {
        cf = f1 + f2;
         f1 = f2;
        f2 = cf;
    }
    return cf;
}

console.log(fib(60)); // 2504730781961

Проверяем работу функции: выберем случайное число и передадим его в функцию, на выходе получим значение числа Фибоначчи от 60 равным 2504730781961.

При чем здесь кролики?

В математике используется выражение "золотое сечение" - это такое пропорциональное деление отрезка на неравные части. Все, что нас окружает, находится в пропорциях "золотого сечения". Леонардо Пизанский в одной из своих задач решил посчитать, сколько пар кроликов появится на свет за один год от одной пары кроликов. Сначала от одной пары появится одна пара кроликов, затем две, а потом сразу три. От трех пар уже появится пять пар кроликов. Таким образом он получил последовательность, в которой каждый последующий элемент начиная с третьего, равен сумме двух предыдущих.


Поиск числа Фибоначчи.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (0):

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.