Cтіндегі Fibonacci сериясын қалай құру керек?

Менде Fibonacci сериясын генерациялағым келеді. Менің кодым компиляция қатесін береді. Міне, код: Іс жүзінде бағдарламалауда жаңадан бастаймын.

main()
{
   int n, first = 0, second = 1, next, c;

   printf("Enter the number of terms\n");
   scanf("%d",&n);

   printf("First %d terms of Fibonacci series are :-\n",n);

   for ( c = 0 ; c < n ; C++ )
   {
      if ( c <= 1 )
         next = c;
      else
      {
         next = first + second;
         first = second;
         second = next;
      }
      printf("%d\n",next);
   }
}
4
Пожалуйста, бізге айтып, бұл «жұмыс емес». Бағдарлама апатқа ұшырады ма? Егер солай болса? Бұл дұрыс нәтиже бермей ме?
қосылды автор Eric J., көзі
@stefan: Мен C деп сенімдімін, бірақ C ++ жүйесінде main() ішінде return сөзі болмауы заңды (бірақ жаман стиль) бірақ ол int деп жарияланады. Бұл екі тілдің бұл ерекшелігін бөлісу мүмкін бе?
қосылды автор ereOn, көзі
@stefan: Мен C деп сенімдімін, бірақ C ++ жүйесінде main() ішінде return сөзі болмауы заңды (бірақ жаман стиль) бірақ ол int деп жарияланады. Бұл екі тілдің бұл ерекшелігін бөлісу мүмкін бе?
қосылды автор ereOn, көзі
Іс жүзінде бұл компиляция қатесін береді.
қосылды автор Sujeet Kumar, көзі
Барлық рахмет, Қазір Қазір жұмыс істейді. Мен int main() және қайтару мәлімдемесін қолдандым. @Nobilis
қосылды автор Sujeet Kumar, көзі
Барлық рахмет, Қазір Қазір жұмыс істейді. Мен int main() және қайтару мәлімдемесін қолдандым. @Nobilis
қосылды автор Sujeet Kumar, көзі
@NeeraJones printf үшін main мәселесіне қосымша #include дегенді ұмытпаңыз. Сонымен main алдында return 0; сияқты нәрсені қайтару керек
қосылды автор Nobilis, көзі
@NeeraJones printf үшін main мәселесіне қосымша #include дегенді ұмытпаңыз. Сонымен main алдында return 0; сияқты нәрсені қайтару керек
қосылды автор Nobilis, көзі
@stefan: Бұл әдетте тек ескерту береді, жоқ па?
қосылды автор legends2k, көзі
Бұл қате болды ма: 'printf' осы аумақта жарияланды
қосылды автор legends2k, көзі
@stefan: Әрине, мен оны білетінмін, бірақ сіз компиляторды әдетте gcc file.c немесе cl/EHsc file.c деп шақырғанда, оны жасайды әйтпесе, ескертулер әдепкі бойынша ҚОСЫЛҒАН емес.
қосылды автор legends2k, көзі
@stefan: Әрине, мен оны білетінмін, бірақ сіз компиляторды әдетте gcc file.c немесе cl/EHsc file.c деп шақырғанда, оны жасайды әйтпесе, ескертулер әдепкі бойынша ҚОСЫЛҒАН емес.
қосылды автор legends2k, көзі
... және қателіктер ...?
қосылды автор Jeff Mercado, көзі
Fibonacci нөмірін жылдам жасаудың ең жақсы тәсілі - Matrix Exponentation. тіпті O (log n) ішіндегі Modulo Prime нөмірін көбейте аласыз.
қосылды автор Shashank Jain, көзі
Fibonacci нөмірін жылдам жасаудың ең жақсы тәсілі - Matrix Exponentation. тіпті O (log n) ішіндегі Modulo Prime нөмірін көбейте аласыз.
қосылды автор Shashank Jain, көзі
@ legends2k бұл функцияның ешқандай мәнін қайтармаған стандартты емес, ол қате жіберуі керек.
қосылды автор stefan, көзі
@ legends2k бұл функцияның ешқандай мәнін қайтармаған стандартты емес, ол қате жіберуі керек.
қосылды автор stefan, көзі
@ereOn, бұл қайтарылған қайтару туралы мәлімдеме емес (бұл C ++ -де кем дегенде, C туралы білмеймін) туралы емес, ол i>
қосылды автор stefan, көзі
@ereOn, бұл қайтарылған қайтару туралы мәлімдеме емес (бұл C ++ -де кем дегенде, C туралы білмеймін) туралы емес, ол i>
қосылды автор stefan, көзі
@NeeraJones, себебі компилятор тек main() орнына int main() тіледі?
қосылды автор stefan, көзі

