Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 17.06.2019
Сообщений: 12

Определить в заданной последовательности целых чисел количество чисел Фибоначчи

17.06.2019, 20:04. Показов 2341. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Определить в заданной последовательности целых чисел количество чисел Фибоначчи.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.06.2019, 20:04
Ответы с готовыми решениями:

Определить в заданной последовательности целых чисел количество чисел Фибоначчи
Определить в заданной последовательности целых чисел количество чисел Фибоначчи.

Определить в заданной последовательности целых чисел количество чисел Фибоначчи
Выполнить задания, если задана последовательность целых чисел длиной n. Определить в заданной последовательности целых чисел количество...

Определить, содержится ли в заданной последовательности целых чисел хотя бы одно число Фибоначчи
Помогите написать) 3. задача. Определить, содержится ли в заданной последовательности целых чисел хотя бы одно число Фибоначчи ...

4
 Аватар для Aviz__
2748 / 2056 / 508
Регистрация: 17.02.2014
Сообщений: 9,484
24.06.2019, 15:32
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ThreadLocalRandom;
import java.util.stream.IntStream;
 
public class Helper {
    private static List<Long> fiboArr = new  ArrayList<>();
 
    public static void main(String[] args) {
        fillFiboArray();
        System.out.println("Тут: ");
        int [] arrInt = IntStream.generate(() -> ThreadLocalRandom.current().nextInt(0, 100))
                .limit(11)
                .peek(i -> System.out.print(i + ", "))
                .toArray();
        System.out.println("\nЧисел Фибонначи = " + IntStream.of(arrInt).filter(i -> fiboArr.contains((long) i)).count());
 
    }
 
    private static void fillFiboArray() {
        fiboArr.add(0L);
        long lastFibo = 1;
        fiboArr.add(1L);
        long corrFibo = 2;
        fiboArr.add(2L);
        long nextFibo = 3;
        int steps = 0;
        while (nextFibo > lastFibo) {
            nextFibo = lastFibo + corrFibo;
            fiboArr.add(nextFibo);
            lastFibo = corrFibo;
            corrFibo = nextFibo;
            steps++;
        }
        fiboArr.remove(fiboArr.size() - 1);
    }
}
возможный результат работы:
Тут:
4, 92, 2, 6, 71, 8, 74, 27, 67, 1, 57,
Чисел Фибонначи = 3
0
 Аватар для HighPredator
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
25.06.2019, 11:15
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
public class Main {
    private static IntPredicate isFibonacci = x -> {
        int a = 0;
        int b = 1;
        int f = 1;
 
        while (b < x) {
            f = a + b;
            a = b;
            b = f;
        }
 
        return x == f;
    };
 
    public static void main(String[] args) {
        int a[] = {1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765};
        int b[] = {1, 2, 3, 4, 5, 6, 7, 8};
 
        System.out.println(countElements(a, isFibonacci));
        System.out.println(countElements(b, isFibonacci));
    }
 
    public static long countElements(int a[], IntPredicate predicate) {
         return Arrays.stream(a)
                .filter(predicate)
                .count();
    }
}
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
25.06.2019, 11:35
Лучший ответ Сообщение было отмечено Aviz__ как решение

Решение

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
private static long countFibonacci(int[] ints) {
        return Arrays.stream(ints).filter(App::isFibonacci).count();
    }
 
    private static boolean isFibonacci(int i) {
        return isPerfectSquare(5 * i * i + 4) || isPerfectSquare(5 * i * i - 4);
    }
 
    private static boolean isPerfectSquare(int i) {
        int s = (int) sqrt(i);
        return s * s == i;
    }
 
    public static void main(String[] args) {
        int[] ints = ThreadLocalRandom.current().ints(0, 100).limit(10).toArray();
        System.out.format("There are %d fibonacci numbers in %s\n", countFibonacci(ints), Arrays.toString(ints));
    }
0
 Аватар для Aviz__
2748 / 2056 / 508
Регистрация: 17.02.2014
Сообщений: 9,484
25.06.2019, 12:24
Цитата Сообщение от xoraxax Посмотреть сообщение
i * i
достаточно быстро выйдет за пределы int.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
25.06.2019, 12:24
Помогаю со студенческими работами здесь

Определить количество положительных и отрицательных целых чисел в заданной последовательности
с++. даны натуральное число n, действительные числа a1, .,an 1 Определить количество положительных и отрицательных целых чисел 2...

В заданной последовательности целых чисел найти количество чисел кратных заданному
Напишите программу, которая в последовательности целых чисел определяет количество чисел, кратных 5 или 7. Программа получает на вход целые...

В последовательности целых чисел определить сумму и количество четных чисел, кратных 5
Напишите программу, которая в последовательности целых чисел определяет их сумму и количество четных чисел,кратных 5. Программа получает на...

В последовательности целых чисел определить количество чётных чисел, кратных 7
Напишите программу, которая в последовательности целых чисел определяет количество чётных чисел, кратных 7. Программа получает на вход...

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru