Bacalaureat 2007-Sesiunea august-septembrie
Rezolvare Bac 2007-sesiunea de toamna
Subiectul I
1. float x
2. 2 muchii
3. 4 cuvinte care se termina in a
4.
k<- 0
-pentru i<-i,15 executa
| |- daca ai >=0 atunci k<- ai +k
| |_
|_
5. q->urm>urm->urm==p->urm
6. maxim 6 noduri
7. a=720 b=6
8. ex(2,10) afiseaza 2345620
Subiectul II
1.
citeste n (numar natural)
x<-0
- repeta
| x<-x*10+n%10
| n<-[n/10]
| e<-n*(n-x) + ( [n/10] - x)
| pana cand e=0
|_
- daca n>0
| atunci scrie 'A'
| altfel scrie 'B'
|_
pentru n=123321 afiseaza A
2. 12321 si 12322 afiseaza valori diferite (sunt numere consecutive)
3. citeste n (numar natural)
x<-0
- cat timp(e<>0) executa
| x<-x*10+n%10
| n<-[n/10]
| e<- n*(n-x) + ([n/10]-x)
|_
- daca n>0
| atunci scrie 'A'
| altfel scrie 'B'
|_
4.
#include <iostream>
using namespace std;
int main()
{
cout << "Hello world!" << endl;
int n,x,e;
cout<<"n=";cin>>n;
x=0;
do
{
x=x*10+n%10;
n=n/10;
e=n*(n-x)*(n/10 - x);
}while(e!=0);
if(n>0)
cout<<"A";
else
cout<<"B";
return 0;
}
Subiectul III
1.
#include <iostream>
using namespace std;
int main()
{
cout << "Hello world!" << endl;
int s,n,i,j;
do
{cout<<"Introduceti un numar impar mai mare ca 2 si mai mic ca 23 : ";
cin>>n;
}while((n<=2) || (n>=23) || (n%2==0) );
int a[n][n];
s=(n+1)/2;
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{ a[s][s]=2;
if(i==s || j==s)
a[i][j]=1;
if(i!=s && j!=s)
a[i][j]=3;
}
}
cout<<endl;
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
cout<<a[i][j]<<" ";
}
cout<<endl;
}
return 0;
}
2.
a)
#include <iostream>
using namespace std;
int prim(int n)
{ int p=1,d=2;
while ( (d<n) && (p==1) )
{
if (n%d==0)
p=0;
d=d+1;
}
if (p==1)
return n;
}
int produs(int a)
{
int t=1,di=1;
for(di=1;di<a;di++)
{
if(a%di==0 && prim(di))
t=t*di;
}
return t;
}
int main()
{
cout << "Hello world!" << endl;
cout<<produs(300);
return 0;
}
b)
#include <iostream>
using namespace std;
int prim(int n)
{ int p=1,d=2;
while ( (d<n) && (p==1) )
{
if (n%d==0)
p=0;
d=d+1;
}
if (p==1)
return n;
}
int produs(int a)
{
int t=1,di=1;
for(di=1;di<a;di++)
{
if(a%di==0 && prim(di))
t=t*di;
}
return t;
}
int main()
{
cout << "Hello world!" << endl;
int a,b,c;
do
{ cout<<"Introduceti a,b,c numere mai mari ca 1 "<<endl;
cout<<"a=";cin>>a;
cout<<"b=";cin>>b;
cout<<"c=";cin>>c;
}while(a<=1 || b<=1 || c<=1);
if(produs(a)==produs(b)&& produs(b)==produs(c) )
cout<<"DA";
else
cout<<"NU";
return 0;
}
3.
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
cout << "Hello world!" << endl;
ifstream f("BAC.TXT");
ifstream g("BAC.TXT");
char n;
int s=0,x;
while(g>>x)
s=s+x;
while(f>>n)
cout<<n;
cout<<s;
f.close();
return 0;
}