Not a member of Pastebin yet?
                        Sign Up,
                        it unlocks many cool features!                    
                - #include <bits/stdc++.h>
 - using namespace std;
 - const int rozmiar = 1000;
 - int tab [2][rozmiar];
 - int main(){
 - cout<<"Witaj w programie przenaczonym do liczenia kolejnych liczb Fibonacciego.\nWpisz, do ktorego elementu ciagu chcialbys generowac kolejne elementy ciagu.\nUwaga:Nie da sie wygenerowac wiecej niz 10^18 liczb!\nDominik Matuszek 2019.\n";
 - long long a;
 - start:
 - cin>>a;
 - cout<<"\n";
 - if(a>=0){
 - cout<<"f(0)="<<0<<"\n";
 - }
 - else{
 - cout<<"Numery ciagu oznaczamy od liczby 0! Podaj inna liczbe:\n";
 - goto start;
 - }
 - if(a>0){
 - cout<<"f(1)="<<1<<"\n";
 - }
 - if(a>1){
 - cout<<"f(2)="<<1<<"\n";
 - }
 - int maksz=0;
 - tab[0][rozmiar]=1;
 - tab[1][rozmiar]=1;
 - for(unsigned long long i=3;i<a+1;i++){
 - for(int j=rozmiar-maksz;j<=rozmiar;j++){
 - tab[i%2][j]=tab[(i-1)%2][j]+tab[i%2][j];
 - }
 - for(int j=rozmiar;j>0;j--){
 - if(tab[i%2][j]>9){
 - //cout<<"rozmiar"<<rozmiar-j+1<<endl;
 - maksz=max(maksz,rozmiar-j+1);
 - tab[i%2][j-1]++;
 - tab[i%2][j]=tab[i%2][j]-10;
 - }
 - }
 - cout<<"f("<<i<<")=";
 - for(int j=rozmiar-maksz;j<=rozmiar;j++){
 - if(tab[i%2][j]>9){
 - cout<<"Shit";
 - return 0;
 - }
 - cout<<tab[i%2][j];
 - }
 - cout<<"\n";
 - }
 - }
 
Advertisement
 
                    Add Comment                
                
                        Please, Sign In to add comment