10 жауаптар

Бұл жақсы жұмыс істейді.

#include 
int main()
{
   int n, first = 0, second = 1, next, c;

   printf("Enter the number of terms\n");
   scanf("%d",&n);

   printf("First %d terms of Fibonacci series are :-\n",n);

   for ( c = 0 ; c < n ; C++ )
   {
      if ( c <= 1 )
         next = c;
      else
      {
         next = first + second;
         first = second;
         second = next;
      }
      printf("%d\n",next);
   }
return 0;
}
2
қосылды

Бұл жақсы жұмыс істейді.

#include 
int main()
{
   int n, first = 0, second = 1, next, c;

   printf("Enter the number of terms\n");
   scanf("%d",&n);

   printf("First %d terms of Fibonacci series are :-\n",n);

   for ( c = 0 ; c < n ; C++ )
   {
      if ( c <= 1 )
         next = c;
      else
      {
         next = first + second;
         first = second;
         second = next;
      }
      printf("%d\n",next);
   }
return 0;
}
2
қосылды

Бұл код алғашқы 5 fibonnacci нөмірін басып шығарады

#include
void main()
{
    int first,second,next,i,n;
    first=0;
    second=1;
    n=5;
    printf("\n%d\n%d",first,second);       
    for(i=0;i
1
қосылды

Бұл код алғашқы 5 fibonnacci нөмірін басып шығарады

#include
void main()
{
    int first,second,next,i,n;
    first=0;
    second=1;
    n=5;
    printf("\n%d\n%d",first,second);       
    for(i=0;i
1
қосылды

Бұл барлық мәндер үшін жұмыс істейтін болады.

void fibSeries(int n) 
{ 
    int first = 0, next = 1, index= 0;
    if(n <= 0)
        return;
    if(n == 1)
        printf("%d ", first);
    else
    {
        printf("%d %d ", first, next);
        if(n > 2)
        {
            while(index++ < (n-2)) 
            {       
                int temp = first + next; 
                first = next; 
                next = temp; 
                printf("%d ", next);
            } 
        }
    }
}
0
қосылды

Бұл барлық мәндер үшін жұмыс істейтін болады.

void fibSeries(int n) 
{ 
    int first = 0, next = 1, index= 0;
    if(n <= 0)
        return;
    if(n == 1)
        printf("%d ", first);
    else
    {
        printf("%d %d ", first, next);
        if(n > 2)
        {
            while(index++ < (n-2)) 
            {       
                int temp = first + next; 
                first = next; 
                next = temp; 
                printf("%d ", next);
            } 
        }
    }
}
0
қосылды
#include// header files
#include
void main()
{

 int f1=0,f2=1,f,n,i;
 printf("enter the no of terms");
 scanf("%d",&n);
  printf("the fibbonacci series:\n");
  printf("%d\n%d",f1,f2);
 for(i=2;i
0
қосылды
#include// header files
#include
void main()
{

 int f1=0,f2=1,f,n,i;
 printf("enter the no of terms");
 scanf("%d",&n);
  printf("the fibbonacci series:\n");
  printf("%d\n%d",f1,f2);
 for(i=2;i
0
қосылды
void main()
{
  int a,b,c;
  a = 0;
  b = 1 ;
  c = a + b;
  printf(" %d ",a);
  printf(" %d ",b);
  while ( c <= 100)
  {
    printf(" %d ",c);
    a = b;
    b = c;
    c = a + b;
  }
}
0
қосылды
void main()
{
  int a,b,c;
  a = 0;
  b = 1 ;
  c = a + b;
  printf(" %d ",a);
  printf(" %d ",b);
  while ( c <= 100)
  {
    printf(" %d ",c);
    a = b;
    b = c;
    c = a + b;
  }
}
0
қосылды