Sunteți pe pagina 1din 8

Rezolvare variante bacalaureat

Varianta Algoritm Program

10 citeşte n,k #include <iostream>


(numere naturale nenule)
nr←0 using namespace std;
p←1
┌cât timp n≠0 şi k≠0 execută int main()
│┌dacă n%2≠0 atunci {
││ nr←nr + n%10*p int n,k,nr=0,p=1;
││ p←p*10 cin>>n;
││altfel cin>>k;
││ k←k-1 while (n<=0)
│└■ cin>>n;
while (k<=0)
│ n←[n/10]
cin>>k;
└■
while(n!=0 && k!=0)
scrie nr
{
if(n%2!=0)
{
nr=nr+n%10*p;
p=p*10;
}
else k=k-
1;
n=n/10;
}
cout<<nr;
return 0;
}

11 citeşte n,k (numere naturale)


p←1 #include <iostream>
┌cât timp n>0 şi k>0 execută
│ c←n%10 using namespace std;
│ ┌dacă c%2=1 atunci
int main()
│ │ p←p*c
{ int n,k,c,p=1;
│ └■
cin>>n;
│ n←[n/10] cin>>k;
│ k←k-1 while(n<0)
└■ cin>>n;
scrie p while(k<0)
cin>>k;
while (n>0 && k>0)
{
c=n%10; if(c
%2==1) p=p*c;
n=n/10; k=k-
1;
}
cout<<p;
return 0;
}

12 citeşte x #include <iostream>


(număr
natural) using namespace std;
y←0
┌cât timp x≠0 execută int main()
│ ┌cât timp x>9 execută { int x,y=0;
│ │ x←[x/10] cin>>x;
│ └■ while (x<0)
│ y←y*10+x cin>>x;
│ citeşte x while (x!=0)
└■ {
scrie y while (x>9)
x=x/10;
y=y*10+x;
cin>>x;
}
cout<<y;
return 0;
}

14 citeşte x
#include <iostream>
(număr
natural)
using namespace std;
n←0
┌cât timp x≠0 execută
int main()
│ y←x; c←0
{ int x,y,c,n=0;
│ ┌cât timp y>0 execută cin>>x;
│ │ ┌dacă y%10>c atunci while (x<0)
│ │ │ c←y%10 cin>>x;
│ │ └■ while (x!=0)
│ │ y←[y/10] {
│ └■ y=x; c=0;
│ n←n*10+c while (y>0)
│ citeşte x {
└■ if(y%10>c)
scrie n c=y%10;
y=y/10;
}
n=n*10+c;
cin>>x;
}
cout<<n;
return 0;
}

17 citeşte x,y #include <iostream>


(numere naturale)
┌dacă x<y atunci using namespace std;
│ x←x-y
│ y←x+y int main()
│ x←y-x { int x,y;
└■ cin>>x>>y;
while (x<0)
┌cât timp x≥y execută
cin>>x;
│ scrie ’A’
while (y<0)
│ x←x-y
cin>>y;
│ scrie ’B’ if (x<y)
└■ {
x=x-y;
y=x+y;
x=y-x;
}
while (x>=y)
{
cout<<'A'; x=x-
y;
cout<<'B';
}

return 0;
}
18 citeşte x,y #include <iostream>
(numere naturale)
┌dacă x>y atunci using namespace std;
│ y←→x
└■ int main()
┌dacă x%2=0 atunci { int x,y,aux;
│ x←x+1 cin>>x>>y;
└■ while (x<0)
┌cât timp x≤y execută cin>>x;
│ x←x+2 while (y<0)
│ scrie ‘*’ cin>>y;
└■ if (x>y)
{
aux=x;
x=y;
y=aux;

}
if(x%2==0)
x=x+1; while
(x<=y)

{
x=x + 2;
cout<<'*';
}

return 0;
}
20 citeşte n (număr natural) #include <iostream>
a←n%10
m←a using namespace std;
┌cât timp n>9 execută
│ n←[n/10] int main()
│ b←n%10 { int n,m,a,b;
│┌dacă a>b atunci cin>>n;
││ m←m*10+b while (n<0)
││ a←b cin>>n;
│└■ a=n%10;
m=a;
└■
while (n>9)
scrie m
{
n=n/10; b=n
%10;
if(a>b)
{
m=m*10+b;
a=b;
}
}
cout<<m;
return 0;
}

