Im пытается рассчитать последовательность фибоначчи на пользовательский ввод. Таким образом, если пользователь вводит 10 программа будет выводить все числа в последовательности до 10 в этом случае его 0, 1, 1, 2, 3, 5, 8C фибоначчи с пользовательским вводом
Вот мой код:
#include <stdio.h>
int main()
{
/* variable definition: */
int a, b, usrNumber;
/* Initialize */
a = 0;
b = 1;
usrNumber = 0;
/* Ask user for number */
printf("Please enter a positive number\n");
scanf("%d", &usrNumber);
/* Conduct Loop */
while (b < usrNumber)
{
printf("%d \n",a);
a += b;
printf("%d \n",b);
b += a;
}
return(0);
}
Когда я запускаю его на 10 и 60, последовательность останавливает одно короткое число, ожидаемое. Когда я запускаю его на 90, или 300, последовательность работает так, как ожидалось. Любые мысли о том, почему я не могу заставить более низкие числа работать?
Извините, моя первая версия была неправильной, я только что обновил ее. – Addison
Это то, что я искал. Я до сих пор не знаю, почему мой исходный код не работает, когда я ставлю 10 или 60, но он подходит для 90 или 300 ... – jojonac
Удивительный! Я не знаю, но, вероятно, из-за небольших расстояний между цифрами при вводе меньшего числа – Addison