Anonymní profil dalo – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil dalo – Programujte.comAnonymní profil dalo – Programujte.com

 

Příspěvky odeslané z IP adresy 85.207.191.–

dalo
C / C++ › Rozklad na součet Fibbonačih…
22. 12. 2009   #121485

Zdravím,byl by někdo tak ochotný a okomentoval mi po řádcích funkci tohoto programu? Jedná se o Rozklad na součet Fibbonačiho čísel. Hlavně mě zajímá proč se na konci počítá zrovna s c= 20. Děkuji

#include <stdio.h>
#include <stddef.h>
#include <stdlib.h>


void fill_fib_arr(unsigned int *pf, unsigned int size) // funkce na vyplneni pole fibonacciho posloupnosti
{

pf[0]=1; // nastaveni prvniho prvku pole

pf[1]=1; // nastaveni druheho prvku pole



for(unsigned int c=2;c<size;c++)
{
pf[c]=pf[c-1]+pf[c-2]; // cyklus na spocitani posloupnosti
}
}

int main(int argc, char *argv[])
{

unsigned int fibb[20]; //deklarace potrebnych promennych

unsigned int *px=fibb;
unsigned int in=0;
unsigned int temp=0;

//system("cls"); win
system("clear"); //linux // clear konzole
fill_fib_arr(px,20); // naplneni pole fibb posloupnosti

printf("\n\nZadejte cislo, ktere chcete rozlozit na soucet Fibonacciho cisel: ");
scanf("%d",&in);


printf("\nRozklad cisla %d na soucet fibonacciho cisel vypada nasledovne: ",in);


unsigned int c=19;
while(1) // algoritmus na rozklad cisla na fibonacciho posloupnost
{
temp+=fibb[c];
if(temp==in)
{
printf(" %d ",fibb[c]);
break;
}
if(temp<in)
{
printf(" %d +",fibb[c]);
}
if(temp>in)
{
temp-=fibb[c];
}

c--;
}
return 0;
}

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý