Bacalaureat 2008-Sesiunea august-septembrie

Rezolvare Bac 2008-Sesiunea de toamna

Subiectul I

1. 9

2.

a) 16 14 12 10 8 6

b)

0 si -10 -10 si 0

1 si -10 -10 si 1

0 si -11 -11 si 0

c)

citeste a,b (numere intregi)

- daca a<b atunci

| s<-a; a<-b; b<-s;

|_

x<-a

- cat timp x>b

| -daca x%2=0 atunci

| | scrie 'x'

| |_

| x<-x-1

|_

d)

#include <iostream>

using namespace std;

int main()

{

cout << "Hello world!" << endl;

int a,b,s,x;

cout<<"a=";cin>>a;

cout<<"b=";cin>>b;

if(a<b)

{

s=a;

a=b;

b=a;

}

for(x=a;x>b;x--)

if(x%2==0)

cout<<x<<" ";

return 0;

}

Subiectul II

1. grafuri orientate cu 4 varfuri: 4^6

2. d.p= 2*d.a + 2*d.b ;

3. 5 si 2

4.

s=0;

for(j=0;j<n/2;j++)

{ if(a[k][j]%2!=0)

s=s+a[k][j];

if(a[k][n-j-1]%2!=0)

s=s+a[k][j];

}

cout<<s;

5.

#include <iostream>

#include <string.h>

using namespace std;

int main()

{

cout << "Hello world!" << endl;

char a[21];

int i;

cout<<"a=";cin.get(a,21);

for(i=0;i<strlen(a);i++)

if(a[i]=='a' || a[i]=='e' || a[i]=='i' || a[i]=='o' || a[i]=='u') // if(strchr("aeiou",a[i])

a[i]=a[i]-32;

cout<<a;

return 0;

}

Subiectul III

1. permutari

2. 43211234

3.

int reduce(int a,int b)

{

int c,s=0,p=0;

do

{

c=a%10;

if(c!=0 && b%c!=0)

{

s=s+c;

p=1;

}

a=a/10;

}while(a!=0);

if(p==1)

return s;

else

return 0;

}

4.

#include <iostream>

#include <fstream>

using namespace std;

int valid(int n)

{

int sp=0,si=0;

while(n)

{

if (n%10%2)

si=si+n%10;

else

sp=sp+n%10;

n/=10;

}

if(sp==si)

return 1;

else

return 0;

}

int main()

{

ifstream f("bac.txt");

int k=0,min,x;

f>>x;

while(!valid(x) && !f.eof()) f>>x;

if (f.eof())

cout<<"Nu exista astfel de numere";

else

{

min=x;k=1;

while(f>>x)

{

if (min==x) k++;

if (valid(x)&& min>x) {min=x;k=1;}

}

}

cout << min<<" "<<k << endl;

return 0;

}