Форум программистов, компьютерный форум, киберфорум
Наши страницы
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Сергей_СПб
3 / 3 / 1
Регистрация: 13.12.2017
Сообщений: 172
#1

Вывод общего количества чисел в ряду Фибоначчи

21.12.2017, 18:47. Просмотров 888. Ответов 18
Метки нет (Все метки)

Всем привет,
ниже известная задача на ряд Фибоначчи:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/*Числа Фибоначчи до 20 первых чисел
 * Каждое последующее число равно сумме двух предидущих
 * */
public class Pr_1_3 {
 
    public static void main(String[] args) {
        int n0=1; int n1=1, n2;
        
        System.out.print(n0+" "+n1+ " ");
        
        
        for(int i =1; i<18; i++) {
            n2=n0+n1;
            System.out.print(n2+" ");
            n0=n1;
            n1=n2;  
            }
        int i=0;
        while (i<args.length) {System.out.print(args[i]+" ");
        i++;}
        }
 
}
Вопрос: как вывести System.out.print - ом общее количество чисел в ряду, типа "Общеечисло ряда = 20"
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.12.2017, 18:47
Ответы с готовыми решениями:

Программа для подсчета общего количества слов во введенной строке, а также количества целых чисел среди них
Помогите, пожалуйста, написать программу для подсчета общего количества слов во...

