Informatică, întrebare adresată de BiancaAlexa999, 9 ani în urmă

Va rog ma puteti ajuta la aceastsa problema?
Se considera algoritmul:
citeste a,b(nre naturale)
c<- 0
p<- 0
cat timp a+b>0 executa
daca (a%10=b%10) si (a%10%2=1)
atunci c<- C*10+b%10
altfel p<-p*10+a%10

a <- [a/10]
b<- [b/10]

scrie c,p
a) scrieti ce se va afisa daca se citesc pentru a valoarea 625231 iar pentru b valoarea 425271
b)daca a=12345 scrieti o valoare de cinci cifre care poate fi citita pentru b astfel incat sa se afiseze pt p valoarea 42
c)scrieti programul C/C++ corespunzator algoritmului dat
d) efectuati un numar minim de modificari asupra algoritmului asfel incat prin executarea algoritmului obtinut sa se calculeze in variabila c numarul de cifre impare comune si aflate pe pozitiii identice,pe care le au cele 2 valori citite

Răspunsuri la întrebare

Răspuns de artur99
3
a)
15
3226
b)
b=13325
c)
#include <iostream>
using namespace std;
int main(){
    unsigned int a, b;
    int c=0, p=0;
    cout<<"a="; cin>>a;
    cout<<"b="; cin>>b;
    while(a+b>0){
        if((a%10==b%10) && (a%10%2==1))
            c=c*10+b%10;
         else
            p=p*10+a%10;
    
        a=(int)a/10;
        b=(int)b/10;
    }
    cout<<"c="<<c<<endl;
    cout<<"p="<<p;
    return 0;
}

d) in loc de c=c*10+b%10;  trebuie pus c++;

BiancaAlexa999: Multumesc mult !
artur99: cp :)
Alte întrebări interesante