👤

Cerinţa

Se citesc două numere naturale n și m. Să se decidă dacă cele două numere au cel puțin o cifră comună.

Date de intrare

Programul citește de la tastatură numerele n și m.

Date de ieşire

Programul afișează pe ecran mesajul DA, dacă cele două numere au cel puțin o cifră comună, respectiv NU în caz contrar.

Restricţii şi precizări
•1 ≤ n, m ≤ 1.000.000.000




Exemplu

Date de intrare
173954 889205


Date de ieșire
DA

programul meu este acest:
#include
using namespace std;
int main()
{
int n,m,e,f,a=0;
cin>>n>>m;
while(n!=0&&m!=0)
{
e=n%10;
f=m%10;
if(e==f)
{
a++;
}
n=n/10;
m=m/10;
}
if(a!=0)
cout<<"DA";
else
cout<<"NU";
return 0;
stiu ca este gresit... dar parea logic..va rog ma puteti ajuta??


Răspuns :

Iti trimit sursa mea de 100p la problema Cifre Comune de pe pbinfo. Succes!
#include<iostream> using namespace std; int n, m, aux; bool ok; int main() { cin >> m >> n; while(m) { aux = n; while(aux) { if(aux % 10 == m % 10) ok=true; aux = aux / 10; } m = m / 10; } if(ok) cout<<"DA"; else cout<<"NU"; return 0; }