Какое место число занимает в существующем ряду введенных чисел, если бы они были отсортированы по возрастанию?
Суть в следующем: С клавиатуры вводится большое количество чисел (их может...

Инкремент общего счетчика. Добавить вывод в каждом потоке
Всем привет! Помогите, пожалуйста, переделать программу под условие задания,...

Вывод последовательности Фибоначчи
Разработать самостоятельно, набрать на ПК и отладить программу вычисления и...

Сортировка чисел в массиве, для общего понимания
Просто, говорят что не эффективно, но зато понятно/*этот класс производит...

18
iSmokeJC
Модератор
682 / 631 / 305
Регистрация: 21.10.2017
Сообщений: 2,110
21.12.2017, 19:39 #2
Лучший ответ Сообщение было отмечено Сергей_СПб как решение

Решение

Перед циклом задаешь переменную, например int count = 2; и в цикле count++. Ну и в конце выводишь...
1
Сергей_СПб
3 / 3 / 1
Регистрация: 13.12.2017
Сообщений: 172
21.12.2017, 20:15  [ТС] #3
iSmokeJC, спасибо, заработало
Я её пытался в условиях цикла задать, а нужно - перед циклом
0
Aviz__
463 / 320 / 105
Регистрация: 17.02.2014
Сообщений: 2,247
22.12.2017, 09:57 #4
Лучший ответ Сообщение было отмечено Сергей_СПб как решение

Решение

до 4-х миллиардов первых чисел Фибоначчи
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
private static BigInteger numFib(int n) {
        BigInteger fn1 = BigInteger.ZERO;
        BigInteger fn2 = BigInteger.ONE;
        BigInteger current = BigInteger.ONE;
 
        int counter = 1;
        while (counter < n ) {
            current = fn1.add(fn2);
            fn1 = fn2;
            fn2 = current;
            ++counter;
        }
 
        return current;
    }
1
iSmokeJC
Модератор
682 / 631 / 305
Регистрация: 21.10.2017
Сообщений: 2,110
22.12.2017, 11:21 #5
Сергей_СПб, можно и в условии цикла, почему нет?

Добавлено через 1 минуту
for(int i =1, count = 2; i<18; i++, count++)

Добавлено через 1 минуту
Только объявить все равно до цикла придется

Добавлено через 4 минуты
Хотя нет, сморозил. Забей
0
Сергей_СПб
3 / 3 / 1
Регистрация: 13.12.2017
Сообщений: 172
22.12.2017, 13:09  [ТС] #6
Aviz__, разве не надо
import java.math.BigInteger;
если обращаешься к BigInteger????
0
Aviz__
463 / 320 / 105
Регистрация: 17.02.2014
Сообщений: 2,247
22.12.2017, 13:13 #7
Цитата Сообщение от Сергей_СПб Посмотреть сообщение
import java.math.BigInteger;
а как вы думаете, надо?
0
Сергей_СПб
3 / 3 / 1
Регистрация: 13.12.2017
Сообщений: 172
22.12.2017, 13:13  [ТС] #8
Aviz__,
Ну да, ты просто привел метод.
импорт в майне,
все не могу к этому привыкнуть/ до конца понять
0
Aviz__
463 / 320 / 105
Регистрация: 17.02.2014
Сообщений: 2,247
22.12.2017, 13:14 #9
Сергей_СПб, видите, какой вы умный!
0
Сергей_СПб
3 / 3 / 1
Регистрация: 13.12.2017
Сообщений: 172
22.12.2017, 13:18  [ТС] #10
С Вами по общаешься, не таким станешь.
Какие общие правила для написания отдельного класса/файла с условием/заданием и отдельного класса с методом решен?, постепенно врубаюсь
Спасибо
0
Aviz__
463 / 320 / 105
Регистрация: 17.02.2014
Сообщений: 2,247
22.12.2017, 13:20 #11
Дерзайте))
0
Сергей_СПб
3 / 3 / 1
Регистрация: 13.12.2017
Сообщений: 172
22.12.2017, 15:13  [ТС] #12
И не работает
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
import java.math.BigInteger;
 
public class Fibonachi {
 
    public static void main(String[] args) {
        int i=0;
        while (i<args.length) {System.out.print(args[i]+" ");
        i++;}
 
    }
    
    private static BigInteger numFib(int n) {
        BigInteger fn1 = BigInteger.ZERO;
        BigInteger fn2 = BigInteger.ONE;
        BigInteger current = BigInteger.ONE;
 
        int counter = 1;
        while (counter < 10 ) {
            current = fn1.add(fn2);
            fn1 = fn2;
            fn2 = current;
            ++counter;
        }
 
        return current;
    }
 
}
Даже ошибок не выдает
0
Aviz__
463 / 320 / 105
Регистрация: 17.02.2014
Сообщений: 2,247
22.12.2017, 15:33 #13
по шагам отладку сделайте)
1
Сергей_СПб
3 / 3 / 1
Регистрация: 13.12.2017
Сообщений: 172
22.12.2017, 16:02  [ТС] #14
Цитата Сообщение от Aviz__ Посмотреть сообщение
по шагам отладку сделайте)
Ок. но это будет жесть.

1. Есть метод numFib(int n) содержащий вычисления чего-либо
и возвращающий последнее число current после вычисления в цикле while (counter < n ),
причем int n - просто ограничитель цикла (можем поставить 10, можем 15 в условии цикла (counter < 15 )).

2. Есть класс main, который принимает последнее число current в качестве аргумента и печатает его
System.out.print(current+" ") - это если нужна конечное число.

По логике юзера должно быть так.
Где собака
0
Aviz__
463 / 320 / 105
Регистрация: 17.02.2014
Сообщений: 2,247
22.12.2017, 20:51 #15
Цитата Сообщение от Сергей_СПб Посмотреть сообщение
System.out.print(args[i]+" "); i++;}
Так, вы же не вызываете метод! И вы в блокноте, чтоль пишите?!!!!!!
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import java.math.BigInteger;
 
public class Fibonachi {
 
    private static void printNumFib(int n) {
        BigInteger fn1 = BigInteger.ZERO;
        BigInteger fn2 = BigInteger.ONE;
        BigInteger current = BigInteger.ONE;
 
        int counter = 1;
        while (counter < n ) {
            current = fn1.add(fn2);
            fn1 = fn2;
            fn2 = current;
            ++counter;
            System.out.printf("%d,", current);
        }
 
    }
 
    public static void main(String[] args) {
        printNumFib(25);
    }
0
Сергей_СПб
3 / 3 / 1
Регистрация: 13.12.2017
Сообщений: 172
22.12.2017, 21:24  [ТС] #16
Цитата Сообщение от Aviz__ Посмотреть сообщение
в блокноте, чтоль пишите?!!!!!!
Пишу в Eclipse
Цитата Сообщение от Aviz__ Посмотреть сообщение
Так, вы же не вызываете метод!
Если возможно поясните на конкретном примере, как вызвать, как привести к некоему стандарту:
класс - условие и вывод
класс - метод решения,
Ведь метод с решением был уже готов
Цитата Сообщение от Aviz__ Посмотреть сообщение
до 4-х миллиардов первых чисел Фибоначчи
почему понадобилось поменять код?
Спасибо
0
iSmokeJC
Модератор
682 / 631 / 305
Регистрация: 21.10.2017
Сообщений: 2,110
22.12.2017, 21:27 #17
Браза, тебе ж написали:
Цитата Сообщение от Aviz__ Посмотреть сообщение
public static void main(String[] args) {
* * * * printNumFib(25);
* * }
Вызов метода таки...
1
Aviz__
463 / 320 / 105
Регистрация: 17.02.2014
Сообщений: 2,247
22.12.2017, 21:39 #18
Цитата Сообщение от Сергей_СПб Посмотреть сообщение
как вызвать
простите, но это уже сами))
1
Сергей_СПб
3 / 3 / 1
Регистрация: 13.12.2017
Сообщений: 172
22.12.2017, 21:53  [ТС] #19
Ведь метод с решением был уже готов
Сообщение от Aviz__
до 4-х миллиардов первых чисел Фибоначчи
почему понадобилось поменять код?

Добавлено через 1 минуту
Ладно буду разбираться.
- И все сам, сам. Не вредная работ
0
22.12.2017, 21:53
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.12.2017, 21:53

Нахождение наименьшего общего делителя двух чисел
Помогите решить в Java, необходимо решить с помощью создания отдельного класса...

Определение наименьшего общего кратного двух натуральных чисел
Составить программу определения наименьшего общего кратного двух натуральных...

Вывод 50 первых членов ряда Фибоначчи, используя массивы
Необходимо составить программу для вывода 50 первых членов ряда Фибоначчи,...


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

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru