Sunteți pe pagina 1din 7

rezolvare c++;

1. Scrieţi ce se va afişa pentru x=8.


citeşte x (număr întreg)
┌dacă x<0 atunci
│ x -x
└■
p  1
┌pentru i1,x execută
│ p  (p*4)%10
└■
scrie p

#include <iostream>
using namespace std;
int main () {
int x,p;

cout<<"x=";
cin>>x;
if (x<0) x=-x;
p=1;

for (int i=1; i<=x;i++){


p=(p*4)%10;
}
cout<<"p="<<p;
}

Rezultat afisat :
p=6

2. Scrieţi ce valori se vor afişa dacă se citesc, în ordine, valorile


123, 25, 218.
┌pentru i 1,3 execută
│ citeşte x (număr natural)
│ s  0
│ ┌pentru j 1,i execută
│ │ s  s + x % 10
│ └■
│ scrie s
└■
#include <iostream>
using namespace std;
int main(){
int s;
for (int i=1;i<=3;i++){
cout<<"x=";
cin>>x;
s=0;
for (int j=1;j<i;j++){
s=s + x % 10;
}
cout<<"s="<<s<<endl;
}
}

Rezultat afisat :

x=123
s=0
x=25
s=5
x=218
s=16

3. Scrieţi numărul care se va afişa dacă se citesc pentru n valoarea


528791 şi pentru k valoarea 6.
x  0
citeşte n,k
(numere naturale nenule)
┌cât timp n≠0 execută
│ ┌dacă n%10<k atunci
│ │ x  x*10 + n%10
│ └■
│ n  n/10
└■
scrie x
#include <iostream>
using namespace std;
int main(){
int n,k,s;
x=0;

cout<<"n=";
cin>>n;
cout<<"k=";
cin>>k;
while (n!=0){
if (n %10 < k){
x= x*10 + n % 10;
}
n=n/10;
}
cout<<"x="<<x<<endl;
}
Rezultat afisat :
n=528791
k=6

x=125

4. Scrieţi valoarea care se afişează dacă se citesc numerele n=2 şi


m=11.
citeşte n,m
(numere naturale, n≤m)
s0
┌cât timp n<m execută
│ s  s+n
│ n  n+3
└■
┌dacă n=m atunci
│ scrie s+n
│altfel
│ scrie 0
└■

#include <iostream>
using namespace std;
int main(){
int n,m,s;
s=0;
cout<<"n=";
cin>>n;
cout<<"m=";
cin>>m;
while (n<m){
s=s+n;
n=n+3;
}
if (n==m)
cout<<"rezultat="<<s+n<<endl;
else
cout<<"rezultat=0"<<endl;

Rezultat afisat :
n=2
m=11

rezultat=26
5. Scrieţi ce se afişează dacă se citesc, în această ordine, valorile:
5, 8, 12, 15, 10, 25, 9, 8, 30, 10.
citeşte n
(număr natural nenul)
nr0
y0
┌pentru i1,n,1 execută
│┌repetă
││ citeşte x (număr real)
││ nrnr+1
│└până când x>=1 şi x<=10
│ yy+x
└■
scrie y/n
scrie nr

#include <iostream>
using namespace std;
int main(){
int n,nr,y,x;
cout<<"n=";
cin>>n;
nr=0;
y=0;
for (int i=1;i<=n;i++){
do{
cout<<"x=";
cin>>x;
nr=nr+1;
}
while(x>=1 && x<=10);
y=y+x;
}
cout<<"rezultat y/n="<<y/n<<endl;
cout<<"rezultat nr="<<nr<<endl;
}

Rezultat afisat pentru n=1


n=1

x=5
x=8
x=12

rezultat y/n=12
rezultat nr=3
6. Scrieţi valorile care se vor afişa în urma executării algoritmului dacă
se citesc numerele a=105, b=118 şi k=7.
citeşte a, b, k
(numere naturale)
t  a
p  0
┌cât timp t≤b execută
│┌dacă k=t%10 atunci
││ scrie t
││ p1
│└■
│ tt+1
└■
┌dacă p=0 atunci
│ scrie -1
└■
#include <iostream>
using namespace std;
int main(){
int a,b,k,t,p;
cout<<"a=";
cin>>a;
cout<<"b=";
cin>>b;
cout<<"k=";
cin>>k;
t=a;
p=0;
while(t<=b){
if (k==t%10){
cout<<"t="<<t<<endl;
p=1;
}
t=t+1;
}
if (p==0) cout<<"rezultat=-1"<<endl;
}

Rezultat afisat :

a=105
b=118
k=7

t=107
t=117
7. Scrieţi numărul care se va afişa dacă se citeşte valoarea
123456.
citeşte a
(număr natural)
p1
b0

┌cât timp a≠0 execută


│ ca%10
│ ┌dacă a%2=0 atunci
│ │ bb+c*p
│ │altfel
│ │ bb*10+c
│ └■
│ a a/10
│ pp*10
└■
scrie b

#include <iostream>
using namespace std;
int main(){
int a,p,b,c,t;
cout<<"a=";
cin>>a;
p=1;
b=0;

while(a!=0){
c=a%10;
if(a%2==0)
b=b+c*p;
else
b=b*10+c;
a=a/10;
p=p*10;
}
cout<<"b="<<b<<endl;

Rezultat afisat:

a=123456

b=246531
8. Scrieţi valorile care se vor afişa dacă se citesc, în ordine,
numerele 7 şi 5.
citeşte n, k
(numere naturale nenule)
┌pentru i1,n execută
│ ┌dacă i/k=0 atunci
│ │ scrie i
│ │ kk-1
│ │altfel
│ │ scrie i%k
│ └■
└■

#include <iostream>
using namespace std;
int main(){
int n,k;
cout<<"n=";
cin>>n;
cout<<"k=";
cin>>k;
for(int i=1;i<=n;i++){
if (i/k==0){
cout<<"i="<<i<<endl;
k=k-1;
}else{
cout<<i%k<<endl;
}
}
}

Rezultat afisat:
n=7
k=5

i=1
i=2
0
1
2
0
1

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