23 citeşte a,b #include <iostream>


(numere întregi)
p←0 using namespace std;
┌cât timp a≠b execută
│ p←p+1 int main()
│ ┌dacă a<b atunci { int a,b,p=0;
│ │ a←a+2 cin>>a>>b;
│ │altfel while (a!=b)
│ │ b←b+3 {
│ └■ p=p + 1;
└■ if(a<b)
a=a + 2;
scrie p
else
b=b + 3;
}
cout<<p;
return 0;
}
24 citeşte a,b #include <iostream>
(numere naturale)
p←a; q←b using namespace std;
┌dacă p=0 sau q=0 atunci
│ p←p*q; q←p*q int main()
└■ { int a,b,p,q;
┌cât timp p≠q execută cin>>a>>b;
│ ┌dacă p<q atunci while (a<0)
│ │ p←p+a cin>>a;
│ │altfel while (b<0)
│ │ q←q+b cin>>b;
p=a;
│ └■
q=b;
└■
if (p==0 || q==0)
scrie p
{ p=p*q;
q=p*q;
}
while (p!=q)
if(p<q)
p=p+a;
else
q=q+b;
cout<<p;

return 0;
}

25 citeşte a,b,c #include <iostream>


(numere naturale nenule)
┌dacă a>b atunci using namespace std;
│ t←a; a←b; b←t
└■ int main()
┌cât timp a≤b execută { int a,b,c,t;
│ ┌dacă c|a atunci cin>>a>>b>>c;
│ │ scrie a while (a<=0)
│ └■ cin>>a;
while (b<=0)
│ a←a+1
cin>>b;
└■
while (c<=0)
cin>>c;
if (a>b)
{
t=a;
a=b;
b=t;
}
while (a<=b)
{
if(a%c==0)
cout<<a<<' ';
a=a + 1;
}
return
0; }

27 citeste a,b #include <iostream>


(numere naturale)
c←0 using namespace std;
d←0
p←1 int main()
┌cât timp a+b+c>0 execută {
│ c←a%10+b%10+c int a,b,c=0,d=0,p=1;
│ d←d+(c%10)*p cin>>a>>b;
│ p←p*10 while(a<0)
│ a←[a/10] cin>>a;
│ b←[b/10] while(b<0)
│ c←[c/10] cin>>b;
└■ while(a+b+c>0)
scrie d {
c=a%10 + b%10 + c;
d=d +(c%10)*p;
p=p*10; a=a/10;
b=b/10;
c=c/10;
}
cout<<d;

return 0;
}

28 citeste x #include <iostream>


(număr real pozitiv)
y←[x] using namespace std;
x←x-y
┌cât timp x≠[x] execută int main()
│ x←x*10 { float x,y;
└■ cin>>x;
while(x<0)
┌dacă x=y atunci
cin>>x;
│ scrie 1
y=int(x); x=x -
│altfel
y; while(x!
│ scrie 2 =int(x))
└■ x=x*10;
if(x==y)
cout<<1;
else
cout<<2;

return 0;
}
29 citeste n,m #include <iostream>
(numere naturale)
┌cât timp n≤m execută using namespace std;
│ n←n+1
│ m←m-1 int main()
└■ { int n,m;
┌cât timp m<n execută cin>>n>>m;
│ m←m+1 while (n<0)
│ n←n-1 cin>>n;
while (m<0)
└■
cin>>m;
scrie n
while (n<=m)
{
n=n + 1;
m=m - 1;
}
while(m<n)
{
m=m + 1;
n=n - 1;
}
cout<<n;

return 0;
}

30 citeste n (număr natural) #include <iostream>


m←0
P←1 using namespace std;
┌cât timp n>0 execută
│ c←n%10 int main()
│ ┌dacă c>0 atunci {
│ │c←c-1 int n,c,p=1,m=0;
│ └■ cin>>n; while
(n<0) cin>>n;
│ m←m+c*p
while (n>0)
│ p←p*10
{
│ n←[n/10]
c=n%10;
└■
if (c>0)
scrie m
c= c-1;
m= m + c*p;
p= p*10;
n=n/10;
}
cout<<m;
return 0;
}

S-ar putea să vă placă și