1Oct_lisha19.cpp
Closed this issue · 0 comments
#include <bits/stdc++.h>
using namespace std;
vector SieveOfEratosthenes(vector r)
{
int n = r[r.size()-1];
bool prime[n + 1];
memset(prime, true, sizeof(prime));
prime[0] = false;
prime[1] = false;
for (int p = 2; p * p <= n; p++)
{
if (prime[p] == true)
{
for (int i = p * p; i <= n; i += p)
prime[i] = false;
}
}
// Print all prime numbers
for(int i=0; i<r.size(); i++)
if(prime[r[i]]==true || r[i]%5==0)
r[i] = 0;
return r;
}
vector printFibonacciNumbers(int n)
{
vector r;
int f1 = 0, f2 = 1, i;
if (n < 1)
return r;
for (i = 1; i < n; i++) {
r.push_back(f2);
int next = f1 + f2;
f1 = f2;
f2 = next;
}
return r;
}
// Driver Code
int main()
{
int n;
cout<<"Enter number of terms required:";
cin>>n;
vector r = printFibonacciNumbers(n+1);
r = SieveOfEratosthenes(r);
for(int i=0; i<r.size(); i++)
cout<<r[i]<<" ";
return 0;
}