/* ovak, zadatak ti je glasio da moras, za ucitani prirodni broj manji ili jednak 2,000,000,000, ispisati na koliko se nacina moze rastaviti kao zbroj prirodnih brojeva, ali tako da ti brojevi slijede jedan drugoga, npr. ne mozes rastavit 15 kao 7+7+1, nego kao 4+5+6. isto tako 10 mozes rastaviti samo kao 1+2+3+4. */ #include #include void main() { double n, i=1, uvjet, srnj, broj; int uspjeh=0; printf("Unesi broj za rastav "); scanf("%10lf", &broj); uvjet=floor((broj-1)/2.); for(;i<=uvjet;++i) { n=i+i-1; n=(-n+sqrt(n*n+8*broj))/2.; if (!modf(n, &srnj)) ++uspjeh,++i; } printf("Broj rastava je: %d\n", uspjeh); }