You are on page 1of 3

81.

Suma
#include <iostream>
using namespace std;
int suma(int v[],int s,int d)
{int a,b,sum;
if(s==d) return v[s];
else {a=suma(v,s,(s+d)/2);
b=suma(v,(s+d)/2+1,d);
return a+b;
}
}
int main()
{
int v[100],n,i;
cin>>n;
for(i=1;i<=n;i++)
cin>>v[i];
cout<<suma(v,1,n);
}

2.Produs
#include <iostream>
using namespace std;
int Produs(int v[],int s,int d)
{int a,b,sum;
if(s==d) return v[s];
else {a=Produs(v,s,(s+d)/2);
b=Produs(v,(s+d)/2+1,d);
return a*b;
}
}
int main()
{
int v[100],n,i;
cin>>n;
for(i=1;i<=n;i++)
cin>>v[i];
cout<<Produs(v,1,n);
}

3.Minim
#include <iostream>
using namespace std;
int Minim(int v[],int s,int d)
{int a,b,min=100;
if(s==d) return v[s];
else {a=Minim(v,s,(s+d)/2);
b=Minim(v,(s+d)/2+1,d);
if(a<min)
min=a;
else if(b<min) min=b;
return min;
}
}
int main()
{
int v[100],n,i;
cin>>n;
for(i=1;i<=n;i++)
cin>>v[i];
cout<<Minim(v,1,n);
}

4.Cmmdc
#include <iostream>
using namespace std;
int cmmdc(int v[],int s,int d)
{int a,b;
if(s==d) return v[s];
else {a=cmmdc(v,s,(s+d)/2);
b=cmmdc(v,(s+d)/2+1,d);
while(a!=b)
if(a>b)a=a-b;
else b=b-a;
return a;
}
}
int main()
{
int v[100],n,i;
cin>>n;
for(i=1;i<=n;i++)
cin>>v[i];
cout<<cmmdc(v,1,n);
}

5.Cautare numar

#include <iostream>
using namespace std;
int v[100],x,m;
int caut(int s,int d)
{
if(s>d) return -1 ;
else {m=(s+d)/2;
if(x==v[m])
return m;
else if(x<m)
caut(s,(d+s)/2);
else caut((s+d)/2+1,d);
}
}
int main()
{
int n,i;
cin>>x;
cin>>n;
for(i=1;i<=n;i++)
cin>>v[i];
cout<<caut(1,n);
}

6.

You might also like