Василий Пупкин
Василий Пупкин

Найти число Фибоначчи, ближайшее к заданному натуральному числу N. (программирование в языке Си)

(программирование в языке Си)

ЕК
Елена Котова(Лященко)

#include
#include
#include
int main() {
int n, prev = 0, current = 1, fib = 0, min, x = 0;
printf("n?.. ");
scanf_s("%i", &n);
min = n;
do {
fib = prev + current;
if (abs(n - fib) < min) {
min = abs(n - fib);
x = fib;
}
current = prev;
prev = fib;
} while (fib < n);
printf("min = %i\n", x);
_getch();
return 0;
}

Надежда Дворенкова
Надежда Дворенкова

#include

int main() {
int a = 0, b = 1, n;
printf("n? ");
scanf("%d", &n);
while (b < n) {
b += a;
a = b - a;
}
printf("result: %d", b - n > n - a? a : b);
return 0;
}

YA
Yana Alieva

Рекурсивные функции, дружочек!
Если они там есть..

Ив
Иван

Сия функция по идее должна найти число меньше заданного:

int fibo(int n)
{
int a=1;
int b=1;
int c=2;
while (c < n)
{
c=a+b;
a:=b;
b:=c;
}
return c-a;
}

Может где напутал чуток - 100 лет на С не писал - но совсем малость.
Ну а дальше все как бы тривиально...

Похожие вопросы
где скачать язык программирования Си?
ПОМОГИТЕ С ПРОГРАММИРОВАНИЕМ. язык Си
Программирование на языке Си
В чем ошибка? Язык программирования Си.
Язык программирования Си
задано натуральное число n. Найти сумму цифр данного числа с помощью функции !!!(паскаль)
Вводится n.Вывести все числа Фибоначчи от 1 до n. Язык программирования С++
программирование, язык си
Дано натуральное число N. Среди натуральных чисел N,N+1,...2N найти всех близнецов.
Программирование. Язык си