Bac.2009-Varianta 54
Subiectul I
1. d
2. a)
b)
c)
d)
#include <iostream>
using namespace std;
int main()
{
cout << "Hello world!" << endl;
int s,n,c,p,i;
cout<<"n=";cin>>n;
s=0;
while(n!=0)
{
c=n%10;
if(c%2==0)
{
p=1;
for(i=2;i<=c;i++)
p=p*i;
s=s+p;
}
n=n/10;
}
cout<<s;
return 0;
}
Subiectul II
1.
2.
3.
4.
5.
#include <iostream>
using namespace std;
int main()
{
cout << "Hello world!" << endl;
int n,x,i,j;
cout<<"n=";cin>>n;
cout<<"x=";cin>>x;
int a[n][n];
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(i%2!=0)
a[i][j]=x/10;
else
a[i][j]=x%10;
for(i=1;i<=n;i++)
{for(j=1;j<=n;j++)
cout<<a[i][j]<<" ";
cout<<endl;
}
return 0;
}
Subiectul III
1.
2.
3.
a)
int palindrom(int n)
{
int aux,inv=0;
aux=n;
while(aux)
{
inv=inv*10+aux%10;
aux=aux/10;
}
if(n==inv)
return 1;
else
return 0;
}
void pal(int a, int &b)
{
int i,k=0;
for(i=11;i<=a-1;i++)
if(palindrom(i))
b=i;
k=b;
i=a;
while(palindrom(i)==0)
i++;
b=i;
if(a-k<b-a)
b=k;
}
b)
#include <iostream>
#include <fstream>
using namespace std;
int palindrom(int n)
{
int aux,inv=0;
aux=n;
while(aux)
{
inv=inv*10+aux%10;
aux=aux/10;
}
if(n==inv)
return 1;
else
return 0;
}
void pal(int a, int &b)
{
int i,k=0;
for(i=11;i<=a-1;i++)
if(palindrom(i))
b=i;
k=b;
i=a;
while(palindrom(i)==0)
i++;
b=i;
if(a-k<b-a)
b=k;
}
int main()
{
cout << "Hello world!" << endl;
int i,n,x,b=0;
ifstream f("date.in");
f>>n;
for(i=1;i<=n;i++)
{
f>>x;
pal(x,b);
cout<<b<<" ";
}
f.close();
return 0;
}
4.
#include <iostream>
using namespace std;
int main()
{
cout << "Hello world!" << endl;
int n,i,s=0;
cout<<"n=";cin>>n;
int a[n];
for(i=1;i<=n;i++)
cin>>a[i];
for(i=2;i<=n-1;i++)
if(a[i]==a[i-1]+a[i+1])
s++;
cout<<s;
return 0;
}